Preferências de cookies

Escolha o que podemos usar. Cookies estritamente necessários mantêm você conectado e não podem ser desativados; todo o resto é decisão sua e não muda nada no funcionamento do site. Você pode mudar de ideia a qualquer momento pelo rodapé.

Insights 12 min read

Your call tracking knows which ad rang the phone. It does not know which call paid.

Call tracking answers one question well: which campaign produced the ring. It has no view of what happened after the call ended, which is where the money is decided. This is what the gap costs, and how to close it without replacing the call tracker you already have.

A call handler wearing a headset at a desk, taking a call.
Photo by MART PRODUCTION on Pexels
Contents
  1. What call tracking genuinely knows
  2. The substitutes teams reach for, and what each one costs
  3. Why the join does not already exist
  4. Phone numbers are the join, and the formatting is the work
  5. What to do with the calls that do not match
  6. The window has to match the sales cycle, not the cookie
  7. What the joined report lets you say
  8. Keep the call tracker
  9. A reasonable first month

A marketing manager at a multi-location services business opens her call tracking dashboard on the first of the month. It tells her a clear story: 612 tracked calls, 43% of them from Google Ads, average duration four minutes eleven, a quarter marked as qualified by the scoring rules. It is a good report and she believes it, because the underlying measurement is sound — dynamic number insertion is one of the few things in marketing measurement that genuinely observes what it claims to observe.

Then the finance director asks what those calls were worth, and the report has nothing to say. Not an approximate answer, not a modelled one: nothing. The call tracker's record of a caller ends at the moment the caller hangs up.

Call tracking measures the ring. The money is decided after the call ends, in a system that has never heard of the call.

What call tracking genuinely knows

Call tracking swaps the phone number shown to a visitor depending on where they came from, then records which number was dialled. That gives a trustworthy link between a call and a marketing source — and that is the whole of what it establishes.

This is worth stating plainly because the technique is often lumped in with cookie-based tracking and treated as similarly approximate. It is not. When a visitor from a Google Ads click sees number A and dials number A, the association between that call and that click is observed rather than inferred. There is no modelling, no probabilistic matching, no attribution window to argue about. It is one of the cleanest measurements a marketing team has.

The limitation is not accuracy. It is scope. The record is complete and it stops at the wrong place.

What each system holds about the same customer
Call trackingCRM or sales file
Which campaign produced the contactYes, observedRarely, and usually typed from memory
That a conversation happenedYes, with duration and recordingSometimes, as a note
What was eventually soldNoYes
What it was worthNoYes
When it closedNoYes
Whether it was refunded or cancelledNoUsually

Read down the two columns and the shape of the problem is obvious. Neither system is deficient. Each is complete for its own job, and the two jobs are halves of one question nobody is positioned to answer.

The substitutes teams reach for, and what each one costs

Where revenue is unavailable, teams substitute something that is available: call volume, call duration, a qualification score, or an average value applied to every call. Each substitute has a specific failure mode, and all four fail in the same direction.

The direction matters. Every one of these proxies rewards channels that produce many cheap conversations and penalises channels that produce few expensive ones. A business optimising against them will, over a few quarters, systematically shift budget toward its lowest-value work while every dashboard it owns reports improvement.

  • Call volume. Treats a wrong number and a ninety-thousand-dollar system replacement as one unit each. The cheapest channel always wins, because cheap channels produce volume.
  • Call duration. A reasonable proxy for engagement and a poor one for value. Long calls include complaints, support, confused callers and people who were never going to buy. Some of the most valuable calls are short because the customer already knew what they wanted.
  • Qualification scoring. Measures how a call sounded to a rule or a model. Useful for routing. As a revenue proxy it is a prediction being used in place of an outcome that is sitting in another system, unread.
  • A fixed average value per call. Mathematically guarantees that channel ranking by revenue equals channel ranking by volume, because the value is a constant. It produces a revenue-shaped number containing no information about revenue.

The last one deserves particular suspicion because it produces the most convincing artefact. A report showing revenue by channel, in currency, to the dollar, where the dollars were manufactured by multiplying call counts by an assumption. It will be quoted in a board meeting. Nobody in the room will be able to tell it apart from a real one.

A proxy for revenue that correlates with volume is not a measurement. It is a restatement of call counts in currency.

Why the join does not already exist

The call tracker and the sales system hold different identifiers, are owned by different teams, and record their events weeks apart. Nothing about the gap is technical; it is organisational, and that is why it persists in businesses with capable people and good tools.

Ask who owns the call tracking account and you will usually be pointed at marketing, or at the agency. Ask who owns the CRM and it is sales or operations. Ask who owns the finance system and it is finance. Each answer is reasonable. The consequence is that the one report that would answer the question spans three owners, and a report with three owners has none.

The second reason is timing. The call happens in week one and the sale closes in week six, by which point the call is no longer interesting to anybody. Nobody is looking at both records at the same moment, because the moments are six weeks apart.

The third is that the join looks harder than it is. People assume it needs an integration, a data warehouse or an engineering project, and so it is scheduled behind things that need less. In practice both systems already export the two columns that matter.

Phone numbers are the join, and the formatting is the work

A caller's phone number appears in both systems and identifies the same person in both. The difficulty is that the two systems almost never write it the same way, and a naive comparison therefore matches almost nothing.

This is the single most common reason a first attempt at joining call data to sales data fails and gets abandoned. The data is present and correct on both sides; the string comparison is what fails.

The same phone number, as five systems write it
SourceWritten as
Call tracking export+15125550142
CRM, typed by a salesperson(512) 555-0142
CRM, typed by a different salesperson512.555.0142
A web form512-555-0142
An imported list1 512 555 0142

Normalising every number to one international format before comparison turns five strings into one and the match rate jumps accordingly. The step is not optional and it is not difficult, but it has to come first: clean, then compare. Comparing first and cleaning the failures afterwards produces a match rate that looks like a data problem and is actually a formatting one.

Two details save a surprising amount of trouble. The country is a property of the file rather than a global setting — a business operating in two countries has two conventions in one export. And a number that arrives with its own country code is already unambiguous, so it should be left alone rather than re-parsed against whatever country the rest of the file is assumed to be.

What to do with the calls that do not match

Some calls will never match a sale, and some sales will never match a call. That residue is information, and the standard mistake is to make it disappear rather than report it.

A caller who did not buy will not appear in the sales file, which is correct. A customer who walked in, or was referred, or called a personal mobile rather than the tracked number, will appear in the sales file with no call attached. Neither is an error. Both are facts about how the business actually acquires customers.

The temptation is to spread the unmatched revenue across the channels proportionally, so the report adds to a hundred per cent and looks finished. This is the most damaging thing you can do to a measurement, because it takes the one honest signal in the report — how much you cannot explain — and buries it inside the numbers you are about to make decisions with. A report claiming to trace every dollar has not traced every dollar; it has hidden the ones it could not.

The share you cannot trace is the most credible number in the report. Publishing it is what makes the rest of it believable.

There is a practical use for it too. A sudden rise in unmatched sales is an early signal that something has broken — a tracking number removed during a site redesign, a location whose calls now route elsewhere, a form that stopped recording the phone field. If that share is smoothed away, the breakage is invisible until someone notices the channel numbers drifting months later.

Attribution windows are usually inherited from advertising platforms, where they are bounded by cookie lifetimes. A join made on the person rather than on a browser session has no such limit and should be set by how long your customers actually take to decide.

For an emergency trade the gap between call and sale is hours. For a roof replacement, a healthcare procedure, a legal matter or a piece of capital equipment it is routinely months, and the deposit may come later still. A thirty-day window applied to a ninety-day sales cycle does not measure a third of the revenue; it measures whichever third closed fastest, which is a biased sample rather than a smaller one.

Because a phone number does not expire, the constraint is your own data retention rather than the technology. Set the window from the business, review it once a year, and write it down — an attribution window nobody has agreed is an attribution window somebody will dispute the first time the numbers are inconvenient.

What the joined report lets you say

Once calls are matched to closed sales, the questions a marketing team can answer change from questions about activity to questions about money — and those are the questions the budget is actually decided on.

  1. Which campaigns produced revenue last month, rather than which produced calls.
  2. What a closed sale costs on each channel, which is a different ranking from what a call costs and frequently reverses it.
  3. Which locations convert the calls they receive, separating a marketing problem from an operational one.
  4. Whether a channel's calls are getting more or less valuable over time, which volume reporting cannot show at all.
  5. How much revenue has no traceable source, stated rather than distributed.

The third one is worth dwelling on, because it is the one that changes arguments inside a business rather than just budgets. When one branch converts half the calls another branch converts, from the same campaigns at the same cost, the problem is not the advertising. Without revenue attached to the calls that conclusion is unavailable, and the conversation defaults to the campaigns, because the campaigns are the only thing anybody has numbers for.

Keep the call tracker

Dynamic number insertion is the only dependable way to attribute an inbound call to a marketing source. A revenue join does not replace it; it consumes its output and adds the half it was never able to see.

This is not a diplomatic position, it is a practical one. Remove the call tracker and you lose the observed link between a click and a ring, and no amount of joining downstream recovers it — you would be left matching sales to leads with no idea which advertisement produced the lead. The two layers answer different questions and the second is worthless without the first.

What changes is what you ask of it. The call tracker's job is to tell you which source produced each call, and it does that well. Asking it to tell you what the call was worth is asking it for something it has never had access to.

CloseRev is the join, not a call tracker. It reads the export your call tracking already produces and the closed-sales export from your CRM or finance system, normalises the phone numbers on both sides, matches them, and reports revenue by channel and campaign. Sales it cannot trace stay visible as Direct / Unknown rather than being distributed across your channels.

A reasonable first month

The first version of this report should be a month that has already closed, joined once, by hand if necessary. Running it on a finished month removes every timing question and tells you immediately whether the data supports the report at all.

  1. Export last month's tracked calls with their source and campaign, and last month's closed sales with amounts and dates.
  2. Normalise the phone column on both sides to one international format before comparing anything.
  3. Match on phone, then on email where both files have one, and count exact matches only.
  4. Report three totals: revenue matched to a channel, revenue matched but uncertain, and revenue with no match at all.
  5. Show the third number to whoever will use the report, before they ask. It sets what the other two are worth.

If the match rate is low, resist the conclusion that the join does not work. Check the formatting first, then whether the sales file even carries a phone number, then whether the calls are landing on untracked numbers. In that order, those three checks explain most disappointing first attempts.

What you are looking for at the end is not a perfect number. It is a defensible one: a figure you can put in front of a finance director alongside the sales file it came from, with the part you could not explain stated in the same breath. That is a different kind of report from call volume by channel, and it is the one that survives the question that always follows.

Questions people actually ask

What does call tracking actually measure?
It measures that a call happened and which source produced it, by showing different phone numbers to different visitors and recording which number was dialled. It records duration, the caller's number, sometimes a recording and sometimes a keyword. Every one of those is a fact about the call, not about the sale that may or may not follow it.
Why does call tracking not show revenue?
Because the sale is recorded in a different system, usually days or weeks later, by a different person. The call tracker's record ends when the call ends. Nothing in it knows that the caller signed a contract on the fourteenth, and nothing in the system that recorded the contract knows the call existed.
Can I just score calls in the call tracker instead?
Call scoring tells you a call sounded like a good lead, which is a prediction. Closed revenue is an outcome. Scoring is useful for routing and coaching and a poor substitute for money, because the correlation between how a call sounds and what it eventually pays is weaker than most teams assume and is never measured.
Do I need to replace my call tracking to measure revenue?
No. Dynamic number insertion is the only reliable way to attribute an inbound call to a source, so the call tracker is doing work nothing else can do. What is missing is a join between its export and your closed sales, which is a reporting step rather than a replacement.
What matches a call to a sale?
The caller's phone number, normalised to one international format on both sides before comparison. Email works where the sales record has one. Name matching is unreliable enough that it should not count automatically, and most of the apparent difficulty in joining these two files is phone formatting rather than missing data.
How far back should the match window go?
As far as your sales cycle runs, which for home services, healthcare, legal and most considered purchases means months rather than days. Matching on the person rather than on a browser session is what makes a long window possible; a cookie will have expired long before the contract is signed.

See it on your own numbers.

Two exports and a few minutes. Three days free, no card, nothing to install.