Counting the jobs your agents book in Workiz

Where the "Bookings by the AI agents" card gets its numbers, what "verified" means on a conversation, and how to keep tests and misclicks out of the count.

Counting the jobs your agents book in Workiz

When an agent books a job through the Workiz integration, two different things record it: the job itself in Workiz, and the conversation analysis that reads the transcript afterwards. Before October 2026 the dashboard only counted the second — what the AI read as a booking — and on a real account that both counted the owner's own test bookings and missed real ones. This article explains the record-based count that replaced it and the surfaces it feeds.

How a booking is recorded

The moment a booking tool succeeds, the platform writes three things:

  1. The job in Workiz — the only source of truth for whether a job exists, when it is scheduled and what it was worth.
  2. A copy of the job in your workspace's Workiz mirror, marked as created by an agent, with the chat, text thread or call that made it.
  3. A booking reference on that conversation — the job id, the job type, the scheduled start and a link to the job in Workiz.

When the conversation is analyzed, the analysis does not decide whether a booking happened. If the conversation carries a booking reference, its outcome is written as booked and marked verified; the AI's reading of the transcript cannot override it. If the analysis reads a booking but the conversation carries no job, the outcome keeps what the AI wrote and is marked unverified, so the discrepancy is visible rather than silently counted.

flowchart LR
    A[Agent calls the booking tool] --> B[Job created in Workiz]
    B --> C[Mirror row: origin = agent + the conversation id]
    B --> D[Booking reference stamped on the conversation]
    D --> E[Analysis: outcome = booked, verified]
    C --> F[Dashboard card: Bookings by the AI agents]

A reschedule by an agent is recorded the same way, as rescheduled. A lead the agent converts into a job is recorded as a booking of that job.

Where you see it

The conversation itself

On a chat session, SMS thread or call detail page, the Outcome card shows a Booked in Workiz row for each job the conversation booked, with the job id linked to Workiz. Two other states can appear there:

Row What it means
Existing booking The booking tool returned a job that a different conversation had already created for this customer, time and job type. It is shown so you can see what the customer was told, but it is not this conversation's booking.
Reported booked · no Workiz job The analysis read this conversation as booked, but no job was written from it. Check the transcript and Workiz; this is the case the old count got wrong.

In the conversations list the Resolution column carries a Job booked chip on a verified booking and a Booked? unverified chip on an unverified one, so both can be filtered at a glance.

The dashboard card

Dashboard → Conversation Insights (sign-in required) shows a card titled From conversation to booked job under the heading From your integrations, for any workspace with Workiz connected. It reads the same web-chat conversations as every other card on the tab (closed, billable, started in the date range), and it reads the Workiz record for the step that matters.

The funnel — one bar per step, with the count and the share of the previous step:

Step Counted from
Conversations Every analyzed web-chat conversation in the range.
Got a price The Quotes & purchases pack: a price was stated, or the quote ended quoted, purchased, declined or with a follow-up agreed. Shown only when that pack is on.
Asked to book The Booking & appointments pack: the customer asked to make, change or cancel a booking. Shown only when that pack is on.
Got a job The Workiz record: the conversation's own booking tool created the job. Not the transcript. A note under the bar says how many were later cancelled.
Done The live Workiz status of those jobs.

Steps whose pack is off are left out rather than shown empty, and a line under the card says which pack would add them. Click any bar to list those conversations.

Where it leaks — one sentence, computed from the counts: the step that converts worst, how many were lost there, and the top reasons (the Booking pack's blocker, the Quote pack's outcome, or the conversation's drop-off reason). Each reason is a link to those conversations. For example: 11 of 19 who asked to book left without a job — 8 undecided after the quote, 1 missing info, 1 no slot that fit. That is where to look at the agent's instructions first.

Needs a look — shown only when it applies: the number of conversations the analysis called booked with no job behind them (the agent said "booked" and the tool did not). Click it to review them.

Booked value · completed — the Workiz totals of the funnel's jobs, once a currency is set (see below). Revenue needs the analytics:read permission.

The funnel counts every channel the Conversation Insights tab counts — web chat, SMS threads, calls and email — so a job booked from a text thread or a call is in the bars, and the tab's channel filter narrows the funnel like every other card. One muted line appears when it applies: office bookings that followed an AI conversation within 14 days. The table icon on the card shows the step table and the agents' jobs by channel and live status.

Hide the card under Settings (the gear icon) → Analytics → Analytics & Insights → Cards & alerts → Integration cards if you do not want it on the dashboard.

The Google Ads Lifecycle page

Jobs booked by agents now count on Data → Google Ads Lifecycle like any other job, with an Origin column (AI agent or Workiz) in the records table. They were left out of that page before October 2026.

Setting the currency

Workiz sends job totals without a currency. On Settings (the gear icon) → Integrations → Workiz, in the booking defaults group, enter the three-letter code (for example CAD) under Currency of Workiz amounts and select Save booking defaults. Until one is set here or on the Google Ads integration, amounts are withheld rather than shown with a $ that may be wrong.

Test bookings count like any other booking: a cancelled test is a cancelled job. Clean them up in Workiz, where the record lives, and the card follows.

Asking over MCP

The workiz_find_jobs tool takes an origin filter: agent returns only the jobs your agents booked, workiz only the jobs created in Workiz itself. Each job carries origin, provenance (the chat, text thread or call that booked it) and bookedAt. That is the same data the card reads, so a figure on the card can be checked against the list.

Troubleshooting

A job the agent booked is not in the funnel. The funnel counts the conversation that booked it, placed at the conversation's start date, on whichever channel it came in on. If it was booked before October 2026, a platform administrator can run Workiz: link agent bookings to their conversations under the migrations console to stamp the older jobs; until then they still appear in workiz_find_jobs with origin: agent.

The conversation says "Reported booked · no Workiz job". The analysis read a booking the tool never made — usually the agent said "you're booked" before the tool confirmed, or the booking failed after. Open the transcript; the tool result lines say what happened.

Amounts show "no currency set". Enter the currency on the Workiz settings page, or under Per-source currencies on the Google Ads settings page.

Related