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
  1. Meta finds people well. It has to be told which ones paid.
  2. The Marketing Pro integration, in four sentences
  3. What the built-in integration leaves on the table
  4. Instant Forms: the leads that never visit your site
  5. Where a server-side Conversions API connection fits
  6. A fall furnace campaign, wired from ad to invoice
  7. Consent and customer data, stated carefully
  8. 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
A hand holding a phone with a feed of plain tiles and a small house, while another hand dangles a fishing line over the screen
The feed is where the line goes in. Whether anything worth keeping comes out is decided at the dispatch board.

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."

Who sends which event to Meta in a setup that does not double count
Sent byMatched onNote
Page views and browsingMeta pixel in the browserPixel cookiesSetup is separate from Marketing Pro
Website form or booking requestPixel and the site's server, with a shared event IDClick ID, hashed email and phoneMeta deduplicates when event ID and name match
Booked and other key job eventsServiceTitan's offline datasetFacebook Click ID, phone or emailRequires DNI; the website should not resend these
Instant Form lead stagesA custom CRM connectionMeta Lead IDNot 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. 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. 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. 3

    Save the click on arrival

    Store fbclid and the UTM tags with the landing page and referrer, and send them with the booking to ServiceTitan's web-session attribution.

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

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

Free · No obligation

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.

CallGet a quote