Committed Next Steps or It Didn't Happen: Deterministic Extraction for RevOps
The reason committed next steps slip isn’t a capture problem; it’s a summarisation problem. The summary of the call says something like "buyer agreed to loop in procurement and follow up next week," and the rep creates a task from memory that says "follow up with Sarah." By the time the deal stalls three weeks later, nobody remembers whether the procurement conversation was supposed to happen before or after the follow-up, and the CRM has no evidence either way.
The fix is not another summary but deterministic extraction of committed next steps: the specific action, the owner, and the timing, extracted as typed fields from the transcript and pushed into CRM tasks or Slack alerts automatically. Commitments that don’t make it out of the transcript and into an operational system didn’t happen as far as the pipeline is concerned.

What "committed next step" means
Committed next steps are specific agreements on an action, an owner, and a timing. They aren’t topics that were discussed, plans that were floated, or intentions that were expressed. A buyer who says "I’ll have my team review the security questionnaire by Friday" has committed to a next step. A buyer who says "we should probably get legal involved at some point" hasn’t. The distinction matters because only the first statement has a clear action, a clear owner, and a deadline that can be tracked.
Summaries conflate these two categories. A summary that reads "discussed security review and next steps with legal" could reflect either statement, and there is no way to know from the summary alone whether there’s a commitment or just a topic. Deterministic extraction evaluates the transcript against a specific criterion and returns a typed value when the evidence meets that criterion, or null when it doesn’t.
The Next-Steps Brick: schema for commitments
A next-steps Brick defines the evidence standard for a commitment. The criterion specifies what a buyer or rep would explicitly say in the transcript to confirm that a specific action is committed, what the output type is for each component of the commitment, and what a reliable null looks like when no commitment was made.

For a buyer-side next step, the Brick might look like this: the buyer names a specific action they will take, with an owner and a timeframe expressed in their own words. The Brick returns three fields: the action as an extracted string, the owner as an extracted string, and the timing as an extracted string or a parsed date. If any of the three components is absent from the transcript, the Brick returns null for that component rather than inferring. A partial commitment, where the action is clear but no timing was stated, is returned as a partial extraction rather than treated as a full commitment.
For rep-side commitments, the same structure applies: the action the rep explicitly committed to, the timing they named, and the channel they described. These map to rep-owned CRM tasks rather than buyer-side follow-up records.
The Bricks are grouped into a Kit alongside the other extraction criteria for the call and evaluated against the transcript in a single API call via Semarize. The JSON output includes the commitment fields alongside the deal qualification fields, so the same call processing run populates both the qualification signals and the operational follow-up tasks.

Deterministic extraction: scoring before creating
Not every extracted commitment should automatically become a CRM task. The automation should apply a scoring check before task creation: the extracted fields must meet the evidence standard defined in the Brick criteria, all required components must be non-null, and the commitment must be unambiguous enough that a task created from it would be actionable by someone who wasn’t on the call. When the check passes, the task is created. When it doesn’t, the extraction is flagged for human review rather than resulting in a low-quality task.
The score that matters here is a binary, not a quality score on a scale of one to five: does the extracted commitment meet the evidence standard, or does it not? Brick criteria specific enough to produce consistent yes/no answers are the prerequisite for reliable automation, whereas criteria that require the model to interpret whether something "counts" as a commitment produce inconsistent task creation and train teams to distrust the automation.
Routing commitments into CRM tasks and Slack alerts
Once an extracted commitment passes the scoring check, the automation routes it to the appropriate destination. Buyer-side commitments become CRM tasks on the associated opportunity or deal: the task title is the extracted action, the due date is derived from the extracted timing, and the task is assigned to the deal owner or the relevant team member. Rep-side commitments follow the same pattern, assigned to the rep whose turn in the transcript contained the commitment.
Slack alerts are useful for high-priority commitments that require immediate awareness without waiting for a task review. Deals where the buyer committed to looping in a C-suite stakeholder before the week ends warrant an alert to the deal owner, not just a CRM task that might not be reviewed until the next pipeline meeting. The alert includes the extracted action, owner, and timing, with a link to the call recording so the context is retrievable.
In Make or n8n, the routing logic is a conditional: if the commitment scoring check passes, create the CRM task and optionally send the Slack alert; if it doesn’t, create a review record for the RevOps team. Error handling and retry logic should be configured so webhook delivery failures don’t silently drop commitments that need to be tracked.
Common questions
How do you decide what counts as a commitment versus a discussion?
The distinction is whether the statement includes a specific action, a specific owner, and a specific timeframe. Discussions produce topics and intentions; commitments produce an agreed action with an owner and a deadline. The Brick criterion should specify all three components as required for a commitment to be extracted, so that a statement which names an action but not a timeframe is returned as a partial extraction rather than a full commitment. The threshold can be adjusted after seeing the extraction results on real call samples: if too many partial commitments are being flagged as full ones, the criterion needs tightening.
What happens when the transcript is ambiguous or the owner is unclear?
When any required component of a commitment is absent or ambiguous, the Brick returns null or a partial extraction rather than guessing. Ambiguous ownership, where it isn’t clear whether the buyer or the rep is responsible for the next action, should result in the extraction being flagged for human review rather than automatically assigned. The flagged record includes the transcript passage so the reviewer has the context needed to assign it correctly. Over time, reviewing flagged records surfaces patterns in how reps and buyers discuss commitments, which can inform how the Brick criterion is refined.
How should RevOps measure success after implementing deterministic extraction?
The primary measure is task completion rate on extracted commitments: are buyer-side commitments being fulfilled by the deadline, and are rep-side commitments being completed before the next call? Secondary measures include the percentage of calls that produce at least one extracted commitment, which reflects whether the extraction criteria are calibrated to the typical call content, and the false positive rate on tasks created from extraction, which reflects whether the commitment standard is tight enough to produce actionable tasks. Coaching outcomes and deal progression rates in deals with high commitment extraction rates versus low ones provide the downstream validation that the system is improving what it was designed to improve.
Continue reading
Read more from Semarize
MEDDICC Scoring From Discovery Calls
Most MEDDICC data is stale before it reaches CRM. Reps update fields from memory after the call, introducing timing gaps and sampling bias that make qualification scores unreliable. Extracting MEDDICC signals directly from transcripts fixes the data freshness problem that better training never will.
CRM Enrichment From Sales Calls: The RevOps Data Ops Playbook
Most CRM enrichment stalls at 30% field coverage because the output is unstructured - reps updating from memory, summaries stored as notes. The fix is a structured extraction pipeline: transcript to consistent fields to CRM to automation triggers. This playbook covers the schema, the routing, and the implementation in Salesforce and HubSpot.
Stop Running Win/Loss Surveys. Start Capturing Deal Signals From Calls.
Win/loss surveys have a structural timing problem: they collect buyer memory after the outcome, not the decision inputs during the deal. Competitor mentions, pricing responses, and stakeholder dynamics exist in call recordings as they happen. Extracting them as structured signals makes win/loss real-time - and far more useful for deal coaching and pipeline risk.