⚠︎ Never reuse tracking numbers across campaigns. Each campaign needs a unique number for accurate attribution.
a. Go to Settings > Phones > Phone Numbers and click Add New Number.
b. To add a local number, search by area code or ZIP code. To add a toll-free number, click Toll-Free Number and search by area code.
c. Click a number, then click Choose Number. Enter the Set Forwarding Number. Set the Default Call Type to Lead or Not Lead.
⚠︎ Complete the "Register to Enable Text Messaging" form before requesting the number. Without this, SMS delivery will fail.
d. If you want to assign this number to a campaign now, select it from the campaign dropdown. Click Add Number.
a. Go to Settings > Phones > Phone Numbers. Find the tracking number you want to assign.
b. Click the Edit (pencil) icon next to the number. In the Set Campaign dropdown, select the campaign to associate with this number.
c. Click Save. Test the number by calling it and verifying the campaign auto-populates on the Call Booking screen.
⚠︎ Dynamic Call Tracking (DNI) requires Marketing Pro with Google Ads configured. You cannot set up DNI without the Ads integration in place first.
a. Go to Settings > Integrations > Marketing Integrations. Next to Dynamic Call Tracking (DNI), click Configure, then click Add New.
b. Choose Auto-DNI (recommended) or Manual DNI. Enter your website domain (without http:// or trailing paths).
c. Follow the setup steps. When you reach the Insert Script step, click Copy Code and paste the JavaScript snippet into the global header of your website. This dynamically swaps the phone number displayed on your site based on the visitor's source.
⚠︎ The DNI snippet must be in your website's tag — not in the body or footer. Also ensure the website domain in Settings matches your actual site URL exactly (e.g., "www.company.com" vs. "company.com"). For Canadian tenants, you must use Manual DNI.
⚠︎ Lead attribution depends on tracking parameters (such as UTMs or campaign values) being included in your scheduler URL or configured through Marketing Pro.
a. Add tracking parameters (for example, campaign, utmSource, or utmCampaign) to your scheduler URL or onclick events.
b. Configure campaign assignment by ensuring values match existing ServiceTitan campaigns, or by using Marketing Pro Ads or campaign rules.
c. Test your setup by booking a job and review lead source data by exporting session data from the Scheduling Pro performance flyout.
a. Go to Settings > Integrations > Marketing Integrations. Locate the lead integration you want to configure (e.g., Thumbtack, Angi, Google Local Services) and click Configure.
b. Follow the setup steps for your chosen provider. For Thumbtack: sign in with your Thumbtack account credentials. For Angi: connect your Angi Pro account. For Google LSA: connect your Google account and configure job type mapping.
c. Once connected, third-party leads appear automatically as bookings on the Calls > Bookings screen for your team to review and convert into jobs.
⚠︎ Map incoming lead types (e.g., "Water Heater") to specific Job Types in the integration settings. Without this mapping, leads may route to the wrong dispatch board or business unit.
a. Set up permissions for team members who will review Second Chance Leads. Decide who reviews leads and who makes the follow-up calls.
b. Configure notifications. Go to your notification settings and enable in-app, email, or SMS alerts for new Second Chance Leads.
c. When a Second Chance Lead is created, review the call recording, then follow up with the customer. The faster you call back, the more likely you are to save the lead.
d. Update the lead status after follow-up — mark as converted, not a lead, or dismissed to keep your pipeline accurate.
⚠︎ Second Chance Leads is available standalone (SCL4ALL) or bundled with Phones Pro, Contact Center Pro, or Maximize. It is owned by the JBCE / Titan Intelligence team — it is not exclusive to any single Pro product.
a. When a caller isn't ready to book, go to the Calls screen. Click the incoming call bubble.
b. Search for and select the customer location. If the customer is new, add them first.
c. Add the marketing campaign and job details. Close the call bubble, then select a Call Reason marked as a lead.
⚠︎ Ensure a Marketing Campaign is always selected on the call screen. Overriding it with "Unknown" breaks attribution for every job booked from that call.
a. Go to Follow Up > Leads and click Create Lead.
b. Search for and select the customer. If the customer doesn't exist, add them first.
c. Fill in the lead details — campaign, business unit, job type, and any notes. Click Save.
⚠︎ Always book the job through the lead record so it converts automatically. Booking a job separately from the Calls screen does NOT auto-convert the lead — you must explicitly convert it through the lead record or the lead stays open.
a. Go to Follow Up > Leads. Find the lead you want to convert and click to open it.
b. Review the lead details, then click Convert to book a job directly from the lead.
c. Complete the booking details — job type, appointment window, business unit, and assigned technician — then confirm.
a. Verify the DNI JavaScript snippet is installed in your website's tag — not in the body or footer.
b. Clear your browser cache and test in an incognito/private window to rule out caching issues.
c. Confirm the website domain in Settings > Integrations > Marketing Integrations > Dynamic Call Tracking (DNI) > Configure matches your actual site URL exactly (including "www." if your site uses it).
d. Check that there is only one instance of the ServiceTitan DNI code on your website. Duplicate codes cause conflicts. Also check that no third-party DNI (CallRail, CallTrackingMetrics, etc.) is installed simultaneously — they will conflict with ServiceTitan's DNI.
⚠︎ The DNI test can sometimes show a failure even when DNI is working. If the website number swaps to a ServiceTitan DNI pool number and calls appear with the correct campaign in Calls, you can disregard the test failure.
a. Go to Settings > Integrations > Marketing Integrations and verify the integration status is Active.
b. If the integration shows an error, try disconnecting and reconnecting your account credentials.
c. Check that incoming leads match the business units and job types mapped in your integration settings. Mismatched mappings can prevent leads from appearing on the correct board.
a. Go to Settings > Phones > Phone Numbers. Confirm the number type is set to Tracking number — not Direct Dial. Direct Dial numbers do not track campaign events.
b. Verify the number has a campaign assigned in the Set Campaign field.
c. Place a test call to the tracking number. Check the Calls screen to confirm the Marketing Campaign field auto-populates correctly.