What your marketing report is not telling you
Your agency reports leads. Your accountant reports revenue. Nobody joins the two, and that gap is why nobody can tell you which advertising actually paid for itself.
Every month a report arrives. It says something like: 47 leads, 12 booked, cost per lead $58. The numbers go up and to the right and everyone is pleased.
Now ask the only question that matters. Of the money that actually landed in your bank account last quarter, how much of it came from that campaign?
Almost nobody can answer. Not because the agency is lying, and not because the software is bad. Because the answer does not exist in any system you own.
Where the trail goes cold
Follow one customer through.
Someone searches at nine at night, clicks an ad, and fills in your form. Your marketing platform records that beautifully. It knows the campaign, the keyword, the landing page, the time. It creates a lead. It texts them back in forty seconds. It books a call. It is genuinely good at this part.
Then somebody in your office opens your field software and creates a job.
That is the moment the trail goes cold. The job in your field software has an address, a description, a technician and a price. It does not have the campaign. It cannot have the campaign, because that information lives in a different database, and the two were joined by a human retyping a phone number.
Three weeks and two visits later, an invoice for $4,200 is paid. Your field software knows that. Your marketing platform does not, and never will. Its final word on this customer is “booked”.
So one system counts leads and the other counts money, and no system on earth counts both.
Why the workaround does not work
The standard fix is a spreadsheet. Export the leads, export the jobs, match them by phone number, add it up.
This falls apart in ordinary ways. The customer filled in the form on their mobile and gave the office the landline. The job was booked under a spouse’s name. The invoice covers three visits that started as two separate enquiries, one from an ad and one from a referral, and now you have to decide how to split $4,200 between them, by hand, six weeks after the fact.
And this only ever gets done for the months somebody has time to do it, which means the analysis is always thin exactly when the business is busiest, which is exactly when spending decisions are being made.
The mistake underneath it
The instinct is to reach for another integration. Push the job back into the marketing platform. Zap the invoice across.
That helps a little and it does not solve it, because the problem is not that two systems fail to talk. The problem is that neither system has a place to put the answer.
Attribution is not a report you generate at the end. It is a field you write at the beginning and then never lose. When the lead arrives, you record where it came from. When the lead becomes a deal, the deal carries it. When the deal becomes a job, the job carries it. When the job is invoiced, the invoice carries it. Now “revenue by lead source” is not an analysis at all. It is a sum, and it takes a database a fraction of a second.
The reason your incumbent cannot ship this next quarter is not lack of will. It is that the field would have to exist on records they do not own.
Three things to check on Monday
You do not need to change software to find out how bad it is. Check these.
One. Open your last ten paid invoices and ask where each customer came from. If answering requires anyone to remember something, you do not have attribution, you have anecdotes.
Two. Look at when your reporting recognises revenue. A surprising number of platforms report against the date a record was created rather than the date the deal closed. If a deal opened in March and closed in June, that revenue is sitting in March, and your best month looks like a bad one.
Three. Ask what happens to your repeat customers. The second job from a customer you acquired through an ad two years ago is still that ad’s return. Most setups count it as nothing, or worse, count it as a referral. The channel that looks expensive on first job cost is often the cheapest one you have once you count the second and third.
What good looks like
You should be able to open one screen and see, for a quarter: what each channel cost, what it produced in collected revenue, and the margin on that revenue after labour and materials. Not leads. Not booked calls. Money, recognised when it was earned.
That report does not require better analysis. It requires the lead source to survive the journey from web form to bank account without anybody retyping anything.
Oleera exists because that turned out to be a database decision rather than a reporting one.