Answer what a lead costs by channel without opening six dashboards

GA4, Search Console, Bing, Google Ads, Meta Ads and PostHog are collected daily into the same database as your leads and deals. Cost per lead by channel becomes a query.

An admin approves every new account by hand. Nothing is created until then. We reply by email; no newsletter, no sequence.

  • Six collectors, read-only
  • Same database as the pipeline
  • No spend changes, ever
app.salescrew.io/marketing
Marketing: ad spend beside the leads it bought

The short answer

  • SalesCrew collects GA4, Google Search Console, Bing, Google Ads, Meta Ads and PostHog data daily into the same Postgres project that holds your contacts, leads and deals.
  • Because spend and pipeline are in one database, cost per lead and cost per deal by channel are a query rather than a spreadsheet someone rebuilds every Monday.
  • The collectors are read-only by design: SalesCrew never changes a bid, a budget or a campaign, and no agent mode exists that would let it.

What it does

Six collectors run on a daily schedule and write into marketing tables in your instance. Google Analytics 4 and PostHog give you sessions and behaviour. Search Console and Bing give you the query and page data behind organic traffic. Google Ads and Meta Ads give you spend, clicks and conversions. None of them are a live embed of somebody else's dashboard: the rows land in your database, so you can join them to a deal.

The Marketing page renders that in three views. The explorer is a drill-down over the collected data, shaped like a search console report: pick a dimension, filter, and see the trend. The niche scoreboard compares each segment of your business against a target you set, so a monthly review reads as a list of what is above and below the line rather than a wall of charts. Channel economics puts the spend beside the leads and deals that came from it, and the KPI scorecard rolls it up. Everything is exportable.

What it does not do is manage ads. There is no budget field, no bid editor and no pause button pointing at an ad account. That is the human-only class in the policy table: spend and anything outside the CRM never move on their own, and there is no mode that changes it. Read-only collection plus your pipeline is the useful half; the risky half stays in the ad platform where a person can be held responsible for it.

The MCP twins make the whole module answerable in a chat window. marketing_kpis returns the scorecard, marketing_timeseries the trend, marketing_breakdown the split by dimension, marketing_pages the page-level view, marketing_query_moves the queries that shifted, marketing_paid_organic the paid-versus-organic picture, and marketing_niche_scoreboard the scoreboard with its targets, which you set with marketing_niche_targets_set. marketing_freshness tells you how current each collector is before you trust an answer, and channel_economics ties spend to pipeline.

Check freshness before you act on a number

Search Console data lags roughly two days behind, and ad platforms restate conversions after the fact. Call marketing_freshness, or read the freshness line on the page, before you make a decision on yesterday's figure. A number that has not finished settling is worse than no number.

How you get to a working scoreboard

Same four beats as every module. The only thing that ever runs unattended here is collection.

  1. 1

    Connect

    Authorise the collectors you use — GA4, Search Console, Bing, Google Ads, Meta Ads, PostHog. Credentials go into the secrets vault.

  2. 2

    Configure

    Set a target per segment for the scoreboard, and map your channels so leads and deals carry the source they came from.

  3. 3

    Run in review

    Let a week of collection land, then check freshness and reconcile one channel against its native dashboard before you trust the join.

  4. 4

    Move to auto

    Collection runs daily on its own. Reading and reporting can go to an agent; changing spend stays human-only and always will.

In which tier

TierPriceWhat you get on marketing
Core$299/moNot included. Leads and deals still carry their source, so channel reporting from CRM data works.
Local$499/moNot included. Ships with the local-services pack — on the roadmap.
Outbound$699/moNot included.
Agency$1,200/moThe full marketing module: all six collectors, the explorer, the niche scoreboard, channel economics, KPI scorecard and exports.

Unlimited seats on every tier. A cost-per-lead tile and hosted-forms attribution are on the roadmap.

Questions

Is this going to touch my ad accounts?
No. The collectors read and nothing else. Spend is the human-only class in the policy table, so no agent, mode or guardrail setting can change a budget, a bid or a campaign state. Ad management stays in the ad platform.
How is this different from looking at GA4?
GA4 knows about sessions. It does not know which of those sessions became a deal worth money in your pipeline, because your pipeline is somewhere else. Here both sets of rows are in the same database, so the join exists.
Which sources are collected?
GA4, Google Search Console, Bing, Google Ads, Meta Ads and PostHog, on a daily schedule. Each has a freshness stamp so you know how current an answer is before you act on it.
Can I export it?
Yes, from the page, through the marketing_ MCP tools, and as a full database dump. The tables are in your own Postgres project, so direct SQL is available to you as well.
Which tier includes this?
Agency, at $1,200 a month. The module is the piece agencies report to clients with, which is why it sits with the marketplace module and the data sources.
Does it attribute a deal to a keyword?
It attributes to a channel and to a page, and leads carry their source from the form or booking that created them. Keyword-level attribution depends on what Search Console and the ad platforms hand over, which is less than people expect.

Put spend and pipeline in one place

Connect the collectors, set a target per segment, and ask what a lead cost last month.

An admin approves every new account by hand. Nothing is created until then. We reply by email; no newsletter, no sequence.