Routy

Paid Traffic ROI

The Paid Traffic ROI dashboard answers one question: is the traffic I buy making money? It puts what your ads cost next to what that traffic earned at each brand, per site, campaign, ad group and keyword.

No other tool can show this. Your ad platform knows the keyword and the cost, but not which brand the visitor went to or what they earned. The brand knows the earnings, but not which keyword bought the visitor. Routy sees both sides of every click and joins them.

It covers paid traffic only: visits that arrived from an ad. Organic and direct visits are on the other dashboards.

Watch this video on its own page →

Transcript

Paid Traffic ROI answers one question: is the traffic you buy making money? It puts what your ads cost next to what that traffic earned, at every brand you send it to. Your ad platform sees the cost, and the brand sees the earnings. Routy is the only place that sees both. Profit is earnings minus spend. ROAS is earnings divided by spend, so anything above one times means every dollar came back with more. Break-even CPC is the most a click can cost before it starts losing money. Compare it with what you actually pay per click, written just underneath. Earnings keep arriving for weeks after a click, especially revshare. So when your dates include clicks under thirty days old, they're marked as maturing: their profit will still grow.

The funnel follows your traffic from impression to first deposit, and shows where you lose people. This bar shows how exactly each dollar was tied to your ads. Exact click means the ad platform's own click list named the keyword, so it's the most precise.

Week by week, spend and earnings sit side by side, grouped by the week of the click. The faded weeks on the right are still maturing, so judge them later.

Each of your sites gets its own profit and ROAS. Click one to narrow the whole dashboard to it.

Every campaign gets a verdict: profitable, losing money, or no earnings at all. Click a campaign to see its ad groups, then an ad group to see its keywords. Here, this broad-match keyword spends far more than it earns. Its break-even CPC is well below what each click actually costs, so every click loses money.

This grid is the view no other tool can draw: for each keyword, what each brand earns per click you send it. On this keyword, most clicks go to Lucky Spin, but Royal Flush earns almost three times as much per click. The best brand in each row is green, and n is how many clicks the figure rests on.

And the brands table flags any brand that took plenty of your traffic and paid nothing back.

Haven't connected your ad account yet? You still see earnings per keyword, read from your landing URLs. Spend, profit and ROAS appear once you connect the ad account under Tracking, then Channels.

This dashboard is rolling out account by account, so if you don't see it yet, ask your account manager. On your team, seeing it needs reports access, and connecting an ad account needs Channels access.

From the menu you can export the table or change the currency. For the full guide, open the help panel on this page.

The Paid Traffic ROI dashboard: headline cards, funnel and how much is traced

Getting started

  1. Pick a Click date range. It opens on the last 30 days.
  2. Pick one or more Sites, or leave it on All sites for your whole paid program.
  3. Open Settings to choose the display Currency.

The web address updates as you filter, so you can copy it and send someone the exact view. Clear all resets the filters.

Account managers and admins also get an Affiliate filter. This report covers one affiliate at a time, so until an affiliate is picked here or in the header, the dashboard asks you to pick one.

What you need connected

  • Spend comes from your ad account, connected under Tracking → Channels (Google Ads today, Microsoft Ads next).
  • Earnings come from the conversions Routy already tracks for your brands.

Without an ad account you still see earnings per site, campaign and keyword whenever your ads' landing URLs carry the keyword. See When there is no ad spend.

Click date

Every number is dated by the day of the ad click, not the day the money arrived. That way a day's spend and the earnings from that day's clicks line up, and ROAS compares like with like.

Headline numbers

Card What it is
Spend What your ad account reports you paid
Earnings Your commission from that traffic (CPA plus revshare)
Profit Earnings minus spend
ROAS Earnings ÷ spend. 1.00× is break-even; 1.50× means every dollar spent earned $1.50
ROI (Earnings − spend) ÷ spend, as a percentage
FTDs First-time deposits from that traffic
Cost per FTD Spend ÷ FTDs
Break-even CPC Earnings ÷ ad clicks: the most a click can cost before it loses money. Compare it with what you pay per click, shown under it

A ratio shows — when it can't be calculated, for example ROAS with no spend. It never shows 0 in its place.

The cards don't compare with the previous period on purpose: older clicks have had more time to earn, so the earlier period would always look better.

Why recent numbers rise

Earnings keep arriving for weeks after a click. Typically about three-quarters arrive within a week and most within 30 days, and revshare keeps adding for months.

So when your date range includes clicks under 30 days old, the cards carry a Maturing badge, and the weekly chart draws those weeks faded. Their ROAS and profit are a floor, not a final result. A recent week that looks like it lost money is often just early.

For the same reason, re-opening an old date range can show higher earnings than last time. That's expected.

Where visitors drop off

The funnel from impressions to FTDs

The funnel follows your traffic from Impressions → Ad clicks → Landing visits → Brand clicks → Sign-ups → FTDs, with the share that made it from each step to the next.

  • Landing visits count each ad click once, on the site it reached first.
  • Brand clicks can be more than landing visits, because one visitor can click through to several brands. That step can read over 100%.
  • With no ad account connected, the funnel starts at landing visits.

How much is traced

Earnings split by how exactly they were tied to an ad

Each conversion is tied to your ads by the most exact method available, and this bar shows how much of your earnings (or FTDs) each method accounts for:

Step How it's matched
Exact click The ad platform's own click list names the campaign, ad group and keyword
Keyword from URL Your landing URL carried the keyword (your ads' tracking template)
Campaign only The URL carried only a campaign id
Paid, no campaign We know it came from an ad, but nothing ties it to a campaign. Microsoft Ads traffic shows here until Microsoft Ads can be connected

The bigger the Exact click share, the more closely these numbers will match your ad platform's. The ad platform keeps its click list for 90 days, so older clicks rely on the URL methods.

Spend vs earnings by click week

Spend and earnings side by side for each week of clicks. Hover a week for its ROAS. Faded weeks are still maturing.

Weekly spend and earnings, with recent weeks faded

Sites

Each site with its spend, earnings, profit and ROAS

Each site's paid traffic over the whole date range, with its profit, ROAS and cost per FTD. Click a site's name to narrow the whole dashboard to it; click it again to undo. A site you've picked also appears as a chip at the top.

No site is spend that couldn't be tied to a site because none of that campaign's clicks landed anywhere Routy tracks.

When one keyword sends visitors to several of your sites, its spend is shared between those sites in proportion to where its clicks landed. So spend per site is an estimate, while the total is exact.

Campaigns, ad groups and keywords

Campaigns with their spend, earnings and a verdict each

Switch between Campaign, Ad group and Keyword at the top of the table. Click a campaign to see its ad groups, and click an ad group to see its keywords. The rest of the dashboard follows: the funnel, the matrix and the brands all narrow to what you clicked. The chips at the top show where you are, and the × on each takes you back out.

The keyword level, with a keyword losing money and one with no earnings flagged

Each row carries a flag:

  • Profitable: earnings are at least what it cost.
  • Losing money: earnings are below spend.
  • No earnings: it had at least 20 ad clicks and earned nothing.
  • No spend: it earned, but there's no spend to set against it (usually no ad account connected).

Rows with too few clicks to judge get no flag.

Some rows are labelled Not attributed to a keyword or Not tied to a campaign. They're real spend or real visits that couldn't be placed lower: for example Performance Max spend, which Google doesn't report per keyword. They're shown so that each campaign's spend still matches your ad platform's total.

Export downloads the table at the level you're looking at, with every number and ratio.

Best brand per keyword

Earnings per brand click for each keyword, best brand per row in green

For your busiest keywords, this grid shows what each brand earned per click you sent it. Read across a row to see which brand to send that keyword's traffic to.

  • The best brand in each row is highlighted green.
  • n is the number of brand clicks behind the figure. Cells with fewer than 10 clicks are faded and can't be the best: a couple of lucky deposits isn't a pattern.
  • The ranking changes from keyword to keyword. That's the point: the brand that wins on one keyword often loses on another.

There's no ROAS per brand, because your ad platform charges per keyword, not per brand. Earnings per click is the fair comparison.

Brands

Brands with their clicks and earnings, one flagged as paying nothing

Every brand your paid traffic was sent to, with its clicks, sign-ups, FTDs, earnings and earnings per click. A Pays nothing flag marks brands that received at least 20 clicks and earned nothing.

When there is no ad spend

If you haven't connected your ad account, the dashboard shows No ad spend in this period. Earnings, the funnel from landing visits, keywords, sites and brands all still work, using the keyword in your landing URLs. Spend, profit, ROAS, ROI, cost per FTD and CPC show — until an ad account is connected.

To connect one, go to Tracking → Channels → Add.

The dashboard before an ad account is connected

Who can see it

The dashboard is rolling out account by account. If you don't see it, ask your account manager.

On your team, seeing it needs reports access, and connecting an ad account needs Channels access. Account admins have both. A team member without reports access sees this instead:

What a team member without reports access sees

Troubleshooting

The dashboard is empty. Check the date range, and that the traffic really is paid: a landing URL needs an ad click id (such as Google's gclid) or a campaign or ad group id. Visits with only a utm_term don't count, because email and social use it too.

My spend doesn't match Google Ads. Check that the date range is the same and that you're on All sites: spend per site is shared out, so a single site won't match an ad-platform total. Spend is reported in your ad account's timezone.

My earnings don't match my other reports. This dashboard dates earnings by click, and other reports usually date them by when the conversion arrived. It also counts only paid traffic.

A keyword I know exists isn't listed. Keywords appear once they have spend or traced visits in the date range.

I'm an account manager and see "Pick an affiliate". Pick one in the Affiliate filter or the header.

When to escalate to engineering

  • Total spend for a day differs from the ad platform's own total for that day by more than a cent, with All sites selected.
  • An error appears instead of the dashboard, for an affiliate that has paid traffic.
  • An attribution step appears in How much is traced under a raw name (like some_new_step) instead of a readable label.