Buy for the Udit Résumé chat. Build for Amex.
Udit ships grounded assistants for a living — web chat and voice agents across a portfolio of live products — so buy-vs-build isn't a thought experiment here; it's a call he's made repeatedly, in both directions. His own résumé line runs a packaged AI screening agent grounded in a GoHighLevel knowledge base — bought, because a screening line is a commodity feature. The banking widget on this page is custom-built — because in regulated banking, the trust mechanics are the product. Same builder, same discipline, different right answers.
How the Amex call was made — evidence, not taste. Before building, the packaged option was probed live for this brief:
- its knowledge base has no content-export API — the export endpoints simply do not exist
- its widget shows citations to operators but never to customers
- its retrieval is a fixed pipeline that can't be tuned
Those probe findings decided it, not a preference: a structured four-lens evaluation — interviewer impact, technical risk, compliance optics, strategy narrative — weighed both paths against that evidence and landed on build.
Buy when chat is a commodity feature — as it is for the Udit Résumé assistant. Build when trust mechanics are the product — as they are in regulated banking. Knowing which is which is the job.
- ✓Live in an afternoon on the same platform that already runs the phone line, SMS, and CRM — zero integration work
- ✓Voice-native: call routing, ring-first-then-answer, email handoff come with the platform, not built from scratch
- ✓Low-stakes domain: a miss means a recruiter emails instead — prompt-level guardrails are genuinely enough
- ✓Nobody needs citations read aloud on a phone call — the packaged retrieval quality is fit for purpose
- ✕The trade accepted: knowledge is locked in (no export API), retrieval untunable, behavior prompt-deep only
- ✓Citations rendered to the user, linking to the live source page — visible, verifiable trust is the whole thesis
- ✓Confidence gate + topic firewall enforced in code before any model call — what a bank's compliance team can audit
- ✓Database is one inspectable JSON file we own — swappable, versionable, dateable (snapshot: July 18, 2026)
- ✓Retrieval is tunable — the 20-question QA below went 17/20 → 20/20 after retrieval tuning, with a held-out eval set as the next gate; impossible on the packaged stack
- ✕The trade accepted: more to build and test — the QA table below is the honest price of control