What is geo opportunity?
Geo opportunity puts each country's contribution to your profit next to its share of your ad investment. The signal is the mismatch: a market delivering a large slice of the margin on a small slice of the spend is under-invested, whatever its margin rate happens to be. It is a comparison, not a score — the table shows both sides and lets the gap speak.
Formula
margin share (country) = country margin ÷ total org margin
spend share (country) = country ad spend ÷ total geo ad spend
(paid-session share as proxy when geo spend is absent)
Worked example
France carries 22% of total contribution margin but receives 8% of geo-attributable ad spend; Germany carries 30% on 55% of spend. Neither number alone says much — France's margin rate might even be lower than Germany's. The pairing does: the next experimental budget increment probably earns more in France, where demand demonstrably exists and investment demonstrably doesn't.
How Saldo Metrics computes it
v_geo_opportunity builds one row per country, grouping every non-cancelled order
by the customer's country. Two populations, on purpose. Order count and net
revenue after discounts follow the net-sale rule: cancelled orders, orders
refunded in full, and refund-gap orders are excluded. Contribution margin and
cost coverage instead book every non-cancelled order, fully refunded ones
included — their shipping and marketplace fees were already spent and are not coming
back. Within that booked population, the order-grain rule still applies: an order
with any uncosted line is excluded from both the margin sum and the
margin-percent denominator, and the revenue it carried is reported separately as
uncosted, with a cost_coverage_pct per country saying how complete the margin
picture is. The investment side is measured two ways, kept side by side: real
spend_share from geo-attributed ad spend where the platforms provide it, and
paid_session_share — the country's share of pixel events carrying a paid UTM
medium (events, not deduplicated sessions, so a busy session counts several
times) — as the fallback proxy. The org's average margin percent sits in the
same row for context.
Why it matters
Ad platforms allocate budget where their auctions find cheap conversions, which is not necessarily where your margin lives. Countries differ in product mix, shipping cost and discount culture, so revenue-based geo reports mislead; this one is built on contribution margin. It is also the input behind the geographic-opportunity recommendations the engine generates.
Common mistakes
- Reading margin share without cost coverage. A country whose orders are mostly
uncosted shows an artificially small margin share; check
cost_coverage_pctbefore ranking it. - Treating the paid-session proxy as spend. It counts paid-tagged pixel events, so it weights countries by browsing activity, not euros; where real geo spend exists, prefer it.
- Scaling into a small market on shares alone. A country with 3 orders can show a striking margin share; the order count column is there to keep the base rate honest.
Where you see this in the app
The Geo Opportunity dashboard widget, and geographic-opportunity entries in the recommendations feed.