Skip to main content
TikTok · RestorationTikTok × Restoration

TikTok Ads conversion tracking for water damage and restoration companies

Restoration is the most urgent category in home services and the one with the widest job value spread: a small water extraction and a full fire rebuild are both one phone call. 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 water damage and restoration companies, and what TikTok specifically needs to accept it.

Free30 minutesNo obligation

Specific to TikTok × Restoration

TikTok for restoration: wrong moment, minimal setup only

TikTok is a poor fit for water damage restoration, because emergency demand comes through search and phone. If you test it for mold awareness or brand recall, track an inspection request as SubmitForm or Contact through the Events API with ttclid and hashed phone, and report invoiced jobs from your job system yourself.

The restoration buyer is a homeowner in a crisis, and TikTok reaches people when nothing is wrong. Before-and-after mold and flood cleanup videos get views, but views come from curiosity, not from people with a wet basement this week. Some companies use TikTok to recruit technicians, which is fine, but recruitment clicks should never share a pixel event with customer inspection requests.

If you do test it for customers, choose the slow service. Mold inspection and remediation can be scheduled, so the setup is a SubmitForm or Contact event on the inspection request, ttclid written onto the job record, and hashed phone on the server event, since most of these leads finish on the phone. Leave emergency extraction pages out of the test, as no reasonable amount of TikTok data will teach it to find the next burst pipe.

Watch for one thing in particular: TikTok's in-app browser and tap-to-call. A viewer who taps a phone number inside TikTok's browser leaves no web conversion at all, so if calls are the goal, use a dedicated tracked number on the TikTok landing page and count those calls in your own report.

TikTok · Restoration · what breaks

Why TikTok under-reports for water damage and restoration companies

  1. 01

    Every call counted regardless of outcome

    Emergency inbound includes a great many calls that never become jobs.

  2. 02

    Job values spanning two orders of magnitude

    Averaging a small extraction with a fire rebuild destroys the signal.

  3. 03

    Insurance approval sitting between the call and the revenue

    A dispatched job is not an approved job.

  4. 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 · Restoration · the fix

What working looks like — TikTok · Restoration

  • Completed jobs as the conversion

    From the job management system, at the invoiced value.

  • Loss type carried on the conversion

    Water, fire, mould — different values and different competition.

  • Calls filtered before they count

    By duration and by whether a crew was actually dispatched.

TikTok · Restoration · architecture

How TikTok and water damage and restoration companies actually connect

  1. 1

    The conversion in water damage and restoration companies

    The money event is a completed and invoiced job. The insurance approval step means the value is not known at dispatch, which is the timing question to settle before building.

  2. 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. 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. 4

    Where it gets sent from

    The job management system — jobs completed and invoiced by date, by loss type, for the same window.

  5. 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 · Restoration · events

The conversion map for water damage and restoration companies

Five steps with an insurer in the middle.

Tracked phone callThe dominant channel. Filter hard.
Crew dispatchedA real commitment of resources, and a cost whether or not it bills.
Insurance approvedWhere the job becomes revenue.
Job completed and invoicedThe money event, at the invoiced value.
Loss typeCarried on the conversion.

TikTok · Restoration · diagnose

Diagnostic order — TikTok · Restoration

  1. 01

    Count records carrying ttclid

  2. 02

    Number-swap script running too late

    Emergency callers dial fast, so the highest-intent traffic is the least attributed.

  3. 03

    Unfiltered call conversions

    Inbound includes insurers, adjusters, competitors and wrong numbers.

  4. 04

    Service area boundaries

    Out-of-area emergency calls are pure cost.

  5. 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 · Restoration · prove

How it gets proven — TikTok · Restoration

Source of truth

The job management system — jobs completed and invoiced by date, by loss type, for the same window

  • Completed jobs reconciled per job against what each platform reports.
  • The share of calls carrying a session measured, since phone is the funnel.
  • Number-swap timing verified on a real page load.
  • Invoiced values confirmed on the conversion rather than an average.
  • TikTok's own event diagnostics, plus a reconciliation against your records read directly, not inferred from an upload succeeding.

TikTok · Restoration · free audit

What we check in the free audit

  • Count records carrying ttclid
  • Number-swap script running too late
  • Unfiltered call conversions
  • Service area boundaries
  • Read TikTok's own event diagnostics, plus a reconciliation against your records

Checked against

The job management system — jobs completed and invoiced by date, by loss type, for the same window

Get my free conversion tracking audit

Free30 minutesNo obligation

TikTok · Restoration · when not to buy

When you don't need this — TikTok · Restoration

  • If TikTok already reports conversions that reconcile against the job management system 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 · Restoration · what we deliver

What gets built — TikTok · Restoration

  • Click identifier captured with the number swap running immediately

    Callers dial within seconds of landing; a deferred script loses them.

  • Carried into the job management system

    Onto the job record.

  • Completed job fires the conversion

    At the invoiced value, after insurance approval.

  • Cancelled and unapproved jobs excluded

    A truck rolled that did not bill is a cost.

  • 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 job management system — jobs completed and invoiced by date, by loss type, for the same window. Miss it and we keep working at no cost.

Get my free conversion tracking audit

From $400 · See packages

FAQ

TikTok · Restoration questions, answered

Not for emergency jobs. A small test for mold inspections or brand awareness is reasonable, measured on inspection requests and tracked calls from a dedicated number.

Free · 30 min

Get TikTok reporting what water damage and restoration companies actually earn

Free30 minutesNo obligation