Kata · a practice

How I review my sales calls with AI.

Before, I reviewed my calls from memory. That meant I forgot what worked and repeated the same mistakes. So I built a small system. Fathom records the call. Claude grades the transcript against a fixed rubric, pulls every objection into a list, and writes the next actions. I run it after every call.

Built and used daily by Dhrumil Shah

A note on data. The sample call below is illustrative. Company name, person names, budget figures, and outcomes are placeholders. The rubric, the prompt structure, and the workflow are exactly what I run on my own calls.

01 · The pipeline

From a 30-minute call to a one-page review in under five minutes.

The whole loop is four steps. Nothing fancy. The point is that it runs the same way every time, so I am comparing every call against the same rubric.

Step 1Fathom recordsAuto-joins, transcribes
Step 2TranscriptPulled via the Fathom API
Step 3Claude rubricScores, objections, actions
Step 4My weekly reviewPatterns, scripts, follow-ups
02 · The rubric

Ten dimensions, each scored one to five.

I picked these because they are the things I can actually change between calls. Vanity metrics like talk-to-listen ratio are interesting but not directly actionable. These are.

01 Opener

Did the first 30 seconds earn me the next two minutes.

02 Discovery

Did I find the gap between where they are and where they want to be.

03 Listening

Did I let them finish. Did I follow their thread, not mine.

04 Positioning

Did I reframe what they asked for into the actual outcome they need.

05 Objections

Did I disarm without going defensive. Did I name the real concern.

06 Trust

Did I share a real constraint or failure that proved I am not just selling.

07 Closing

Did I get a small commitment with a specific date.

08 Risk

Did I flag the thing that could kill this deal, so they cannot say I never warned them.

09 DM access

Do I know who signs, and is that person in this conversation.

10 Volume

If this is one role today, is there a path to more.

03 · The Claude prompt, an excerpt

I keep the prompt boring on purpose.

Same structure every call. Same output schema. That is what makes the scores comparable week over week. The rubric Claude runs is below, abbreviated.

# SYSTEM
You are reviewing a sales call transcript. The seller is Dhrumil.
The call is a discovery call for a talent or hiring partnership.

Score the seller on the 10 dimensions defined below.
Each dimension: integer 1 to 5. No half-points.
For each, return one short evidence quote from the transcript.

Extract every objection raised by the buyer. For each:
- quote: paraphrased, under 20 words
- category: price | process | trust | scope | timing | other
- handled_how: one sentence on what the seller did
- grade: strong | mid | weak

Extract every commitment or next action. For each:
- action: short imperative
- owner: seller | buyer
- deadline: ISO date or 'unspecified'

Classify the outcome:
hot_pipeline | warm_nurture | competitive | long_game | dead | redirect

Return strict JSON. No prose outside the JSON.
04 · Recent reviews

The last reviews, with names anonymized.

First names below are placeholders. Call length, outcome class, and score are the actual rubric output. The shape is what matters. I am happy to walk through any of these live in a conversation where context allows.

ContactWhenLengthOutcomeScore
Jordan M.May 202628 minWarm7.8
Nina S.May 202631 minHot8.6
Marcus T.May 202642 minWarm7.6
Alex H.May 202636 minLong game7.4
Hannah R.May 202625 minWarm7.5
Ben K.Apr 202638 minHot9.0
Grace L.Apr 202633 minWarm7.7
Sam C.Apr 202629 minCompetitive7.0
Riya P.Apr 202645 minHot9.2
Mia D.Mar 202622 minDead5.4
Sasha W.Mar 202634 minWarm7.9
Chloe B.Mar 202631 minWarm8.0
Aaron V.Feb 202639 minHot8.7
Kira F.Feb 202652 minWarm8.4
Sierra O.Jan 202641 minHot8.5

15 of a larger set reviewed since late 2025 · average around 7.8 · numbers are illustrative

05 · One review, in detail

One call, one review.

All names, companies, and figures below are placeholders. This is the exact shape of every review I run.

CompanyA Series A AI startup
StageFirst discovery
Length32 min
Outcome classWarm nurture

Scorecard

OpenerOpened on their fundraise. Earned 90 seconds before they checked the time.4
DiscoveryFound the role and the budget early. Missed asking about the team structure under the new hire.4
ListeningInterrupted once at minute 14 to correct a pricing assumption. Should have let it land.3
PositioningReframed "we need a contractor" into "you need an owner of the AI stack". Buyer used my language back to me at minute 22.5
ObjectionsAnchored the price objection to time-to-hire, not cost. Process concern handled with a same-day profile share.4
TrustShared a specific past mismatch and where it broke. Buyer relaxed audibly.5
ClosingSet a profile-share for Tuesday. Asked for a follow-up call but did not lock a date. Loose at the end.3
RiskDid not flag the timezone gap on the senior role. That is the thing that kills this one if it kills.2
DM accessConfirmed the founder is the signer and is on this call. Best possible.5
VolumeAsked about hiring plans for the next two quarters. Got two more roles named. Did not lock those into the proposal.4
Overall7.8/10
Warm nurture

Risk-flagging is the gap. Closing is tighter than last week but still loose. Both go on the script-rewrite list.

06 · Objections extracted

Three objections raised. Two handled, one missed.

The list is what makes the system useful. Every category that grades weak three times in a row is something I rewrite my script for.

"Your fee looks higher than the other vendor we got a quote from."

CategoryPrice
How I handledAnchored to time-to-hire, not cost. A two-week delay costs more than the fee difference.
GradeStrong

"We want to see candidates before we commit."

CategoryProcess
How I handledOffered two vetted profiles in 48 hours, free of commitment. Buyer accepted on the call.
GradeStrong

"Our last partner over-promised and under-delivered."

CategoryTrust
How I handledAcknowledged, then moved on too fast. Did not ask what specifically broke. Did not share my quality controls.
GradeWeak
07 · Next actions extracted

Every action gets an owner and a date.

  • Send two vetted profiles for the AI engineer role.

    Owner: me · Due: Tuesday next week
  • Lock a second call with the founder for the week after profile review.

    Owner: me · Due: end of this week
  • Ask the buyer what specifically broke with their previous partner. Send a one-pager covering exactly those three things.

    Owner: me · Due: before the next call
  • Flag the timezone risk on the senior role in writing, before they discover it themselves.

    Owner: me · Due: today
08 · What the output changes

The review is only useful if it changes the next call.

So the output runs into three loops. Daily, weekly, monthly. Each one has a job.

Daily

The action list runs.

Every next action is a task with an owner and a date. They go into my plan for the day. Nothing falls through.

Weekly

Patterns surface.

If the same dimension scores under three across the week, I rewrite the script for that part of the call. Last month it was closing. This month it is risk-flagging.

Monthly

Objections become a library.

Every weak objection grade is a gap in my handling. I add the better response to a shared doc the team uses. The library grows by ten to fifteen entries a month.

09 · Why I bother

Selling is reps. AI lets me get more out of every rep.

Without the rubric, a bad call feels the same as a good call by the end of the day. I lose what made the good one good. With the rubric, the difference is on paper. I get a flat coaching note after every call, and the improvement compounds.

This is also the instinct I want to bring into a new role. Record everything. Treat objections as data. Use AI for the part humans do badly, which is remembering exactly what happened. Spend my own time on the part humans do well, which is showing up on the next call sharper than I was on the last one.

← Back to what I built