How to reconcile TikTok Ads against your invoicing system
This is the check we run first on every account, written out so you can run it without us. It takes about thirty minutes and needs two numbers: what TikTok says it produced, and what your invoicing system actually shows. The gap between them is the only honest measure of whether your tracking works — and if it comes back small, you do not need us.
Free30 minutesNo obligation
Specific to TikTok × Invoicing System
TikTok vs paid invoices: usually a poor fit, and worth saying so
TikTok against paid invoices is usually a weak pairing because most invoiced work is B2B or high-ticket services with long cycles. If you do invoice TikTok-sourced clients, the join is a stored ttclid or a hashed lead email, compared by payment date. Expect TikTok to see only a small share of what was eventually paid.
The ttclid only helps if your inquiry form captures it and the value is carried through to the customer record your invoice is raised against. Most invoicing tools have no field for it, so in practice the hashed email from the original inquiry, sent through the Events API, is the only workable key. Check whether your CRM keeps that email after the contact is converted to a billing customer, because many tools overwrite it with the billing address.
TikTok's attribution windows are shorter than a typical quote-to-payment cycle; verify the current defaults in TikTok's documentation before comparing. Read the TikTok Ads Manager reporting for the same calendar month as your payment-date export, and expect it to credit the inquiry month rather than the payment month. Engaged-view attribution also credits people who watched a video and converted later, which for considered purchases like home renovation or event services is a loose connection at best.
A TikTok figure far below paid invoices is the normal state for this pair. The warning sign is the reverse: TikTok reporting invoice-level revenue when your invoicing tool shows nothing from those clients usually means an event is firing on a form or booking page and being labelled as a purchase.
TikTok × Invoicing System · what breaks
Why TikTok and your invoicing system disagree
- 01
Invoices sent counted as revenue earned
On thirty-day terms, issue date and payment date are different months. Reporting at issue books income you have not received.
- 02
Written-off invoices never reversed
Work that was never paid for stays in the reported figure indefinitely because nobody wired the reversal.
- 03
Payment terms longer than the reporting window
A month judged at month-end is a month that has not finished being paid.
- 04
Delivery cost absent
In services, revenue without the hours that produced it is half the picture. A large low-margin client can look like your best campaign result.
TikTok × Invoicing System · the fix
What you get from this — TikTok × Invoicing System
A number instead of a suspicion
The likely cause, narrowed
A basis for deciding
TikTok × Invoicing System · architecture
What each side is actually counting — TikTok × Invoicing System
- 1
What TikTok counts
A standard event name, an event timestamp, a shared event ID, hashed and normalized user identifiers, and ttclid where available. Confirm the current required fields in TikTok's documentation before building.
- 2
How TikTok attributes it
TikTok's click identifier, appended to the landing URL. Capture it on landing and persist it exactly as you would gclid or fbclid — it's the strongest matching signal available and the most commonly missing one, because TikTok is often added to a stack that was built around Google and Meta.
- 3
The window it uses
Verify the current attribution and import windows in TikTok's documentation. They differ from Google's and Meta's, and quoting a number here that goes stale would be worse than sending you to the source.
- 4
What your invoicing system counts
Invoices actually paid, by payment date rather than issue date, found in QuickBooks, Xero, FreshBooks, Zoho Books or whatever raises your invoices.
- 5
The filter that makes them comparable
Status is paid — not sent, not overdue, not written off.
TikTok × Invoicing System · events
Reading the gap — TikTok × Invoicing System
| What you see | What it usually means |
|---|---|
| 15%+ platform higher | Usually the wrong event entirely — invoices are being counted at issue rather than payment, or written-off invoices were never reversed. |
| 20%+ platform lower | Usually structural — the platform is missing work it produced — usually a sales cycle plus payment terms exceeding the attribution window. |
TikTok × Invoicing System · diagnose
Diagnostic order — TikTok × Invoicing System
- 01
Confirm both numbers cover the same period and channel
- 02
Invoices sent counted as revenue earned
On thirty-day terms, issue date and payment date are different months. Reporting at issue books income you have not received.
- 03
Written-off invoices never reversed
Work that was never paid for stays in the reported figure indefinitely because nobody wired the reversal.
- 04
Payment terms longer than the reporting window
A month judged at month-end is a month that has not finished being paid.
- 05
Read TikTok's own event diagnostics, plus a reconciliation against your records
TikTok is usually the third platform added to a stack, and it typically inherits whatever assumptions were made for Google and Meta. The most common result is that ttclid is never captured at all, because the capture code was written naming gclid and fbclid and nobody revisited it.
TikTok × Invoicing System · prove
How to know you did it right — TikTok × Invoicing System
Source of truth
your invoicing system — paid invoices for a fully closed month
TikTok × Invoicing System · free audit
What we check in the free audit
- Confirm both numbers cover the same period and channel
- Invoices sent counted as revenue earned
- Written-off invoices never reversed
- Payment terms longer than the reporting window
- Read TikTok's own event diagnostics, plus a reconciliation against your records
Checked against
your invoicing system — paid invoices for a fully closed month
Free30 minutesNo obligation
TikTok × Invoicing System · when not to buy
When the answer is that you do not need us — TikTok × Invoicing System
- If almost all of your paid invoices come from a channel with no click behind it, no tracking work will reach them — and knowing that is worth more than a build.
- If TikTok is a small share of your spend, the effort is better spent making Google and Meta correct first — the same infrastructure then extends to TikTok as one additional tag rather than a separate project.
TikTok × Invoicing System · what we deliver
The method, step by step — TikTok × Invoicing System
Pull what TikTok reports
Tiktok's own event diagnostics, plus a reconciliation against your records.
Pull what your invoicing system shows
Export invoices by payment date for a window longer than your payment terms, at the amount received after processing fees.
Filter both to the same thing
Status is paid — not sent, not overdue, not written off.
Compare per record, not on totals
FAQ
TikTok × Invoicing System questions, answered
Only if TikTok is a meaningful source of new clients you bill. If most invoiced work comes from repeat clients and referrals, the comparison will mostly measure noise.
Use a single purchase-type event sent server-side at payment with the invoice amount. Keep form submissions as a separate lead event so the two are never summed.
Because you should know the size of the problem before anyone quotes you for it. If the gap is small, you have saved yourself a purchase. If it is large, you now know what you are buying rather than taking our word for it.
No. Both numbers come from systems you already own and neither leaves them. There is no tool to sign up for and nothing to upload.
Then compare totals for a closed period and treat the result as directional rather than exact. Tiktok's own event diagnostics, plus a reconciliation against your records is still the right place to read the platform's side.
Under five percent is working. Five to fifteen usually means reversals are missing. Above twenty is normally the wrong event being counted, not a broken tag — which is why debugging tags first wastes so much time.
Then fix the filter before drawing any conclusion. Status is paid — not sent, not overdue, not written off. A mismatch in scope produces a gap that looks like a tracking fault and is not one.
Book the free thirty-minute call and bring both numbers. We will tell you which of the causes above it is, and whether it is something you can fix yourself — which it sometimes is.
More on TikTok × Invoicing System
- Google Ads × Invoicing SystemHow to reconcile Google Ads against your invoicing system
- Meta × Invoicing SystemHow to reconcile Meta Ads against your invoicing system
- TikTok × Appointment SystemHow to reconcile TikTok Ads against your practice or scheduling system
RELATED GUIDES
Systems of record beside invoicing system, and the funnels it settles
- TikTok × Job SystemHow to reconcile TikTok Ads against your job management system
- TikTok × Enrolment SystemHow to reconcile TikTok Ads against your application or enrolment system
- TikTok · RFP → awardHow to track RFP submission to contract award for TikTok Ads
- TikTok · Quote → closed jobHow to track quote request to closed job for TikTok Ads
- TikTok · Tree serviceTikTok Ads conversion tracking for tree service companies
- TikTok · Appliance repairTikTok Ads conversion tracking for appliance repair companies
- Xero → TikTokConnecting Xero to TikTok Events API
- Jobber → TikTokConnecting Jobber to TikTok Events API
Free · 30 min
Found a gap between TikTok and your invoicing system?
Free30 minutesNo obligation
