RevOps + HubSpot 8 min read

How to track phone enquiries back to source in HubSpot

Give every channel its own tracking number, send each call and its channel into HubSpot, and cost per lead and cost per sale by channel become numbers you can trust.

AI & Digital Strategist

Give every channel its own phone number. The newspaper ad, the radio spot, the site signboard, the realestate.com.au listing, the Domain listing and your Google ads each get a different tracking number, and every number forwards to the same sales line. When a call comes in, the tracking platform knows which number was dialled, so it knows which ad made the phone ring.

Then connect that platform to HubSpot so every call creates or updates a contact with the channel written on it. Use a custom property such as "Enquiry channel" for that, because HubSpot's Original Traffic Source property only knows about web visits and will file most phone enquiries under Offline Sources.

Once each enquiry carries its channel, cost per lead is that channel's spend divided by its enquiries, and cost per sale is the same spend divided by closed won deals from those contacts. Add call recording, transcription and an AI summary on top if you want the conversation itself in HubSpot, and tell callers they are being recorded.

Why phone enquiries break your HubSpot reporting

A retirement living developer we spoke to this month put the problem plainly. Their buyers are over 55, most of them will see a print ad, a signboard or a listing and pick up the phone, and very few will fill in a web form. They want cost per click, cost per lead and cost per sale by channel: realestate.com.au, Domain, SEO, social and print.

Web forms are easy to track. HubSpot reads the visitor's cookie and the UTM tags on the link, and our guide to capturing UTM parameters in HubSpot forms covers that side. A phone call has no cookie and no UTM tag. Unless something records which number was dialled, the rep who answers types the caller in by hand, and HubSpot has no idea where they came from.

The result is a reporting dashboard where print, radio and signage look like they produce nothing, and a large pile of contacts sits under Offline Sources. We wrote up why HubSpot says Offline Sources and how to fix it separately, so this post sticks to getting calls attributed.

This HubSpot User Group session from our YouTube channel covers attribution reporting.

Cracking the code: mastering attribution reporting (HubSpot User Group '25), from our YouTube channel. Watch it on YouTube.

Static numbers or dynamic number insertion?

There are two ways to hand out tracking numbers, and most businesses need both.

  • Static numbers. One fixed number per channel, printed on the thing itself. The print ad says one number, the signboard says another, the radio script reads out a third. This is the only option for anything offline, because the number cannot change after it is printed.
  • Dynamic number insertion. A script on your website swaps the phone number shown on the page based on how the visitor arrived: Google ads, organic search, Facebook, a listing link. A pool of numbers lets the platform tie a call back to one visitor's session, including the page they were on and the keyword they searched.
ChannelNumber typeWhat you learn
Newspaper and magazine printStatic, one per publicationWhich publication made the phone ring
RadioStatic, one per stationWhich station, and the time of day calls arrive
Site signage and display suiteStatic, one per sign or locationWhich sign or location
realestate.com.au and Domain listingsStatic, one per portal, in the copy you controlWhich portal, compared on the same terms
Google ads (call assets)Google forwarding numberCalls from the ad itself, inside Google Ads
Your websiteDynamic number insertionSource, campaign, keyword and landing page per call

For Google ads, Google's own forwarding numbers are available in Australia and report calls from the ad inside Google Ads. Those numbers only work inside Google's call reporting, so they will not reach HubSpot by themselves. Use your tracking platform on the website and decide which system counts ad calls, so you do not count the same call twice.

On numbers: ACMA lists 1300 and 13 numbers as local rate numbers and 1800 and 180 numbers as freephone. If your brand already runs a 1300 or 1800 number, keep it as the main line and point the tracking numbers at it. For an older audience, a freephone 1800 number on print can be worth testing against a local number, and your tracking numbers will tell you which one gets more calls. Before you sign with a provider, ask whether it can issue Australian local, 1300 and 1800 numbers, and what each costs.

Do you know which ads make your phone ring?

We can check how your calls reach HubSpot today and what it would take to attribute every one.

Which call tracking tools integrate with HubSpot?

We checked each tool's HubSpot App Marketplace listing or its own website on 26 October 2026. Only tools we could confirm are listed.

ToolHubSpot connectionWhat reaches HubSpot
CallRailHubSpot certified app, built by CallRail, about 5,000 installsCalls, texts and forms on the contact timeline, new or matched contacts, marketing source, campaign, keyword, GCLID and landing page, call summaries, tags
CallTrackingMetrics (CTM)HubSpot certified app, built by CTM, 600+ installsCall activity, recordings and attribution on the contact, contact and deal properties through field mappings
DelaconThrough Zapier or Delacon's API, according to Delacon's own integrations pageWhatever you map in Zapier or build against the API
AircallHubSpot certified app, built by Aircall, 16,000 installsCalls and SMS logged against records, call and voicemail transcription

CallRail, CTM and Delacon are call tracking platforms first: they buy the numbers, run dynamic number insertion and attribute the call. Aircall is a phone system. NBH runs Aircall itself, and you can buy a separate Aircall number per campaign and tag calls by the number dialled, but it does not do dynamic number insertion on your website. If you already use Aircall, a common setup is a tracking platform for attribution that forwards calls to your Aircall line, which handles the conversation and the logging. Our post on syncing Aircall tags into HubSpot shows how to carry call outcomes across.

Whichever you pick, ask for a trial and test it against your own portal: place a call from each tracking number and check the contact, the call and the channel all appear in HubSpot the way you expect.

A separate number per channel is how HubSpot learns where a call came from
The path of a phone enquiry from a tracking number to the HubSpot contact and dealA print ad, a signboard or listing, and the website each show their own tracking number. The call tracking platform records which number was dialled and the channel it belongs to. It forwards the call to your sales line and creates or updates the HubSpot contact with Enquiry channel set if it is empty. A workflow copies Enquiry channel to the deal, so cost per sale reports by channel.Print adone per publicationSignboard or listingone per sign or portalWebsitenumber swaps per visitCall tracking platformrecords which numberwas dialled, and thechannel it belongs toYour sales lineevery tracking number forwards hereHubSpot contactEnquiry channel set if emptyWorkflow copies Enquiry channel to the deal: cost per sale by channel

Google ads call assets use Google's own forwarding numbers, which report inside Google Ads and do not reach HubSpot by themselves.

How to record the channel on the HubSpot contact

This is the step most setups skip, and it decides whether the reports work.

  • Create an "Enquiry channel" property on contacts, a dropdown with the same values you use for spend: Print, Radio, Signage, realestate.com.au, Domain, Google ads, SEO, Social, Referral. Add a second property, "Enquiry detail", for the publication, station or campaign.
  • Map the tracking platform into it. Each tracking number belongs to one channel, so map the platform's source or tracking number name onto Enquiry channel. Only set it when it is empty, so the first channel that brought someone in stays on the record.
  • Copy it to the deal. When a deal is created, a workflow copies Enquiry channel from the contact. Cost per sale is then a simple deal report grouped by channel.
  • Leave Original Traffic Source alone. HubSpot lets you edit it by hand, but its drill-down values are cleared when you do, and it only describes web visits. HubSpot itself recommends the Record Source property for tracking how records were created.

HubSpot does not know what you spent on a newspaper ad. Keep monthly spend per channel in a simple sheet or a custom object, using the same channel names, and divide. If you want to compare HubSpot's attribution models on the web side as well, our guide to HubSpot attribution reporting explains what each model tells you.

Two figures per channel, worked out from one spend sheet and one property
How cost per lead and cost per sale are worked out for each channelMonthly spend per channel is kept in a sheet or custom object. Spend divided by the contacts with that Enquiry channel gives cost per lead. Spend divided by closed won deals with that Enquiry channel gives cost per sale.Spend per channelsheet or custom objectEnquiries per channelcontacts by Enquiry channelClosed won dealsgrouped by Enquiry channelCost per leadspend divided by enquiriesCost per salespend divided by won deals

HubSpot does not know what you spent on print or radio, so the spend sits outside it under the same channel names.

Recording, transcribing and summarising calls in HubSpot

The developer above also wanted every call recorded, transcribed and actioned by AI inside HubSpot. That is now possible, with conditions.

  • HubSpot calling. HubSpot transcribes recordings automatically only for users with an assigned Sales Hub or Service Hub Professional or Enterprise seat. AI generated call summaries need a Professional or Enterprise account, with Breeze Assistant and call recording turned on. HubSpot only transcribes calls from a select group of third-party calling providers, so check yours is on the list.
  • Aircall. Aircall's pricing page lists call and voicemail transcription on its Essentials and Professional plans. Call summaries, key topics and call scoring come with Professional, or with an AI Assist add-on on Essentials.
  • CallRail. Its HubSpot listing says call summaries and caller sentiment are sent to the contact record.

Once the summary is on the call record, the AI can do the actioning: create a follow-up task, update the deal stage, or flag a caller who asked about a specific project. Start with a task for the rep and a summary they can read in ten seconds. Leave the AI updating properties by itself until you have read a few weeks of its summaries and trust them.

The Australian rules on recording calls

Recording consent varies by state. Each state and territory has its own listening or surveillance devices law. Queensland's Invasion of Privacy Act 1971, section 43, makes it an offence to record a private conversation with a listening device, with an exception where the person recording is a party to the conversation. Other states set different conditions, and we have not confirmed each Act for this post. If you take calls from more than one state, get advice, and make the recording announcement your default everywhere.

The Privacy Act notice. Australian Privacy Principle 5 requires you to tell people about the collection of their personal information. The OAIC's guidelines suggest that for phone collection, you can explain those matters at the start of the call with a script or an automated message, and point people to the full notice on your website. One recorded message at the top of every call ("calls are recorded for quality and training, and our privacy policy is at our website") covers the recording announcement and the collection notice together.

Put the same statement in your privacy policy, and say that call recordings and transcripts are stored in HubSpot and your call tracking platform.

Frequently asked questions

How do you track phone calls from print ads? Print a different tracking number in each publication and forward them all to your main line. The tracking platform records which number was dialled and sends the call, with its channel, to the HubSpot contact.

Does HubSpot have call tracking built in? HubSpot logs, records and transcribes calls. To give each channel its own number and swap numbers on your website, connect a call tracking tool such as CallRail or CallTrackingMetrics, both of which have certified HubSpot apps.

Why do phone enquiries show as Offline Sources in HubSpot? Original Traffic Source describes web visits, so a contact created by a call or typed in by a rep has no web source to record. Store the channel in a custom Enquiry channel property and report on that.

Can HubSpot transcribe and summarise calls? Yes. Automatic transcription needs a Sales Hub or Service Hub Professional or Enterprise seat, and AI call summaries need a Professional or Enterprise account with Breeze Assistant and call recording turned on.

Do I have to tell callers they are being recorded in Australia? The rules vary by state, so the safe default is to announce recording at the start of every call. The same message can carry your Privacy Act collection notice.

Sources


Want every phone enquiry in HubSpot with the channel that produced it? See our RevOps and HubSpot work, or talk to us.

Which of your channels is actually paying for itself?

In 15 minutes we will look at how calls reach HubSpot today and what to fix first.

Neighbourhood

Neighbourhood is a HubSpot Diamond Partner in Brisbane. We build AI systems and the revenue operations they run on, for businesses across Australia and New Zealand.