Skip to main content
X Ads × Job SystemRun this yourself

How to reconcile X Ads against your job management 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 X Ads says it produced, and what your job management 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 X Ads × Job System

X Ads vs completed jobs: rarely a trades channel, so check first

Join on twclid captured on your booking form and stored on the job, or a hashed email, after confirming the attribution window set on each X conversion. For most trades businesses X produces too few local jobs to reconcile meaningfully, so expect small numbers and judge them job by job rather than as a ratio.

X is seldom where homeowners look for a contractor, and local targeting narrows an already small audience further. If you do advertise there, the join between an X click and a job record is twclid captured on your request form and written to a custom field on the job, or a hashed email that matches the customer record. Without either, a completed job can only be credited to X by asking the customer, which is a survey, not a reconciliation.

X sets attribution windows per conversion event, including whether views count, so confirm the setting on the conversion you report before trusting the total. Pull conversions from X's ads manager for a closed month and compare them with completed, invoiced jobs exported by completion date rather than request date, because a request in one month often completes in the next. The X Conversions API has changed more than once, so confirm server events still arrive before reading a drop as lost demand.

Small numbers make percentages meaningless: three reported conversions against one completed job says very little. Treat it as broken when X reports conversions steadily and none can be traced to any job record over a quarter. The usual cause of disagreement is a tag firing on a page visit or a call-button click, which counts curiosity rather than booked work.

X Ads × Job System · what breaks

Why X Ads and your job management system disagree

  1. 01

    Quotes counted as won work

    A quote is a van, a person and an hour already spent. In trades the quote-to-job rate varies enormously by source, so counting quotes rewards the channels producing price-shoppers.

  2. 02

    Estimate value used instead of invoiced value

    Change orders, extras and variations move the final figure. The estimate is a forecast; the invoice is revenue.

  3. 03

    Repeat customers credited to the original click

    A maintenance customer booking twice a year for five years produces ten jobs against one click.

  4. 04

    Phone-first demand invisible

    Trades are overwhelmingly phone-driven. Without dynamic number insertion, most of the funnel is unmeasured.

X Ads × Job System · the fix

What you get from this — X Ads × Job System

  • A number instead of a suspicion

  • The likely cause, narrowed

  • A basis for deciding

X Ads × Job System · architecture

What each side is actually counting — X Ads × Job System

  1. 1

    What X Ads counts

    An event name X recognizes, a conversion identifier matched to the tag if you run one, a timestamp, hashed customer information, and the click identifier.

  2. 2

    How X Ads attributes it

    X appends twclid to your landing page URL. The platform's advertising stack has changed substantially and repeatedly, so treat any documentation older than a few months as unreliable and verify parameter names and endpoints directly before building.

  3. 3

    The window it uses

    X's attribution windows are configurable per conversion. Confirm the setting in your account before comparing any number, and verify the accepted event-freshness limit against current documentation.

  4. 4

    What your job management system counts

    Jobs completed and invoiced, at the amount actually billed, found in ServiceTitan, Jobber, Housecall Pro, Simpro or whatever holds your job records.

  5. 5

    The filter that makes them comparable

    Status is complete and invoiced — not quoted, not scheduled, not in progress.

X Ads × Job System · events

Reading the gap — X Ads × Job System

15%+ platform higherUsually the wrong event entirely — the platform is counting quotes, cancelled jobs, or repeat customers as new acquisitions.
20%+ platform lowerUsually structural — the platform is missing jobs it produced — almost always phone calls with no number tracking.

X Ads × Job System · diagnose

Diagnostic order — X Ads × Job System

  1. 01

    Confirm both numbers cover the same period and channel

  2. 02

    Quotes counted as won work

    A quote is a van, a person and an hour already spent. In trades the quote-to-job rate varies enormously by source, so counting quotes rewards the channels producing price-shoppers.

  3. 03

    Estimate value used instead of invoiced value

    Change orders, extras and variations move the final figure. The estimate is a forecast; the invoice is revenue.

  4. 04

    Repeat customers credited to the original click

    A maintenance customer booking twice a year for five years produces ten jobs against one click.

  5. 05

    Read the conversion reporting inside X Ads Manager, reconciled against your own records

    The platform's ad products and APIs have been rebuilt repeatedly, which means integration guidance ages faster here than anywhere else in this library. Anything you build should be re-verified periodically rather than assumed stable.

X Ads × Job System · prove

How to know you did it right — X Ads × Job System

Source of truth

your job management system — completed jobs for a fully closed month

    X Ads × Job System · free audit

    What we check in the free audit

    • Confirm both numbers cover the same period and channel
    • Quotes counted as won work
    • Estimate value used instead of invoiced value
    • Repeat customers credited to the original click
    • Read the conversion reporting inside X Ads Manager, reconciled against your own records

    Checked against

    your job management system — completed jobs for a fully closed month

    Get my free conversion tracking audit

    Free30 minutesNo obligation

    X Ads × Job System · when not to buy

    When the answer is that you do not need us — X Ads × Job System

    • If almost all of your completed jobs 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 X is a small experimental line on your plan, the integration effort is hard to justify against a platform whose API has moved this often.

    X Ads × Job System · what we deliver

    The method, step by step — X Ads × Job System

    • Pull what X Ads reports

      The conversion reporting inside x ads manager, reconciled against your own records.

    • Pull what your job management system shows

      Export completed jobs by completion date for a closed month, with the invoiced amount, and separate first jobs from repeat customers.

    • Filter both to the same thing

      Status is complete and invoiced — not quoted, not scheduled, not in progress.

    • Compare per record, not on totals

    FAQ

    X Ads × Job System questions, answered

    Only if X is a meaningful channel for you. For most trades businesses the integration effort is hard to justify against the volume it produces.

    Free · 30 min

    Found a gap between X Ads and your job management system?

    Free30 minutesNo obligation