Facebook, Instagram and the board
Four Things ServiceTitan Tells Facebook, and the Leads It Leaves Out
Meta's ad system can find a homeowner in your zip code who is thinking about a new furnace before they have typed a word. What it cannot do is see your dispatch board. Unless something tells Meta which leads became booked, paid jobs, it will keep finding people who like to fill out forms.
October 26, 2026 · 10 min read
The short answer
ServiceTitan's Marketing Pro Meta Ads integration pulls in Meta campaign costs, maps campaigns, sends key job events to Meta as conversions through "an offline dataset," and uploads a daily customer list for audiences. It requires DNI and a separate website pixel, and it does not track Facebook Lead Forms or Instant Forms. A server-side Conversions API connection covers the website's side.
On this page
- Meta finds people well. It has to be told which ones paid.
- The Marketing Pro integration, in four sentences
- What the built-in integration leaves on the table
- Instant Forms: the leads that never visit your site
- Where a server-side Conversions API connection fits
- A fall furnace campaign, wired from ad to invoice
- Consent and customer data, stated carefully
- Who builds the website half
Meta finds people well. It has to be told which ones paid.
Picture a heating company's fall campaign. A short video about furnace checks, a coupon, a button. By the end of the week Meta reports a pile of results. The office reports a few booked visits and a lot of voicemails from people who wanted the coupon for a different company's service. Both reports are accurate. They are simply measuring different things, and only one of them pays the technicians.
An ad campaign tuned for conversions learns from the conversions it is told about. If the only event it ever hears about is a form submission, it will learn to find people who submit forms, and it will get very good at it. The goal of connecting Meta to ServiceTitan is to change what Meta hears: not just that someone raised a hand, but that the hand belonged to a customer who booked a job and paid the invoice. That is the same principle we apply to search in our Google Ads conversion tracking guide, with different plumbing and a few different gaps.
The Marketing Pro integration, in four sentences
ServiceTitan's Meta Ads integration article describes four jobs, and it is worth knowing them exactly, because the sales conversation around this feature tends to round up.
- It pulls in Meta campaign cost, so spend sits beside jobs in ServiceTitan.
- It maps Meta campaigns to ServiceTitan campaigns, so jobs can be credited to the campaign that produced them.
- It "pushes key job events to Meta Ads as conversions," the same events ServiceTitan sends to Google.
- It sends a daily customer list to Meta for audiences and Lookalikes.
ServiceTitan says the integration uses "an offline dataset that tracks post-visit actions like booked jobs," and matches on Facebook Click ID, phone or email. DNI is required for attribution and conversion posting. One more precise point: ServiceTitan does not call this the Conversions API, so neither should anyone selling it to you. It is an offline dataset of job events, and it works on the jobs that ServiceTitan can tie back to a Meta click or a matching customer.
What the built-in integration leaves on the table
The same article is candid about two gaps. The integration "does not currently track Facebook Lead Forms or Meta Instant Forms." And the pixel on your website is a separate setup that must be done in addition. Neither is a flaw. They are boundaries, and they decide which work belongs to ServiceTitan and which belongs to your website.
Marketing Pro handles
- Meta spend and campaign mapping inside ServiceTitan
- Job events sent to Meta from ServiceTitan's offline dataset
- A daily customer list for audiences and Lookalikes
- Matching on Facebook Click ID, phone or email
Left to you and your website
- The Meta pixel on every page of the site
- Instant Form leads, which the integration does not track
- Carrying the Facebook click ID from the landing page into ServiceTitan
- Server-side events from the website, if you want them

The click ID piece is where a website earns its keep. ServiceTitan's web-session object, the one a site sends with each booking or form, has a field for fbclid alongside the Google and Microsoft click IDs and the UTM tags. A site that saves it on arrival and sends it with the booking gives ServiceTitan the match it needs. How that payload is built is on our web forms page.
Instant Forms: the leads that never visit your site
Instant Forms are convenient for the customer and awkward for everyone after. The lead fills in a form inside Facebook or Instagram, never loads your website, and stays with Meta, where it waits for someone to download it. ServiceTitan's integration does not track these, so out of the box they reach the office the old way: by email, export or a person copying names.
There are two honest fixes. The first is to send ad traffic to a landing page on your own site instead, where the booking flow captures the click ID and creates the booking in ServiceTitan directly. You trade a little convenience for a lead that arrives complete. The second is a custom connection. Meta's lead retrieval documentation describes real-time leadgen webhook notifications, with delays of "up to a few minutes," that a server can use to fetch each lead and create a booking in ServiceTitan through the API.
Closing the loop for Instant Forms has its own Meta product. Meta's Conversions API for CRM uploads "down-funnel event data from your CRM back to Meta," recommends sending the "15-17 digit Meta Lead ID" with each event, and powers a conversion leads goal that Meta says is "currently only compatible with Facebook/Instagram's Lead Ads (Instant Forms)." A connector that stores the Meta Lead ID on the ServiceTitan booking can report later stages back. Our API integration page covers what that kind of build involves on the ServiceTitan side.
Where a server-side Conversions API connection fits
Meta defines its Conversions API as "a connection between an advertiser's marketing data" and Meta systems, sent "from an advertiser's server, website platform, mobile app, or CRM." For a contractor's website, that means the site's server reports its own events, such as a form submitted or a booking requested, directly to Meta, alongside the pixel in the browser. Meta recommends exactly that pairing: "we recommend that advertisers implement the Conversions API alongside their Meta Pixel."
| Sent by | Matched on | Note | |
|---|---|---|---|
| Page views and browsing | Meta pixel in the browser | Pixel cookies | Setup is separate from Marketing Pro |
| Website form or booking request | Pixel and the site's server, with a shared event ID | Click ID, hashed email and phone | Meta deduplicates when event ID and name match |
| Booked and other key job events | ServiceTitan's offline dataset | Facebook Click ID, phone or email | Requires DNI; the website should not resend these |
| Instant Form lead stages | A custom CRM connection | Meta Lead ID | Not covered by ServiceTitan's integration |
The rule in that table is simple: one sender per event. Meta's deduplication guide says a pixel's eventID "must match the Conversion API's event_id" and the event names must match too, so a form sent from both the browser and the server counts once. Job events belong to ServiceTitan. If the website also invents a "booked job" event, Meta hears about the same furnace check twice and learns the wrong lesson with great confidence.
This is why we build the server side on a custom Next.js site rather than a browser plugin: the access keys stay on the server, the events are sent after the lead is validated, and a failed send is queued and retried. The reasons are laid out on our ServiceTitan and Next.js page.
A fall furnace campaign, wired from ad to invoice
Seasonal tune-ups are the natural Meta campaign for HVAC, plumbing and pest control companies: a reminder people did not know they needed, timed to the weather. Here is how we would set one up so the result is measured in jobs, not reactions.
- 1
Build one landing page per offer
A page on your own site for the tune-up, with the price or coupon, the service area and a booking button. Instant Forms only if you have a plan for getting them into ServiceTitan.
- 2
Install the pixel and the server events
Pixel on every page, server-side Conversions API events for the form and booking, both carrying the same event ID.
- 3
Save the click on arrival
Store
fbclidand the UTM tags with the landing page and referrer, and send them with the booking to ServiceTitan's web-session attribution. - 4
Confirm DNI and campaign mapping
The page shows a DNI number, and the Meta campaign is mapped to a ServiceTitan campaign in Marketing Pro, so calls and bookings land under the right name.
- 5
Offer the membership at the visit
A tune-up customer is the best prospect for a maintenance plan. Our memberships guide and the roof care club demo show how a site sells one.
- 6
Judge it by booked and completed jobs
Compare the campaign's spend in ServiceTitan with its booked jobs and revenue, then decide whether next fall gets more money or a different offer.
For the creative side of the campaign, our social media marketing guide and the social media statistics are a useful counterweight to the feed's enthusiasm.
Consent and customer data, stated carefully
Sending customer data to an ad platform is a decision, not a default. ServiceTitan's integration sends a daily customer list to Meta, and a server-side connection from the website can send contact details with each event. Meta's customer information parameters page says its systems "are designed to not accept customer information that is unhashed Contact Information," and marks email, phone, names and address fields as hashing required. Browser identifiers such as the click cookie and IP address are sent unhashed.
Meta also offers Limited Data Use, a data processing option that, in Meta's words, "gives you more control over how your data is used in Meta's systems." As of October 2026, Meta lists it for people in a set of US states that includes California, Colorado, Florida and Texas; for customer list audiences, only California. Whether you need it, and what your privacy policy must say, is a question for your own counsel.
Who builds the website half
DataCram is a web studio in San Antonio, Texas that builds custom Next.js sites with Athena CMS and runs ads and local marketing for businesses across the US. For Bleuwave Home Services, a Phoenix-area company that runs on ServiceTitan, "an on-page assistant books straight into ServiceTitan." For HomeService WebApp, the API layer we built "syncs jobs and estimates bidirectionally with ServiceTitan." Both are on our work page, and our HVAC website design page shows how we build for the trade.
The tracking work, pixel and server events included, is our conversion tracking setup service; a custom Instant Forms connector is an API integration, quoted after a free review. New sites start at $1,750 on the web design pricing page, and website financing is 0% with 25% down for up to twelve months. Start with the free mockup, read the rest of the ServiceTitan integration section, or call (210) 346-0848.
Questions contractors ask about ServiceTitan integration
Yes, through Marketing Pro's Meta Ads integration. It pulls Meta campaign cost, maps Meta campaigns to ServiceTitan campaigns, sends key job events to Meta as conversions and uploads a daily customer list for audiences and Lookalikes. DNI is required for attribution and conversion posting, and the website pixel is set up separately.
ServiceTitan does not use that term. Its help article says the integration uses an offline dataset that tracks post-visit actions like booked jobs, matching on Facebook Click ID, phone or email. A website can add its own server-side Conversions API events for forms and booking requests, deduplicated against the pixel with a shared event ID.
Not through the built-in integration, which ServiceTitan says does not currently track Facebook Lead Forms or Meta Instant Forms. You can send ad traffic to a landing page that books into ServiceTitan directly, or build a custom connector that fetches each lead from Meta and creates a booking in ServiceTitan through the API.
Yes. ServiceTitan says the website pixel is separate and must be set up in addition. The pixel reports what happens on the site; ServiceTitan's offline dataset reports what happens after, such as booked jobs. Meta recommends pairing the pixel with server-side Conversions API events from the site.
That depends on your privacy policy, the consent you collect and the laws where your customers live, so ask your own counsel. Meta requires contact details to be hashed and offers a Limited Data Use option for people in certain US states. DataCram builds to the policy your business approves; we are not a law firm.
Give each platform its own mapped campaigns, make sure spend is recorded against them, and compare booked jobs and completed revenue per campaign. Our marketing attribution guide shows a monthly report that puts every channel on the same page.
Keep reading
- Attribution, case by caseThe Case of the Unattributed Furnace: Tracing Every ServiceTitan Job Back to What Paid for ItWhy "source: website" tells you nothing, how to tie every ServiceTitan lead to a campaign and its revenue, and a sample monthly report you can copy.
- Google Ads and ServiceTitanWhy Google Ads Keeps Buying Phone Taps, and How ServiceTitan Revenue Changes Its MindSend booked jobs and invoice revenue from ServiceTitan back to Google Ads: the exact conversion actions, click IDs, enhanced conversions and setup steps.
- Club plans, sold properlyMaintenance Agreements Sold Online: How Far a Website Gets Before ServiceTitan Takes OverWhat a website can sell, what ServiceTitan's memberships API supports, and where the office finishes the sale. Plus pricing pages that sell renewals.
- Online bookingThe Customer Picked Thursday at 10. Does the Dispatch Board Know?ServiceTitan's Scheduling Pro or a custom booking flow on your own site: how each installs, tracks and shows availability, and when each one wins.
- Web formsThe Lead Nobody Has to Retype: Website Forms That Arrive in ServiceTitan WholeSend estimate, callback, contact and emergency forms to ServiceTitan as bookings with the source attached. Field map, spam filtering, retries, prices.
- Custom site, server-side linkIf a Visitor Can Read Your API Secret, So Can Everyone: Custom Next.js Sites That Book Into ServiceTitan From the ServerA custom Next.js site that sends bookings to ServiceTitan from its own server: credentials hidden, click IDs kept, pages fast. How it works, limits, prices.
- Everything in ServiceTitan IntegrationSee the section
Teach Meta what a paying customer looks like
Tell us how Facebook and Instagram leads reach ServiceTitan today. We will map the gaps and quote the website side in writing.
Which of these sounds like you? (pick any)
Rather talk now? Call (210) 346-0848.