Skip to content

Call tracking software

Call tracking software that traces every call to the ad and keyword.

A recording and an AI summary separate booked jobs from junk, and every call sits beside your forms and CRM deals.

  • A tracking number per website visitor
  • Recorded and summarised by AI
  • Qualified calls back to Google Ads and Meta

Rated by businesses whose leads pick up the phone

  • Google
  • TrustpilotRated 4.9 out of 5 on Trustpilot4.9
  • G2Rated 5.0 out of 5 on G25.0
  • CapterraRated 5.0 out of 5 on Capterra5.0

Calls traced to the ad at

  • Trading.de logo
  • Swedish Cold logo
  • Trustfactory logo
  • MLK Digital logo
  • CPC AG logo
  • DaxoMedia logo
  • Contentbär logo
  • Hivebuy logo
  • OBVIOUS logo

Every call, with the ad behind it

Your workspace
Inbound callsToday, every source, forwarded to your own line
Live
  • Inbound call, 4:12Google Ads, "emergency plumber berlin"€620 jobQualified, job booked
  • Inbound call, 2:48Google Business Profile, fixed numberQuote requestQualified
  • Inbound call, 0:58Meta Ads, Heating offer lead genPrice shopperNot qualified
  • Inbound call, 0:21Website pool, direct visitNo requestJunk, spam
  • Inbound call, 3:35Spring flyers, fixed number€1,240 jobQualified, job booked
  • Missed call, rang 0:34Google Ads, "boiler repair berlin"On the call-back listMissed

Every number forwards to the line you already answer. The source is attached on the way through.

The definition

What is call tracking software?

In short

Call tracking software gives each marketing source its own phone number, forwards the calls to your existing line and records the source of every call. On a website, dynamic number insertion shows each visitor a unique number, so a call inherits that visitor's ad, campaign and keyword. Fixed numbers cover offline sources like a Google Business Profile, flyers or radio.

  • Swap the number per visitor

    Dynamic number insertion shows each website visitor a number from a pool and keeps it for the whole visit, so a call maps to that session's ad click, campaign and keyword rather than to "website".

  • Give offline sources a fixed number

    A Google Business Profile, a flyer, a radio spot or a truck wrap each get a number of their own, so the calls they produce are counted instead of guessed. See offline conversion tracking.

  • Record and qualify the call

    A recording and an AI summary on every call, so the report separates booked jobs and quote requests from wrong numbers, spam and price shoppers.

  • Send the call back as a conversion

    Qualified calls go to Google Ads and Meta through their conversion APIs and land on the CRM record, so the bidding learns from jobs and sales sees the source. See phone call leads.

Why click reports miss the phone

The click is measured to the cent. The call it produced is not measured at all.

For a plumber, a dentist or a law firm the conversion that pays is a phone call, and the moment the phone rings the marketing data stops. Budgets get set on whatever was still visible.

  • Every caller says "Google". Google Ads, Maps, organic search and a friend who searched on their behalf all sound the same on the phone.
  • One number on everything. The website, the Business Profile and the van share a line, so the campaign report shows zero calls and the receptionist's memory is the attribution model.
  • The ad platform counts taps, not calls. A call button tap and a booked job look identical in the conversion column, and so do a spam call and a €1,200 repair.
  • Nothing separates good calls from junk. Sixty calls from one campaign might be forty wrong numbers, and nobody finds out until the month is over.
  • Missed calls leave no trace. A call that rings out at 6 PM is a job the next listing in the search results booked, and no report ever mentions it.
  • The CRM record says "phone". Sales types the lead in by hand with no campaign or keyword on it, so the closed revenue never finds the ad that produced it.

The result is a budget that follows clicks and forms, because those are the outcomes that were counted. The campaign that fills the phone lines gets cut for having no conversions.

Case studies

What changes once the attribution is right

One measured result per customer, with the person, the role and the company behind it.

  • Portrait of Karsten Guhr

    Tax and accounting

    54% better lead quality after using LeadJourney for marketing

    Karsten Guhr

    Managing Director

    Read the story
  • Portrait of Nikita Yatsun

    SEO agency

    95% clarity about marketing KPIs and a foundation to scale

    Nikita Yatsun

    Managing Director

    Read the story
  • Portrait of Florian Buck

    Klickkraft GmbH

    Business coaching

    €10-20k in monthly Meta spend, tied to qualified leads and revenue per ad

    Florian Buck

    Managing Director

    Read the story
  • Portrait of Marc Richard

    LinkedIn growth agency

    2x customer retention, once every LinkedIn touchpoint was tracked to revenue

    Marc Richard

    CEO

    Read the story
  • Portrait of Andreas Malkow

    Digital publishing

    Which article produced the lead and the revenue, across AI and organic search

    Andreas Malkow

    CEO & Head of PR

    Read the story
  • Portrait of Philipp Nessmann

    SEO and GEO agency

    Proven ROI on every retainer, from organic and AI search leads through to revenue

    Philipp Nessmann

    Managing Director

    Read the story
  • Getreach

    Backlinks marketplace (SaaS)

    0 to 100k in revenue from paid ads alone, inside the first month

    Getreach

    getreach.com

    Read the story

How dynamic number insertion works

Your website shows a different number to each visitor.

One script swaps the number on the page for a free one from your pool and holds it for the visit, so the call arrives with the keyword on it.

Dynamic number insertion, one visitor

Diagram: a visitor arrives on the website from a Google Ads click on the keyword emergency plumber berlin, the LeadJourney script swaps the printed number +49 30 555 0100 for +49 30 555 0142 from the number pool and holds it for that visit. When the visitor calls that number the AI Attribution Engine looks up the session that held it, forwards the call to the office line +49 30 555 0100 and attaches the ad, campaign, keyword, recording and AI summary, then sends the qualified call back to Google Ads and Meta as a conversion.

Your websiteOne visitor, one session
rohrfix-berlin.de/notdienst

Rohrfix Berlin

Call us now

+49 30 555 0100

Swapped by the script

+49 30 555 0142

Google Adsemergency plumber berlin · gclid Ta9…
Click ID and keyword
Number 0142 for this visit

AI Attribution Engine

One number, one visitIt hands out the number, then joins the call back to the session that held it.

Your number pool

  • +49 30 555 0141
  • +49 30 555 0142
  • +49 30 555 0143
  • +49 30 555 0144
  • +49 30 555 0145
  • +49 30 555 0146

Back in the pool when the visit ends

The call to 0142
Its ad, keyword and recording
Your line ringsSame phone, same team
+49 30 555 01422:31 PM
Ad
Google Ads
Keyword
emergency plumber berlin
Forwarded to
+49 30 555 0100

AI summary

Boiler repair, booked for Thursday. Qualified.

The qualified call goes back to Google Ads and Meta as a conversion, on the campaign that rang it
  1. Step 1

    The visit opens a session

    Someone clicks your ad and lands on your site. The script reads the click ID, the campaign and the keyword out of the URL and opens a session for that visitor.

  2. Step 2

    The script swaps the number

    It rewrites the phone numbers on the page, the printed one and the tap-to-call link, to a free number from your pool. Header, footer, contact page: this visitor only ever sees that number.

  3. Step 3

    That number is theirs for the visit

    Nobody else is shown it while the visit lasts, so the number is a name for one session. It goes back into the pool when the visit ends and is handed out again later.

  4. Step 4

    The call is joined back to the visit

    The moment it rings, the engine looks up which session held that number and forwards the call to the line you already answer. The ad, campaign, keyword, recording and AI summary land on the call.

Nothing changes for the person calling. They dial the number they saw, your own line rings, your team answers as always. The swap only decides which number rang.

How the data moves

Every call traced to its source, every booked job sent back to the ad that rang it.

Website calls come in through the number pool with the visitor's session and keyword, offline calls through their fixed number. Both are matched to the person in your CRM, and the qualified ones go back through the Google Ads and Meta APIs.

Where the calls come from

LeadJourney

Number swapped, call matched

What the report counts

  • Calls
  • Qualified calls
  • Booked jobs
  • Closed revenue

Matched to the record in your CRM

and 100+ more
Qualified calls sent back through the Google Ads and Meta conversion APIs

Integrations

Every source and every CRM, connected.

The ad platforms and channels a touchpoint can come from, and the CRMs the outcome is read back from. Open any tile for what exactly moves between LeadJourney and that tool.

Ad platforms

Spend, campaign structure and click IDs come in. Closed deals go back out as offline conversions.

All traffic channels

Organic channels

Unpaid clicks from search and social, attributed per post, per video and per keyword.

All traffic channels

AI search engines

The traffic your analytics still files under direct. No setup, the tracking script separates it.

All traffic channels

CRM and sales

Lead stage and deal value flow in. Every campaign sees the revenue it actually produced.

All CRM and sales tools

What the software does

Everything call tracking software has to do, in the same system as your clicks and forms.

Dynamic number insertion

One snippet shows each visitor a number from your pool and keeps it for the visit. The call is matched to the ad, the campaign, the keyword and the pages seen.

Fixed numbers for offline sources

Your Google Business Profile, flyers, radio spots and truck wraps each get a number of their own, so the channels that ran on faith get a calls column and a cost per call.

Recording and AI summary

Every call is recorded, a toggle per number with a consent announcement where you need one, and summarised by AI: a new job, a booking, a quote, a wrong number or spam.

Qualified calls back to the ad platforms

A call the AI marks qualified goes to Google Ads and Meta as a conversion through their conversion APIs, so the bidding optimises toward people who call and book, not people who tap a button.

The call on the CRM record

The call lands on the contact in HubSpot, Pipedrive, Close or Attio with its source, campaign and recording, natively or by webhook, so the deal that closes later still carries the ad that rang the phone.

Calls and forms in one campaign report

Spend, forms, calls, qualified calls and booked jobs per campaign in one table, with cost per qualified call next to cost per lead. Ad tracking reads the same journey.

Why it is not a separate tool

A caller who clicked your ad last week and sent a form yesterday is one person, not three rows in three tools.

Standalone call tracking reports calls, the ad platform reports clicks, the form tool reports submissions. LeadJourney records all three on one journey per person: the difference between knowing which ads ring and knowing which ads pay.

The reports

What you see once every call has a source.

Your workspace
Calls per campaignGoogle Ads and Meta, last 30 days
214Calls
131Qualified
68Booked jobs
CampaignCallsQualifiedBooked jobs
Emergency plumber, Berlin866137
Boiler repair, search543819
Heating offer, lead gen47186
Competitor names27146

The Meta campaign had the second most calls and the fewest booked jobs. This is the row that moves budget.

Calls per campaign

Calls, qualified calls and booked jobs, per campaign.

The campaign report with the phone in it: the calls each campaign produced, how many the AI marked qualified and how many became booked jobs, in the same table as the forms.

  • Google Ads, Meta and your offline sources side by side
  • Qualified calls and booked jobs, not call button taps
  • Cost per qualified call next to cost per lead
  • Every figure opens to the named calls behind it
Your workspace
Call detailToday, 10:42 AM, answered in 0:09
TBTom BeckerBerlin, first-time callerJob booked
  1. Google AdsClicked the ad for "emergency plumber berlin", exact match10:31 AM
  2. Landing pageOpened /emergency-plumber, shown +49 30 555 0142 from the pool10:31 AM
  3. CallCalled after 11 minutes on the site, forwarded to the office line, 4:1210:42 AM
  4. AI summaryBurst pipe under the sink, same-day visit booked for 2 PM10:47 AM
Sent to Google Ads as a conversion€620 job

The keyword, the recording and the booked job on one screen, and the same event in Google Ads.

Call detail

One call, from the ad click to the conversion sent back.

Open any call and read the whole path: the ad and keyword, the landing page, the number shown, the recording, the AI summary, and the conversion that went back to Google Ads.

  • Ad, campaign, keyword and landing page behind the call
  • Recording and AI summary on the same screen
  • Tagged qualified or junk, with booked jobs marked
  • Sent to Google Ads and Meta as a conversion, and onto the CRM record
Your workspace
Calls and forms per channelAll sources, closed revenue from the CRM, last 30 days
ChannelCallsFormsRevenue
Google Ads16743€52.6k
Google Business Profile1120€31.4k
Google organic5837€24.8k
Meta Ads4729€12.1k
Print and radio210€9.7k
Closed revenue from 514 leads, calls and forms€130.6k

The Business Profile produced 112 calls and not one form. In a form-only report it does not exist.

Calls and forms per channel

Every channel with its calls, its forms and the revenue behind both.

The traffic channel report counts a phone call as what it is: a lead. Paid, organic, the Business Profile and the offline sources show their calls and forms with the revenue the CRM closed.

  • Calls and forms counted as leads, per channel
  • Google Business Profile and offline sources through their fixed numbers
  • Closed revenue from the CRM in the same row
  • Booked meetings count as well, see booked call tracking

Live in 21 minutes

Call tracking set up in three steps

Your existing number and phones stay as they are, nothing changes for the caller, and there is no developer on the ticket.

  1. 1About 5 minutes

    Install

    Add one script to your site on your own tracking subdomain. It records every visit first-party with its click ID and UTMs, and swaps the phone number on the page per visitor from your pool.

  2. 2About 15 minutes

    Connect

    Connect Google Ads and Meta for spend and the conversion APIs, your CRM for the deals, and provision your numbers: a pool for the website, a fixed number per offline source.

  3. 3Same day

    Map the outcomes

    Choose which calls count as conversions and where they go: the qualified call to Google Ads and Meta, the booked job onto the CRM record, the closed deal back to both platforms. The report fills from the next call.

How it compares

A standalone call tracker, the ad platform's own numbers, and call tracking software on the same journey as your clicks.

What you needCallRailStandalone call tracking (CallRail)Google AdsGoogle forwarding numbersLeadJourney
Source, campaign and keyword on website callsYes: Dynamic number insertionPartly: Google Ads clicks onlyYes: Every visitor, every channel
Fixed numbers for offline sourcesYes: Per numberNo: Ads onlyYes: Business Profile, print, radio
Recording and a summary that separates jobs from junkPartly: Recording included, AI qualification an add-onNo: Duration onlyYes: Recording and AI summary on every call
Calls next to forms and CRM deals in one journeyPartly: A separate tool, joined by integrationNo: Calls in the ad account onlyYes: One journey per person, one report
Qualified calls sent back to Google Ads and MetaPartly: Through integrations, per platformPartly: Google Ads only, every call countsYes: Conversion APIs, qualified calls only
SetupPartly: A second tool to configure and reconcileYes: A setting in the ad accountYes: 21 minutes, in the same tracking layer

What changes

What businesses and agencies do differently once every call has a source.

Down:

Wasted ad spend

The campaign that rings wrong numbers loses its budget to the one that books jobs, decided on a call log rather than on a hunch.

Up:

Booked jobs per euro

When Google Ads and Meta are told which calls became jobs, the bidding moves toward people who call and book instead of people who tap a button.

Done:

Offline sources with a number

The Business Profile, the flyers and the radio spot each have a calls column, so the yearly renewal is decided on data instead of on a feeling that people mention it.

Down:

Missed calls without a trace

Every missed call is logged with its source and time, so it becomes a call-back instead of a job the next listing took.

Done:

Calls and forms in one report

A campaign is judged on every outcome it produced, so the phone-heavy campaign stops looking dead next to the one that collects forms.

Lasting:

Proof for the client

Agencies show every delivered call with a source, a recording and a booked job tag. The retainer conversation gets shorter.

Original reviews

What our customers wrote, word for word

4.9 out of 5 across 11 public reviews. Quoted as they were left, shortened only by dropping whole sentences.

  • 5 out of 5 starsGoogle

    Before LeadJourney, we had no reliable tracking concept for our five-figure ad spend. We were manually building spreadsheet and CRM reports, inaccurate and time-consuming. Within two days, everything was set up. For the first time, I know exactly what I pay per lead and which campaigns actually bring in the best-qualified prospects.

    Florian BuckCEO, Klickkraft GmbH
  • With LeadJourney we are able to track all our leads and connect them with sales and attribution data to make better decisions. In the first month of using it we scaled from 0 to 100k revenue from paid ads only.

    GetreachBacklinks Marketplace (SaaS)
  • 5 out of 5 starsG2

    LeadJourney finally fixed my Marketing Analytics. It goes way beyond basic Ad Tracking Software. The Customer Journey Report saves hours of digging, and capturing everything from Offline Conversions to AI Search Tracking makes it the Best B2B Attribution Platform available.

    Sascha LenzMarketing Manager
  • 5 out of 5 starsTrustpilot

    Connected LeadJourney for 2 clients, setup took literally 20 minutes each. The data became more accurate, the reports actually make sense. Now clients look at the dashboard and the 'why don't the numbers match?' questions are gone.

    Alexander SamarPerformance Marketing Agency
  • 5 out of 5 starsGoogle

    With LeadJourney, we have finally found a tool that provides us with the data we need to scale our performance marketing campaigns. The most important KPI is no longer lead price but cost per qualified lead.

    Steffen SiesingCEO, Bilanzmanufaktur GmbH
  • 5 out of 5 starsG2

    The ability to track both online and offline conversions in one unified dashboard has given us insights we never had before. Our ROI has improved dramatically since we started integrating LeadJourney with our CRM. We're finally able to see the full customer journey, and it's been a game changer for our strategy.

    Andre WitzelFounder, Trading.de
  • 5 out of 5 starsTrustpilot

    The ability to seamlessly integrate data from multiple channels and see real-time insights has significantly improved our campaign results. We now focus on metrics that truly matter, like ROI and qualified leads.

    Nikita YatsunCEO, RLV Media GmbH

Common questions

Call tracking software, the questions buyers ask

What local businesses, agencies and lead gen teams want to know before their first tracking number goes live.

What does call tracking software do, and how does dynamic number insertion work?

Call tracking software gives each marketing source its own phone number and records where every call came from. On your website, one snippet shows each visitor a number from a pool and keeps it consistent for the visit, so a call to that number is matched to the visitor's session: the ad, the campaign, the keyword and the pages seen. Visitors never notice anything, they see a phone number and dial it.

How is LeadJourney different from CallRail, CallTrackingMetrics or WhatConverts?

Those are call tracking tools, and the call log lives in them. LeadJourney is marketing tracking software with call tracking inside it, so the call sits on the same journey as the ad click, the form fill and the CRM deal, in one campaign report, and goes back to the ad platforms through the same conversion feed as every other outcome. The WhatConverts comparison lays the differences out side by side.

Do I have to change my phone number or my phone system?

No. Tracking numbers forward to the phone you already answer, whether that is a mobile, the office line or a call centre, and your existing number keeps working as before. Numbers are provisioned in minutes, local or toll-free, with nothing to port and no new hardware.

Can it track calls from my Google Business Profile, flyers or radio?

Yes. Each offline source gets a fixed tracking number of its own, so calls from Maps and the Business Profile are counted separately from ads and organic search, and a flyer or a radio spot finally has a calls column. If you want, your original number stays on the profile as an additional number.

How are qualified calls separated from junk?

Every call is recorded and summarised by AI, which tags what happened: a new job, a booking or a quote request against a wrong number, spam, a vendor or an existing customer. You can correct a tag or refine the rules for your business. The result is a report where the qualified call count means potential jobs, not rings.

Do the calls go back to Google Ads and Meta as conversions?

Yes. A qualified call is sent to Google Ads and Meta through their conversion APIs with the click ID it was matched to, so the platforms optimise toward people who call and book rather than people who tap a call button. The optimise on revenue use case shows what changes in the bidding, and the offline conversions guide walks through the setup.

I already use CallRail. Do I have to switch?

No. CallRail connects to LeadJourney, and every tracked call comes through as a conversion matched to the campaign that produced it, so you keep your numbers and gain the journey, the campaign report and the conversion feed around them. The call tracking integrations page lists what connects natively and how any other call tracking tool posts its calls in by webhook or Zapier.

Is call recording allowed, and where is the data stored?

Recording rules differ by country, which is why recording is a toggle per number and a consent announcement can play before the call connects. Source, duration, missed calls and the campaign behind a call all work with recording off. LeadJourney is hosted in the EU, in Frankfurt, and a data processing agreement is part of every plan.

See it on your own phone line

Find out which ads make your phone ring, and which calls become jobs.

Book a demo and we provision your first tracking numbers live, and you hear your own calls attributed to their source.

Your workspace
Calls by sourceQualified by the AI summary, revenue from the CRM, last 30 days
ChannelCallsQualifiedRevenue
Google Ads16298€61.2k
Business Profile11864€38.9k
Meta Ads7129€17.4k
Print · fixed number5431€13.1k
Revenue from 405 calls€130.6k

Spam and wrong numbers filtered before anything reaches the ad platforms.