TikTok Ads conversion tracking for window and door companies
Windows and doors is an in-home sales business wearing a lead generation costume. What TikTok Ads adds on top of that is a mechanical requirement: ttclid has to reach the record that holds the money, because TikTok can only credit a conversion it can tie back to a click it recognizes. This page covers both halves — what a conversion is in window and door companies, and what TikTok specifically needs to accept it.
Free30 minutesNo obligation
Specific to TikTok × Windows and doors
TikTok for window and door companies: a narrow, test-sized setup
Window and door companies on TikTok should send a SubmitForm event for website quote requests, matched on ttclid plus hashed email and phone, and pass the sat appointment from the CRM through the Events API where offline events are supported. Treat TikTok as a test channel, since the replacement-window buyer is mostly older than its core audience.
The person signing a five-figure window contract is usually a homeowner in their forties or older, and TikTok's audience skews younger than that. The fit improves for specific products: front entry doors, sliding patio doors and black-frame windows are visual purchases that work as before-and-after video. If your offer is whole-home vinyl replacement at the lowest monthly payment, expect TikTok leads to sit at a lower rate than search leads, and judge the channel on sits, not forms.
There is no TikTok purchase here. CompletePayment has no meaning for a contract signed at a kitchen table, so do not repurpose it to carry contract value. Use SubmitForm for the request and a separate event for the sat appointment, sent from the CRM with the ttclid stored at first touch. Confirm in TikTok's documentation whether offline events are accepted for your account and how old they can be when sent.
The common failure is TikTok's own lead generation forms. They keep the homeowner inside the app, so no ttclid ever exists, and the lead lands in a spreadsheet or a CRM sync that nobody connects to the appointment system. If you use them, check that the sync carries TikTok's lead identifier onto the CRM record from day one, or every sat appointment from TikTok becomes unattributable the moment the setter books it.
TikTok · Windows and doors · what breaks
Why TikTok under-reports for window and door companies
- 01
Appointments set counted as conversions
Sit rates vary enormously by campaign. The campaign with the cheapest appointments frequently has the worst sit rate.
- 02
Cancellations inside the rescission window never reversed
So reported revenue includes contracts that were legally cancelled.
- 03
Financing declines treated as sales
A signed contract that fails financing is not revenue, and in this category it happens often.
- 04
Ttclid never reaches the record
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.
TikTok · Windows and doors · the fix
What working looks like — TikTok · Windows and doors
Signed contracts as the conversion
Net of the cancellation window, with financing approval confirmed.
Contract value on the conversion
The actual amount, so bidding optimizes toward whole-home jobs rather than single-window replacements.
Sit rate visible by campaign
The number that most often reorders a media plan in this category.
TikTok · Windows and doors · architecture
How TikTok and window and door companies actually connect
- 1
The conversion in window and door companies
The money event is a contract that has survived both the cancellation window and financing. Firing at signature is early enough to be wrong often, and the error is always in the flattering direction.
- 2
TikTok Ads needs a click to match
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.
- 3
The identifier: ttclid
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.
- 4
Where it gets sent from
The CRM — contracts cleared past rescission with financing approved, by date, for the same window.
- 5
Deduplication and window
Send the same event ID from the browser pixel and the server event. The mechanics mirror Meta's closely enough that a team who has done one can do the other, but verify TikTok's current requirements rather than assuming parity — the deduplication window in particular isn't a figure we'll guess at. 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.
TikTok · Windows and doors · events
The conversion map for window and door companies
Five steps, and the two that matter most are the last two.
| Event | What it means here |
|---|---|
| Lead | Volume only. Includes renters and non-serviceable addresses. |
| Appointment set | What everyone counts. A leading indicator with a wildly variable sit rate. |
| Appointment sat | The first signal that correlates with revenue. A much better optimization target than the set. |
| Contract signed | Subject to rescission and financing. Not yet the money event. |
| Contract cleared | Past the cancellation window, financing approved. The money event. |
TikTok · Windows and doors · diagnose
Diagnostic order — TikTok · Windows and doors
- 01
Count records carrying ttclid
- 02
Identifier lost at appointment setting
Whether in-house or an outsourced call center, this hop drops the identifier more often than not.
- 03
Rescission window ignored
Firing at signature overstates revenue by your cancellation rate, permanently and in one direction.
- 04
Non-serviceable and renter leads
Pure cost, and counting them teaches the algorithm to find more.
- 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 · Windows and doors · prove
How it gets proven — TikTok · Windows and doors
Source of truth
The CRM — contracts cleared past rescission with financing approved, by date, for the same window
- Cleared contracts reconciled per contract against what each platform reports.
- Sit rate measured by campaign and stated in the report.
- A real cancellation confirmed to reverse at each destination.
- Identifier coverage measured specifically across the appointment-setting hop.
- TikTok's own event diagnostics, plus a reconciliation against your records read directly, not inferred from an upload succeeding.
TikTok · Windows and doors · free audit
What we check in the free audit
- Count records carrying ttclid
- Identifier lost at appointment setting
- Rescission window ignored
- Non-serviceable and renter leads
- Read TikTok's own event diagnostics, plus a reconciliation against your records
Checked against
The CRM — contracts cleared past rescission with financing approved, by date, for the same window
Free30 minutesNo obligation
TikTok · Windows and doors · when not to buy
When you don't need this — TikTok · Windows and doors
- If TikTok already reports conversions that reconcile against the crm within a few percent, this is working and there is nothing to buy.
- Measure identifier coverage yourself first — pull your last hundred records and count how many carry ttclid.
- 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 · Windows and doors · what we deliver
What gets built — TikTok · Windows and doors
Click identifier captured and persisted
Across the set-to-sit-to-sign gap, which runs weeks.
Carried into the CRM and onto the contract
Through appointment setting, which is the hop where it is usually lost.
Signed contract fires the conversion
After the rescission window closes and financing has cleared.
Cancellations and financing failures reversed
Both are common and both are ignored by nearly every setup we see.
Dispatch via the Events API
Structurally similar to the other server-side conversion APIs: event name, timestamp, event ID, hashed user identifiers, event properties. TikTok's exact field names change more often than the other major platforms', so build against their current documentation rather than a blog post — including this one.
Written guarantee
95%+ tracking accuracy
Measured against The CRM — contracts cleared past rescission with financing approved, by date, for the same window. Miss it and we keep working at no cost.
From $400 · See packages
FAQ
TikTok · Windows and doors questions, answered
Sometimes, for visual products like entry and patio doors, and rarely for price-led whole-home replacement. Run it as a capped test judged on sat appointments, not form fills.
SubmitForm at first, because sat volume on a test budget is usually too low to optimize on. Move to the sat event only if it reaches steady weekly volume, and confirm TikTok's current requirements in Ads Manager.
Contracts if your volume supports it. If not, use appointments *sat* rather than appointments set — the sit rate is where campaigns differ most, and optimizing toward sets rewards whoever books the most people who will not be home.
Because a contract cancelled inside it is not revenue. Firing at signature overstates performance by your cancellation rate, always in the flattering direction, and nobody notices because the number looks good.
Appointment setting. The identifier reaches the lead form and dies when the setter creates the appointment in a different system. That single hop explains most broken attribution in this category and it takes one test lead to confirm.
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.
Structurally similar to the other server-side conversion APIs: event name, timestamp, event ID, hashed user identifiers, event properties. TikTok's exact field names change more often than the other major platforms', so build against their current documentation rather than a blog post — including this one.
By reading TikTok's own event diagnostics, plus a reconciliation against your records and reconciling against The CRM — contracts cleared past rescission with financing approved, by date, for the same window. An upload that succeeds is not an upload that matched.
More on TikTok · Windows and doors
- Windows and doorsConversion tracking for window and door, measured in signed contracts
- Google Ads · Windows and doorsGoogle Ads conversion tracking for window and door companies
- Meta · Windows and doorsMeta Ads conversion tracking for window and door companies
RELATED GUIDES
More for window and door companies: other angles on the same outcome
- Windows and doorsConversion tracking for window and door, measured in signed contracts
- TikTok · Tree serviceTikTok Ads conversion tracking for tree service companies
- TikTok · PaintingTikTok Ads conversion tracking for painting contractors
- TikTok · Quote → closed jobHow to track quote request to closed job for TikTok Ads
- TikTok × Job SystemHow to reconcile TikTok Ads against your job management system
- TikTok · LandscapingTikTok Ads conversion tracking for landscaping and lawn care companies
- TikTok · Commercial HVACTikTok Ads conversion tracking for commercial HVAC contractors
- TikTok · LocksmithTikTok Ads conversion tracking for locksmiths
Free · 30 min
Get TikTok reporting what window and door companies actually earn
Free30 minutesNo obligation
