Why is there no cost-per-lead report in HubSpot?
HubSpot reports what ad campaigns produce. A cost per lead for every channel also needs the costs that never pass through an ad account.

The short answer
- HubSpot's ads tool attributes contacts and revenue to ad campaigns on connected networks such as Google, Meta, LinkedIn and Microsoft, per hubspot.com in September 2026, which covers paid channels only.
- Cost per lead by channel needs 3 inputs in one place: the cost of every channel, including outbound tools, data and rep time, the leads each channel produced, and a consistent source on each lead.
- HubSpot users have asked for this in the HubSpot Ideas forum, in a thread titled "Calculating ROI, CPL, cost per MQL's etc."
- SalesCrew keeps marketing spend, leads and deals in the same database, so cost per lead by channel is a query, and the channel economics view reports cost per meeting and cost per deal.
Ad reports only see ad spend
A cost per lead is simple math: what a channel cost, divided by the leads it produced. The hard part is getting both numbers into one place. HubSpot's ads tool reads spend from the ad networks you connect, and it shows which ads turned prospects into contacts. For paid search and paid social, that's most of what you need.
Your other channels don't send HubSpot an invoice. Cold email has sending tools, mailboxes, domains and list data. Marketplaces charge for bids. Events and content cost staff time. None of it sits in an ad account, so an ad report can't divide it by anything.
The 3 inputs a cost-per-lead report needs
What each input is, and where it usually lives in a split stack.
| Input | What it is | Where it usually lives |
|---|---|---|
| Channel cost | Ad spend plus tools, data, bids and rep time per channel | Ad networks, invoices and a spreadsheet |
| Leads per channel | Every new lead with the channel that produced it | The CRM, if the source field is filled |
| Lead source discipline | One source value per lead, set the same way every time | Form settings, import rules and rep habits |
| Outcome | Meetings and deals each channel produced | The CRM pipeline |
HubSpot ads behaviour checked on hubspot.com/products/marketing/ads, September 2026.
How to get cost per lead by channel today
If you stay on HubSpot, keep a monthly sheet of every non-ad cost by channel. Export new contacts by source for the same month, and divide. The result is only as good as your source field. Our cost-per-lead guide lists what to put in each channel's cost.
The lasting fix is to keep cost and leads together. That's the argument in cost per lead should be a query: when both live in one database, the number updates itself.
How SalesCrew puts cost and leads in one database
SalesCrew's marketing module reads GA4, Google Search Console, Bing, Google Ads, Meta Ads and PostHog through read-only collectors. That spend sits next to the leads, meetings and deals in your pipeline. So cost per lead by channel is a query, not a monthly project.
The channel economics view reports work items, meetings, deals, cost, cost per meeting and cost per deal for each channel. The cost-per-lead tile shows the figure on the marketing page, and the daily briefing includes channel economics. Your AI client can ask for it too, through the MCP server's channel_economics tool.
A blank source field breaks every CPL report
Questions
- Can HubSpot show cost per lead for Google and Meta ads?
- HubSpot's ads tool attributes contacts and revenue to campaigns on connected networks, including Google, Meta, LinkedIn and Microsoft, per hubspot.com in September 2026. For ad channels, that gives you the spend and the contacts side by side. Divide one by the other per campaign to get cost per lead.
- Why can't I see cost per lead for cold email in HubSpot?
- Cold email costs sit outside any ad account: sending tools, mailboxes, domains, data and rep time. An ad report only knows about spend it can read from an ad network. To get a cold email cost per lead, those costs have to be entered next to the leads they produced.
- What is a good cost per lead?
- There is no single good number, because a lead from a referral and a lead from a list are worth different amounts. Compare channels by cost per meeting or cost per deal once you have 30 days of data. That shows which channel's leads turn into revenue.
- Does SalesCrew calculate cost per lead by channel?
- Yes. SalesCrew keeps marketing spend, leads and deals in one database, so cost per lead by channel is a query. The channel economics view reports cost per meeting and cost per deal for every channel, and the cost-per-lead tile shows the figure on the marketing page.