Built for a long cycle
Saved periods mean a contract signed in Q3 still credits the Q1 campaign that produced it.
For Corporate Training Providers
Attribute signed training contracts to the channels that produced the first enquiry — months earlier, on a different device, by somebody who has since changed job title.
No card required Nothing to install Cancel anytime
$322,000 70% of $460,000 paid
The blind spot
Your marketing report ends at the demo request. The contract is signed a quarter later after three calls and a procurement review, and by then nothing connects it to the campaign that started it.
What you get
Saved periods mean a contract signed in Q3 still credits the Q1 campaign that produced it.
Not enquiries, not demos — signed revenue.
One enterprise cohort outweighs fifty individual course sales, and the report weights it that way.
A worked example
Not impressions, not leads, not cost per click. Closed revenue, by the channel that produced it, for a period you choose — with the portion we could not trace shown rather than quietly shared out across your paid channels.
| Channel | Sales | Revenue | Share | % |
|---|---|---|---|---|
| LinkedIn Ads | 41 | $147,200 | 32% | |
| Google Ads | 33 | $110,400 | 24% | |
| Email marketing | 19 | $64,400 | 14% | |
| Direct / Unknown | 38 | $138,000 | 30% |
An individual buying a course clicks and pays, and the pixel records it perfectly. An employer buying a programme for forty people fills in a form, takes a call, asks for a proposal, runs it past L&D and procurement, and signs a quarter later.
The second kind is where the revenue is, and it is invisible to every measurement your ad platforms offer. So budget gets defended with demo requests and MQLs — numbers that correlate with revenue only loosely, and that a finance director has learned to discount.
The right unit of attribution is the original enquiry, because that is where the channel did its work. What CloseRev does is match your CRM's closed-won export against the lead-source export from the same period range, so the contract credits the campaign that produced the conversation.
Because periods are saved rather than overwritten, the picture compounds: by the third quarter you can see which channel produces enquiries that actually become contracts, and which produces a busy pipeline that never closes.
Why it matters
"We generated 400 leads" invites an argument. "This channel closed $186,400 last quarter, here is the reconciliation" ends one. The teams that can show closed revenue by channel are the teams that get the next increase approved, because they are asking with evidence rather than with conviction.
Killing spend is politically harder than adding it, because someone always owns the channel being cut. A number that reconciles to the sales export takes the argument out of the room — you are not overruling a colleague's judgement, you are reading the same ledger they are.
Platform-reported conversions do not reconcile to revenue, and eventually someone in finance notices. Reporting built from your own closed-sales export starts from the number finance already trusts, which is why it holds up when it is checked.
Because this reconciles exports rather than tracking visitors, it works on months that have already closed. You are not instrumenting now to learn something in ninety days — you can answer for last quarter today, which is usually when the question is being asked.
Honest answers
That is the case this is built for. Load a wide enough date range on the lead file and the match reaches back across the cycle; the saved periods keep the comparison honest.
Then that revenue reports as Direct / Unknown and you will see its true share. Knowing that paid channels produce a fifth of contracts rather than a half is a useful thing to learn before renewing a contract with an agency.
Include a product-type column and the report separates them. They almost always have different channel mixes, and averaging them hides both.
Pricing
The number here is the number on the invoice — no per-call, per-minute or per-form fees. Most training companies selling programmes to employers, where the deal closes on a call land on Growth — thirteen months of history to compare a month to the same month last year, and a PDF you can put in front of whoever holds the budget.
A business scaling ad spend
$199/mo
billed monthly
Questions
Anything else? Talk to us — a person answers, usually the same day.
Closed-won deals from your CRM: a contact phone number or email, the contract value, and the close date.
The buyer, or whoever made the original enquiry. That is the person the campaign reached.
Yes. Use the booked value on the signature date, or split it into rows by year if that is how you recognise it.
Include them with a type column. Renewal revenue attributed to a campaign is usually wrong; separating it stops it flattering the report.
No. Ad platform lead exports work as the second file.
Yes — include the column and the report breaks down by it.
Encrypted in transit and at rest, isolated to your workspace, deletable in one click, and we act as a processor with a DPA.
Closed-deal rows analysed in a calendar month. Lead rows do not count.
Nearby
Match paid enrolments, upsells and renewals to the campaigns that produced the learner, past the free trial that hid them.
See how it worksMatch matriculated students and the tuition they pay across a degree to the campaigns and events that produced the enquiry.
See how it worksMatch signed engagements and their fees to the content, events and campaigns that produced the client.
See how it worksStart today
Upload two exports and see your real revenue by channel in minutes. Three days free, no card.