AI text responder

Customer texts, answered with the real schedule

Most auto-replies are a polite way of saying "we'll get back to you." That's fine at 2pm. At 7:45pm, when someone wants to move tomorrow's cleaning, it means the office starts the next morning with a pile of texts and a few annoyed customers.

This one reads the customer's actual appointment in ServiceTitan, checks what's really open, and answers the question they asked.

Built for
Carpet cleaning franchise (40+ locations)
Status
Running in testing on the live inbox

Example thread

Carpet cleaning office

Hi, can I move my cleaning to next week? Something came up

7:42 PM

No problem! I see you're on for Thursday 8-10am. Next week I have Tuesday 1-3pm or Wednesday 8-10am open. Want one of those?

7:42 PM

Wednesday morning is perfect

7:44 PM

You got it. I've passed that to the office to lock in Wednesday 8-10am, and you'll get a confirmation text once it's set.

7:44 PM

15 sec

between inbox checks

19 sec

to pick up a test text in live testing

3 min

median human reply time it's measured against

128k

past texts studied for tone and answers

Look things up first, then write

The order matters. A model that writes first and checks later will happily tell a customer they're booked for Thursday when they aren't. So every reply starts with plain lookups in ServiceTitan, and the AI writes from those facts and nothing else.

What happens to one incoming text

Every 15 sec

Check the ServiceTitan inbox

Texts from customers and from Google LSA leads both land here.

Look up the facts first

Who is this?

Customer record

Booked?

Appointment and status

What's open?

Real availability

Write

Claude drafts the reply

Using only those facts, in the tone of the office's best texters.

Guardrails

Checks, then sends

Length cap, daily send cap, never replies to a bare "C" confirmation.
The reply goes out through ServiceTitan's own chat, so the office sees the whole thread in the place they already work.

It learned from ten months of the office's own texts

We pulled every text the company sent and received in 2026 and scrubbed out names, numbers and addresses. What was left was a pretty clear picture of how good replies sound at this company: short, warm, and quick to offer an actual time.

The 833 objection and pricing examples got the most attention. "That seems expensive" is where texting threads die, and the office's best replies to it are now baked in.

What it learned from before it sent anything

128,069

texts from 2026, with personal info scrubbed

5,735

customer message and staff reply pairs

833

objection and pricing examples

Each step is a subset of the one above it. Bars aren't to scale.

Small rules that matter more than the AI

Customers reply "C" to confirm appointments. An AI that answers every "C" with a cheerful paragraph gets old by Wednesday, so it doesn't. Replies are capped at 500 characters. There's a daily send limit and an allowlist while it's in testing.

None of that is impressive. It's just the difference between a tool the office keeps turned on and one they quietly switch off after a week.

What it runs on

  • ServiceTitan chat inbox
  • Claude (Anthropic)
  • Node.js
  • Linux server (pm2)

Questions we get about this one

What stops it from making something up?+

It only gets facts we look up first: the customer record, their appointment, and the real openings. If the answer isn't in those facts, it says the office will follow up instead of guessing. Prices work the same way. It knows the published specials, and anything beyond that gets "the tech will give you an exact written quote on site."

Does it text people who didn't text first?+

No. It only replies inside threads the customer started. It also has a daily send limit, so a bug can't turn into a thousand texts.

Can my office jump into a conversation?+

Yes. The replies go through ServiceTitan's own chat, so the thread looks the same to your team as it always has. Anyone can step in.

Is this the same AI as the voice agent?+

Same brain, different channel. The texting side and Madison on the phones share the same ServiceTitan lookups and the same rules, so a customer gets the same answer whether they call or text.

Want one of these for your shop?

Most of what's on this page started as a 30-minute call about something that was bugging the owner. Tell us what's bugging you.