Meta Ads · Google Ads · TikTok Ads

Geo & Device Analysis

Compares each country, region and device share of spend with its share of conversions, spots outliers and suggests bid or targeting adjustments as recommendations.

Connect RoASr

Recommendations only: the prompt never changes your ad accounts.

How to run it

Three steps, about a minute.

  1. Connect RoASr to Claude or ChatGPT

    Create an API key in RoASr and add the RoASr MCP server. Access is read-only: the prompt cannot change anything in your ad accounts.

  2. Paste the prompt

    Copy the text below into a new chat.

  3. Answer a few questions

    The prompt asks only what it cannot find itself, then reads your data and answers in a fixed format.

  4. Guides in the blog

What it asks

  • client
  • window — last 30 days
  • geo level — country

Data it reads

  • roasr_load_skill
  • roasr_limits
  • roasr_list_clients
  • roasr_list_accounts
  • roasr_metrics_breakdown

Method

  • roasr_frame
  • profit_math
Full prompt

The prompt

Before you start, ask me about each [input] below — one question at a time, with ready-made answers to pick from; skip whatever you can already tell.

Find which countries, regions and devices over- or under-deliver for [client: if not listed, call roasr_list_clients and let me pick], comparing each segment's share of spend with its share of conversions.

1. **Load the RoASr method.** Call roasr_load_skill('roasr_frame') and roasr_load_skill('profit_math') and follow them exactly.
2. **Frame the data.** Call roasr_limits, roasr_list_clients and roasr_list_accounts: plan, niche, margin, KPI, account currencies, sync status and dataSince. Window: [window: last 30 days (default) | last 14 days | last 7 days | custom]. If the window starts before dataSince, say so and narrow it. If an account has sync.state failed or never, name it and draw no conclusions from it. If currency.mixed is true, never sum money across accounts: do steps 3-5 per account with accountId. Note whether the client has a margin: it decides whether the answer may talk about profit.
3. **Pull the segments.** roasr_metrics_breakdown with dimension device, then with the geo level [geo level: country (default) | region | both country and region] (limit 100). A breakdown is a snapshot as of the asOf date inside the window, not a sum over the days: state asOf and take shares from the snapshot's own totals. If a dimension comes back empty for a platform, say it is not available there and move on.
4. **Compare shares.** For each segment: share of spend, share of conversions, CPA, ROAS, CTR. The key number is the efficiency index: conversion share divided by spend share. Under 0.7 is under-delivering, over 1.3 is over-delivering. Ignore segments with under 30 conversions in the snapshot or under 2% of spend: they are noise, group them into one "long tail" row.
5. **Look for outliers and traps.** One segment taking 60% or more of spend is concentration, not necessarily a problem; check whether it also holds the conversions. A country with a different price level or language can look bad or good for reasons that are not the ads. Mobile versus desktop gaps are common: tie a gap to the click-to-conversion step (a weak mobile page) before blaming the audience. Do not mix platforms in one table without a platform column.
6. **Profit, only with margin.** If the client has a margin, show profit per segment as revenue x margin - spend and the break-even ROAS (1 / margin). Without a margin, stay with ROAS and CPA and say once that profit is not shown.
7. **Turn it into advice.** For each outlier give a recommendation: exclude, reduce, test a separate campaign, or scale, with a rough size, for example "consider lowering bids on mobile by about 15%". These are suggestions for the owner, not instructions.

**Output:** open with one sentence: the single biggest geo or device imbalance, in numbers. Then a table: segment · type (country / region / device) · spend share · conversion share · efficiency index · CPA · ROAS · verdict. Then 3-8 actions grouped High / Medium / Nice-to-have, each with the expected effect and the assumption behind it.

**Output rules:**
- Recommendations only — never apply changes; RoASr tools are read-only.
- A breakdown is one snapshot date, not a period total: always show asOf.
- Profit only when the client has a margin; otherwise ROAS and CPA.
- Small segments are noise, not findings; say "no verdict" instead of guessing.
- Answer in the language of this prompt.