ServiceTitan · Meta CAPI

ServiceTitan Meta CAPI Integration

Meta Pixel fires on a form submit or call page visit. The actual $800 HVAC job closes three days later. Meta never sees it. CAPI closes the loop. ServiceTitan fires a webhook when a job is completed or an invoice is paid. ConversionLoop sends that event to Meta as a server-side Purchase event with the real revenue value. The algorithm stops finding homeowners who click and starts finding homeowners who hire.

ServiceTitan
Your CRM
webhook
ConversionLoop
API upload
Meta CAPI
Ad platform
10-min setupNo code required14-day free trialReal-time upload
10 min
Setup time
30-40%
Event match improvement
0
Developer needed
Server
Event delivery method

Why Meta Pixel tracking is incomplete for ServiceTitan businesses

When a homeowner clicks your Facebook or Instagram ad and lands on your website, the Meta Pixel fires a PageView. If they fill out a contact form or book a call, it fires a Lead. That is where Pixel tracking ends. The job gets booked in ServiceTitan. The technician shows up and completes the work. The invoice is sent and paid. None of that reaches Meta. The algorithm's model of your ideal customer is built on whoever clicks ads and submits forms, not on whoever actually hires a contractor and pays the invoice. You end up spending budget finding the wrong people at a higher cost per booked job.

Ad click
GCLID assigned
Landing page visit
GCLID captured by cl.js
Booking made
Patient books through Pabau
Invoice paid
Without CL — Google sees nothing
Invoice paid
With ConversionLoop — conversion uploaded

ConversionLoop vs. manual CSV upload

Why the manual process breaks — and what changes when you automate it

Feature
Manual / No tool
ConversionLoop
iOS 14+ resistance
Pixel blocked on 30-40% of traffic
Server-side CAPI, unblockable
ServiceTitan job as CAPI event
Not possible with Pixel alone
Automatic via ServiceTitan webhook
Invoice value passthrough
Not tracked
Exact payment amount sent to Meta
Event match quality
Low, browser Pixel only
High, hashed PII and fbclid server-matched
Lookalike Audience quality
Built on clickers and form fillers
Built on invoice payers
Developer required
Yes for custom CAPI builds
No

How ServiceTitan events reach Meta CAPI

ConversionLoop captures the fbclid when a homeowner first clicks your Facebook or Instagram ad. That ID is stored server-side. When ServiceTitan fires a webhook for a job completion or paid invoice, ConversionLoop sends a Purchase event to Meta CAPI with hashed contact data and the real revenue amount.

1

Homeowner clicks your Facebook or Instagram ad. cl.js captures their fbclid and stores it against their email or phone number.

2

Homeowner submits a form or calls your office. A job is created in ServiceTitan.

3

Technician completes the job. ServiceTitan fires a Job Completed webhook to your ConversionLoop endpoint.

4

ConversionLoop sends a Purchase event to Meta CAPI with hashed email, phone, and the stored fbclid for high-quality matching.

5

Meta registers the conversion. The algorithm starts optimizing for people who hire contractors, not just people who browse.

Ready to connect ServiceTitan?

14-day free trial. No credit card. Setup takes 10 minutes.

Start free trial

Step-by-step: Connect ServiceTitan to Meta

Follow these steps once. Everything after is automatic.

1
Create a ServiceTitan + Meta integration
In ConversionLoop, select ServiceTitan as source and Meta as destination. You get a webhook URL and ingest secret.
2
Register the webhook in ServiceTitan
In ServiceTitan Settings under Integrations, paste your ConversionLoop webhook URL. Select Job Completed and Invoice Paid as trigger events.
3
Add cl.js to your website and landing pages
Paste the ConversionLoop snippet in your site head or deploy via Google Tag Manager. It captures the fbclid on every Facebook and Instagram ad click.
4
Add your Meta Pixel ID and CAPI token
In ConversionLoop, enter your Meta Pixel ID and a CAPI access token from Meta Events Manager under Settings.
5
Verify in Meta Events Manager
ConversionLoop fires a test CAPI event. Confirm it appears under Test Events in Meta Events Manager within a few minutes.

ServiceTitan events worth tracking

Purchase

Invoice Paid in ServiceTitan with the exact payment amount. Highest-quality signal for ROAS optimization and Lookalike Audience creation. Tells Meta what a paying customer looks like.

Schedule

Job Booked or Appointment Confirmed. Maps to Meta Schedule event. Useful mid-funnel signal for contractors with longer sales cycles.

Lead

New contact or inquiry. Earlier-funnel signal that helps Meta find prospects more likely to convert to booked jobs.

Key takeaways

  • 1Meta Pixel only fires on website visits. ServiceTitan job completions and paid invoices are completely invisible to Facebook campaigns without CAPI.
  • 2iOS 14 and ad blockers suppress a significant share of Pixel events, reducing match quality for home services campaigns.
  • 3CAPI events sent server-side by ConversionLoop are not affected by browser restrictions or device settings.
  • 4Job Completed and Invoice Paid events give Meta a complete picture of the customer acquisition cycle.
  • 5Lookalike Audiences built on invoice payers find new homeowners who are more likely to book and pay, not just browse.
  • 6Average event match rate improves 30 to 40 percent when CAPI supplements or replaces browser Pixel events.

Frequently asked questions

Will adding CAPI double-count my conversions?

No. ConversionLoop sends a unique event ID with every CAPI event. Meta's deduplication logic removes any matching Pixel event from the reported count. Your conversion numbers stay accurate.

What customer data does ConversionLoop send to Meta?

ConversionLoop sends hashed versions of the customer's email address and phone number, alongside the stored fbclid. All personally identifiable information is hashed with SHA-256 before leaving ConversionLoop servers. Raw customer data is never transmitted to Meta.

What if the homeowner never visited our website before calling?

Phone leads who never visited your site from an ad will not have a stored fbclid. ConversionLoop will still send the event with hashed email and phone for identity matching. Match rate will be lower for these contacts but still valuable for event-level optimization.

Does this work for multi-location or franchise operations?

Yes. Each ServiceTitan business unit can send to a separate Meta Pixel. ConversionLoop supports multiple integrations under a single account with independent routing rules per location.

ServiceTitan
Your CRM
webhook
ConversionLoop
API upload
Meta CAPI
Ad platform

Connect ServiceTitan to Meta today

Stop optimizing on guesswork. Every invoice, treatment, and booking — tracked and attributed automatically.

Start free — 14 days on us

No credit card required · 10-minute setup · Cancel anytime