Long read · investor + prospect deep-dive

Voice agents are commoditized. The moat is connective tissue.

A breakdown of why every "AI for small business" competitor has been building the wrong thing — and what we've actually built underneath the 15 vertical apps that nobody else has. Written for prospects evaluating us against Rosie, Smith.ai, Podium, and Goodcall, and for investors who want to know what the durable advantage actually is.

Published: 2026-05-08Author: Steve Stott, founderReading time: ~9 min
Orbit — the connective-tissue memory across your tools

The market just got loud. Then it got the same.

If you tracked the small-business SaaS world over the last 18 months, you watched everyone ship the same feature in roughly the same week: an AI receptionist that picks up missed calls and texts the customer back. Jobber shipped it. ServiceTitan shipped it. HouseCallPro shipped it. Podium had it. GoHighLevel had it. Rosie raised on it. Smith.ai pivoted toward it. Goodcall built around it.

That feature is now table stakes. And the demos look identical — because they are identical. They all answer in <2s, all transcribe, all summarize the call, all send a text. The voice models came from one of three vendors (Retell, Vapi, ElevenLabs). The LLM came from one of three vendors (Anthropic, OpenAI, Google). The differentiation was a logo and a price.

So if voice is commoditized — what's the durable thing?

The moat isn't the receptionist. It's everything the receptionist hands off to.

What every competitor's customer record looks like.

Pick any "AI for small business" tool. Sign up. Then look at how the customer record is structured. You'll find one of three patterns:

  1. Voice-only. Rosie, Smith.ai, Goodcall — they have a customer record, but it's literally just call transcripts + transcribed name + phone. There's no SMS history (different system), no review history (not their job), no chat history (different vendor). The "customer record" is a call log.
  2. Vertical CRM with bolted-on AI. Jobber, ServiceTitan, HouseCallPro — a real customer record (jobs, invoices, addresses), with an AI receptionist bolted on. The receptionist's transcript flows into the customer record as a note. But the receptionist doesn't read the customer record before deciding what to say. It's one-way data flow: AI → CRM. Not CRM → AI → CRM.
  3. Communication suite. Podium, Birdeye — multi-channel customer record (calls, texts, reviews, chat all in one inbox). But the AI on top is a per-channel assistant. The voice AI doesn't know about the review the customer left last month. The review-reply AI doesn't know about the SMS thread from yesterday.

Each pattern is a local optimum. None solves the actual problem, which is that a small-business customer interacts across channels and time, and the AI handling those interactions needs to remember what happened in the other channels. When a customer calls Davis Roofing on Tuesday after texting them on Sunday and getting a 4-star review from them last month, the receptionist that picks up should know all three things — and should reference them in the conversation.

What we built underneath.

Orbit is the connective tissue. One Postgres-backed event log, one Claude Haiku orchestrator, six modules (Voice, Recall, Stars, Scout, Confirm, Chat), and one shared customer record that every module reads from and writes to.

It's not a "platform" in the marketing sense. It's a specific architecture choice we made on day one of building the verticals: every module that writes anything about a customer writes to the same row in customer_profiles, and every module that reads anything reads from that same row. There's no "voice CRM" that's different from the "review CRM." There's just the customer.

Voicephone RecallSMS Confirmcalendar Starsreviews Scoutdiscovery Chatweb Orbit Orchestrator claude-haiku-4-5 + orbit_events log customer_profiles (Postgres) one row · all channels · all jobs · all reviews · all interactions read + write

The orchestrator is what differentiates a system from a feature. When Voice emits MissedCallDetected, the orchestrator reads the customer profile, decides "this is a returning customer who got a 5-star review from us last month — different tone for this Recall SMS," generates the action with the right payload, dispatches Recall to send the personalized SMS, and writes the decision back to the customer record. One brain, six modules, one record.

Why this is hard to copy.

"Just build the same thing" sounds easy when you're at the whiteboard. Here's what it actually requires:

1. You have to give up the per-vertical CRM mindset.

Jobber's customer record is built around a job (start date, materials, address, invoice). ServiceTitan's is built around a dispatch ticket. ClickUp's is built around a project. To build Orbit, you need a customer record that's built around the customer — vertical-specific data goes into JSONB columns and per-vertical satellite tables, but the spine of the record is identity (phone, email, history). That's a ground-floor architecture decision, not a refactor. The vertical CRMs would have to rebuild from scratch.

2. You have to ship 15 verticals to validate the architecture.

The same Orbit infrastructure powers all 15 vertical products — same orchestrator, same event log, same dispatcher, same chat widget, same brand kit. Each tenant gets their own brain (their own phone numbers, their own customer records, fully isolated), but the marginal cost of adding vertical 16 is ~2 weeks of engineer-time because the foundation is reused. Most competitors built one vertical and don't have the abstraction to ship a second cheaply. We do.

3. You have to make the orchestrator decisive enough to actually act.

"AI agent that orchestrates other AI agents" is the buzzword of 2026. In practice most implementations stop at "summarizer" — they read the input, write a description, and dump it on a human's desk. Orbit's orchestrator outputs actions with payloads and dispatches them. That's a different prompt-engineering problem (every output has to be valid JSON, every action has to map to a real handler, every failure has to recover gracefully). It took us three iterations to get the failure mode right (early version: orchestrator hallucinated a Stripe.SendInvoice action that didn't exist, dispatcher crashed). The version live in production now refuses to output any action that doesn't match a registered module/action_type pair.

4. You have to be public about it.

The live brain dashboard is the page no competitor has built — and won't, because it requires admitting that you have an architecture and exposing it. We made the bet that transparency about the architecture is part of the moat, because once a prospect sees Orbit's event log streaming in real time, they understand what we've built in a way no slide deck conveys.

The compounding effect.

The shared brain has a network effect at two levels:

Module level. Each new module added to the brain makes every other module more useful. Stars getting added meant Voice could now reference "this customer left us a 5-star review last month" in the next call. Adding Confirm meant Recall replies could auto-book without human intervention. Each module is a multiplier on every other module's value.

Platform level. Each new vertical added to BizBot reuses the same brain architecture — chat widget, auth system, orchestrator, customer-record schema, brand kit, Orbit modules. The marginal cost of vertical 15 is now ~2 weeks of engineer-time, not 2 quarters. That cost curve is what lets us serve a small TAM per vertical (e.g. ~50K U.S. dental practices) profitably while a horizontal player like Podium has to be relevant to everyone. Each tenant's brain is fully isolated — no cross-tenant data sharing.

What this means for prospects evaluating us.

QuestionThe honest answer
Will Rosie's voice agent be as good as yours?Yes, probably. Voice agents are commodity. Don't pick us for Voice.
Will Smith.ai's call summary be as good as yours?Yes — they have humans in the loop, ours is fully automated. Different tradeoffs.
Will the customer experience be different?Yes. Their voice agent doesn't read the customer's review history before answering. Ours does. That's the only difference, and it's the one that matters.
Does my customer data flow between BizBot tenants?No. Every tenant's brain is fully isolated by business_id. A customer who calls Plumber A and later calls Dentist B (also a BizBot client) shows up as two separate records — never linked. Cross-tenant data sharing is a privacy non-starter and we don't do it.

What this means for investors.

The case isn't "we're better at AI" — we're not. We use the same Anthropic model everyone else uses. The case is:

  1. Architecture lock-in. Once a business is using Orbit's shared brain across modules, switching means losing that customer record continuity. Lock-in compounds with usage.
  2. Marginal vertical cost approaching zero. Each new vertical reuses the chat widget, the auth system, the email shim, the orchestrator, the customer record schema, the brand kit. The 15th vertical takes ~2 weeks of engineer-time, not 2 quarters.
  3. Distribution advantage. 15 vertical apps × the shared brain × public live dashboard creates a self-reinforcing trust signal. Competitors with one vertical can't reproduce.
  4. Acquirer attractiveness. A vertical CRM (Jobber, ServiceTitan) doesn't want to rebuild their customer record schema. Buying Orbit's brain layer is faster than rebuilding it. If the platform plays its cards right, this becomes the durable end-state — even in an acquisition scenario.

Steve Stott, founder. hello@bizbottech.com · 2026-05-08

Want to see the brain work?

It's not a slide deck. It's a public live feed.

Every Orbit event across all 15 BizBot verticals streams to a public sanitized dashboard. Click below — anything happening right now is real.