Mike Litman
10 Lessons from 3,000 Calls
A TALK BY MIKE LITMAN

Calling 3,000 London Restaurants
with AI

Michelin sends inspectors. Harden's surveys diners. We send a phone call.

The Setup
3
Voice Agents
4,060
Venues
82
Neighbourhoods

First Order asks for the must-order dish. Queue Index asks about walk-in queues. Buggy Smart checks buggy access. Each one calls real London restaurants by phone.

01
Lesson 01

Restaurants answer the phone way more than you'd expect

48% answer rate on a Saturday lunchtime. Independent restaurants pick up. Chain restaurants with IVR systems don't. The places you actually want to hear from are the ones that answer.

48% Hit Rate 27 of 56 Answered Saturday Lunchtime
02
Lesson 02

The interesting data is the reaction, not the answer

The personality of the response is the product. These aren't data points. They're character sketches that tell you more about a restaurant than any review.

"Just turn up, boss" "Love you" Character Sketches

"If you come, we can see if there's space. But if there isn't space, then there is no space."

Jolene, Stoke Newington

03
Lesson 03

3pm is the magic hour

Lunch rush done. Kitchen cleaning up. Someone standing near the phone with nothing urgent to do. Timing the calls matters more than the script.

3pm Sweet Spot Timing > Script
04
Lesson 04

One question is the whole product

Every time I added a second question, responses got worse. People give their best take when you only ask for one thing. The constraint isn't a limitation. It's the design decision.

One Question Constraint = Design Guinndex Proved It
05
Lesson 05

The AI detection moment is content

When a restaurant clocks the AI, that's the most shareable moment. Don't hide it. Feature it. The detection is more entertaining than the dish recommendation.

"Is this automated?" Most Shareable Moment

"Sam, this feels like I'm speaking to an automated service. Is that correct?"

Brawn, Columbia Road

06
Lesson 06

Volume beats precision

15% success rate sounds terrible until you have 4,060 venues. That's 600 successful conversations. One OpenStreetMap query returned 2,993 restaurants with phone numbers in 30 seconds.

4,060 Venues OpenStreetMap 30 Seconds
07
Lesson 07

The server should do one thing

Every project started as a monolith: calls, transcripts, classification, deployment. Four failure modes in one process. Now the server just makes calls. Everything else happens elsewhere.

Single Responsibility 4 Failure Modes → 1
The Architecture
Railway
ElevenLabs
GitHub Actions
Claude
Netlify

Each piece can fail independently and get fixed without touching the others. No database. No filesystem. No monolith.

08
Lesson 08

Your API provider is your database

ElevenLabs stores every conversation permanently. Once I stopped trying to save transcripts on my own servers, the whole architecture simplified. The data already lives somewhere permanent.

No Database No Backups ElevenLabs = Store
09
Lesson 09

Shared resources break in ways you can't see

Two projects sharing one Twilio number seemed efficient. Then the calls overlapped silently. No errors. No alerts. Just bad data in both projects. Separating them cost an extra five quid a month.

£5/month Fix Silent Failures Shared Twilio Number
10
Lesson 10

Ship the pipeline, not the product

The calling works. The responses are interesting. What broke was everything in between. Filesystem wipes, silent API failures, missing notifications. The plumbing is the product.

Plumbing = Product Autonomous Agents No Human in Loop

Every guide sends a critic. We called the chef.

Mike Litman

Thank you.

mikelitman.me · hello@mikelitman.me

Continue from slide ?