adlibrary.com Logoadlibrary.com
Share
Competitive Research,  Advertising Strategy

Market Entry Ad Research: Look Before You Spend

Market entry ad research workflow: size ad activity by geo, find local competitors in the local language, decode format norms, build the entry brief.

Market entry ad research dashboard with world map and ad creative cards under a magnifying glass

Entering a new country with paid social is a bet, and most brands place it blind. Market entry ad research flips that. Before the first euro of spend leaves your account, the ad libraries already show you who dominates the market, which formats win attention, and which messages have been repeated into wallpaper. Every major platform publishes this data. Almost nobody entering a market reads it systematically.

TL;DR: Before launching ads in a new country, run a structured pass through the ad libraries: size ad activity in the target geo, discover local competitors by searching category keywords in the local language, decode format and messaging norms, then pressure-test everything against runtime and engagement signals. The output is an entry brief that tells your first campaign what to copy, what to avoid, and which gap to claim. Total cost: a few days and a handful of API credits, weighed against a six-figure media plan.

The asymmetry is absurd. A typical European market entry carries a first-year media budget of €200,000 or more. The research that de-risks it costs a week of one person's time. Yet teams routinely skip it, port their home-market creative, and spend the first quarter paying the platform to teach them what a free transparency database would have shown them in an afternoon.

This guide walks through the full market entry ad research workflow: the five steps, the geo and language filter mechanics, the API calls that automate it, and a DACH walkthrough you can copy for any region.

Why Ad Libraries Beat Market Reports for Entry Research

Market reports tell you the category grew 7% last year. They cannot tell you that the top three local competitors all run 15-second UGC videos with a price anchor in the first two seconds, or that nobody in the market has touched a sustainability angle. Ad libraries can, because they show the actual ads, live, updated daily.

Transparency regulation built this resource for you. The EU's Digital Services Act forced platforms to publish repositories of every ad served in Europe. Meta's Ad Library shows all active ads worldwide and keeps EU ads searchable for a year. The Google Ads Transparency Center covers Search, YouTube, and Display by advertiser and region. TikTok's Commercial Content Library does the same for EU TikTok ads, and the LinkedIn Ad Library covers B2B. New to these databases? Our primer on what an ad library API is explains the programmatic layer.

Three properties make ad libraries the right tool for entry research specifically:

  • They are current. A market report describes last year. An ad library describes this morning.
  • They are granular. You see individual creatives, not category aggregates. Format choices, hooks, offers, and landing pages are all inspectable per ad.
  • They reveal commitment. An ad that has run for 90 days is an ad that pays for itself. Runtime is the closest thing to a public profitability signal advertising has.

The catch: browsing them manually across four platforms and three languages does not scale. That is where geotargeting filters and the API layer come in, which we will get to.

The Market Entry Ad Research Workflow in Five Steps

The workflow runs in a fixed order because each step feeds the next. Skipping ahead produces a brief built on guesses.

  1. Size ad activity in the target geo. How many advertisers, how many ads, how concentrated?
  2. Discover local competitors by searching category keywords in the local language.
  3. Decode format norms. What media types, lengths, and aspect ratios does the market reward?
  4. Map messaging saturation. Which angles are everywhere, and which are absent?
  5. Pressure-test with performance signals. Runtime, engagement, and reach separate norms from noise.

The deliverable is an entry brief, covered below. Treat the steps as a pipeline: each one narrows the field, so the expensive analysis only runs on ads that earned it. This is the sequence behind our market entry research use case, and the research spine underneath guides like our Spain playbook and Brazil playbook.

Step 1: Size Ad Activity in the Target Geo

Before you study individual ads, measure the pond. Ad volume per geo is a proxy for competitive density, and competitive density is a proxy for auction pressure. A category with 4,000 active ads in Germany and 300 in Austria is telling you something about where attention is contested and what your CPM expectations should be. Run your planned budget through a CPM calculator against both assumptions and the difference is rarely trivial.

The manual version: open each ad library, search your category term, note the result counts per country filter. It works, but it is slow and the counts are not comparable across platforms.

The programmatic version is cleaner. Every search response from the AdLibrary API includes a total count alongside the results, so a handful of filtered searches builds a structural picture of the market:

python
import requests

H = {"Authorization": "Bearer adl_your_api_key"}
BASE = "https://adlibrary.com/api/search"

slices = {
    "all_ads":   {"keyword": "matratze", "appType": "3", "geo": ["DEU"]},
    "video":     {"keyword": "matratze", "appType": "3", "geo": ["DEU"], "adsType": ["2"]},
    "active_30d":{"keyword": "matratze", "appType": "3", "geo": ["DEU"], "daysBack": 30},
}

for name, body in slices.items():
    r = requests.post(BASE, headers=H, json=body).json()
    print(name, r["total"])

Each search costs one credit, so this snapshot costs three. Compare total across geo, format, and recency slices and you get the sizing answers that matter: How big is the active ad market? What share is video? How much launched recently? Repeat the slices per candidate country and you have a comparable density table no market report sells. The geo filters accept comma-separated country codes, so one query can cover a whole region.

One honest caveat: ad counts measure activity, not revenue. A market can be under-advertised and still saturated at retail. Sizing tells you what the paid-attention battlefield looks like, nothing more.

Step 2: Find the Local Competitors You Have Never Heard Of

Here is the mistake that wrecks most entry research: searching for the competitors you already know. Your home-market rivals may barely advertise in the target country, while three local brands you have never heard of own the category. The fix is to search by category keyword in the local language, not by brand name.

The local-language part is non-negotiable. Search "mattress" in Germany and you find international brands running lazy English creative. Search "Matratze" and you find the German market: the local players, the localized internationals, and the actual competitive set your ads will fight in the auction. The same applies everywhere. "Colchón" for Spain, "colchão" for Brazil, "matelas" for France.

Work the keyword search wide first: 8 to 12 category terms in the local language, scanning advertiser names rather than individual ads. You are building a roster, not a swipe file yet. Our guide on how to find competitor ads covers the keyword-expansion tactics in depth.

Once you have names, resolve each one to its platform identities. The AdLibrary API does this in a single free call that fans out across Meta, Google, and LinkedIn at once:

bash
curl -G "https://adlibrary.com/api/advertisers/search" \
  -H "Authorization: Bearer adl_your_api_key" \
  --data-urlencode "q=Emma Sleep" \
  --data-urlencode "country=DE"

The response returns a best_match with the brand's Meta page ID, Google advertiser ID, and LinkedIn company ID, plus a confidence score based on how many platforms agree it is the same advertiser. Resolving a 20-brand roster costs nothing. Save each advertiser once and you can later pull its recent ads across all platforms in one request, which becomes the engine of your post-launch monitoring.

By the end of this step you should have 10 to 20 named competitors, split into locals, localized internationals, and English-only tourists. That last group matters: a market full of non-localized international creative is a market where proper localization is itself the wedge.

Building a market entry ad research brief from sorted competitor ad creatives and a regional map

Step 3: Decode Format Norms Market by Market

Formats carry culture. The creative that prints money at home can read as foreign noise in the target market, and the fastest way to see the difference is to slice the market's ads by media type and watch what the long-runners share.

Filter mechanics first. The search endpoint takes adsType for format (1 image, 2 video, 3 carousel, 4 collection), adsFormat for aspect ratio (1:1, 16:9, 9:16, 4:5, 4:3), and videoDurationBegin / videoDurationEnd for video length in seconds. Combine them with a geo filter and you can ask precise questions: how many vertical videos under 30 seconds are running in this market right now? How does that compare to static image volume?

What you are looking for is the market's format fingerprint:

  • Video share. Brazil's feed is dominated by short UGC-style video, often creator-led and price-forward. Run the same slice on Germany and the video share drops while carousels and proof-heavy statics rise.
  • Length norms. If every long-running video in the market is under 20 seconds, your 60-second brand film is a liability, however good it is.
  • Aspect ratio. A market that has shifted hard to 9:16 placements punishes square crops with cheaper but worse inventory.
  • Platform mix. A category can be Meta-first in one country and split across TikTok and YouTube in another. Check the TikTok ad library view of the same keyword set before assuming Meta tells the whole story.

Norms are a starting grid, not a rulebook. Matching them buys you native-feeling ads on day one. Deviating is sometimes the play, but it should be a decision made knowingly in the brief, never an accident of porting home-market assets.

Step 4: Map Messaging Saturation in the Local Language

Format tells you how the market talks. Messaging tells you what it says, and more importantly, what it has stopped hearing.

The language filter is the precision tool here, and its mechanics trip people up, so let's be exact. geo filters where an ad is served. language filters what language the ad copy is written in. They are independent axes, and the gap between them is informative. Both accept comma-separated values, with language as ISO 639-1 codes:

bash
curl "https://adlibrary.com/api/search" \
  -H "Authorization: Bearer adl_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "keyword": "matelas",
    "appType": "3",
    "geo": ["CHE"],
    "language": ["fr"],
    "sortField": "-days",
    "daysBack": 90
  }'

That query asks: show me the longest-running French-language mattress ads served in Switzerland. Run it again with "language": ["de"] and "keyword": "matratze" and you are looking at a different competitive arena inside the same country. Multilingual markets like Switzerland and Belgium are really two or three ad markets wearing one flag, and brands that treat them as one waste budget on every mismatched impression.

With the slices in hand, catalog the messaging. Pull the top 50 long-runners per language slice and tag each ad's angle and hook: price, social proof, scientific authority, convenience, sustainability, status. Then count. The distribution is your saturation map. If 60% of long-running ads open on a discount hook, a discount-led entry buys you a knife fight in the most crowded aisle. If nobody runs a durability angle in a market that culturally rewards it (Germany, for instance), you may have found your wedge.

Saturated does not mean wrong. A message every competitor runs is usually a message that works. The brief must answer whether you can win share inside the saturated angle, or whether claiming the empty one is cheaper.

Step 5: Pressure-Test With Performance Signals

Everything so far describes what the market's ads look like. This step asks which of them actually work, because copying a loser with great production values is still copying a loser.

Three signals do the heavy lifting:

  • Runtime. days_count in every API result tells you how long an ad has been live. Advertisers kill losing creative within weeks, so a 90-day runtime is a survivor's badge. Sort any search by -days and the market's proven creative floats to the top. We use the same longevity logic to diagnose ad fatigue from competitor signals.
  • Heat and engagement. The API attaches a 0 to 1000 heat score capturing current momentum, plus like, share, and comment counts. Sorting by -heat_degree surfaces what is scaling right now rather than what survived since last year.
  • Reach. Impression data on Meta ads comes as bucketed ranges, not exact counts, so treat it as bands. A high band plus a long runtime means deliberate scaling, the strongest public buy-signal there is.

Spend deserves its own warning. The API returns an estimated spend per ad, and estimated is the operative word. No public source knows a competitor's true budget. Use spend estimates to rank advertisers against each other, sanity-check them with an ad spend estimator, and never quote them as fact in the brief.

The output of this step is a shortlist: the 10 to 15 creatives in the market with the strongest evidence behind them. These are the ads worth deep analysis, and the only ones worth spending enrichment credits on.

Automating Market Entry Ad Research With the API

Manual library browsing gets you through one market once. The moment entry research covers three candidate countries, four platforms, and two languages each, you want it scripted. This is where market entry ad research stops being a chore and becomes a pipeline.

Credit where due: Meta pioneered public ad transparency, and Meta's Ad Library API is free. It is also built for a different job. Programmatic access is scoped to political and social-issue ads in most of the world, with all-ad coverage only for EU and UK inventory over the last 12 months, behind an app review process, with access tokens that expire every 60 days. It covers Meta platforms only. For transparency research it is the canonical source. For multi-country commercial entry research you hit its walls fast, and we documented seven of them in our piece on Meta Ad Library API limitations.

The AdLibrary API is the paid power-user layer on top of that landscape: one adl_ key, no app review, and eleven platforms in one call (Facebook, Instagram, TikTok, YouTube, Google, LinkedIn, Twitter, Pinterest, Yahoo, Unity Ads, AdMob). Every result carries the research signals this workflow runs on: runtime, heat score, impressions, estimated spend, geo, and full creative URLs.

A market scan in one call:

bash
curl "https://adlibrary.com/api/search" \
  -H "Authorization: Bearer adl_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "keyword": "proteinpulver",
    "appType": "3",
    "geo": ["DEU", "AUT", "CHE"],
    "language": ["de"],
    "adsType": ["2"],
    "sortField": "-days",
    "daysBack": 90
  }'

The practical numbers: searches cost 1 credit each, advertiser resolution is free, and rate limits run 10 requests per minute and 10,000 per day per key, with a Retry-After header on 429 responses so your scripts can back off cleanly. A failed search refunds its credit. A full five-step entry scan of one market, sizing slices included, typically lands between 30 and 60 credits.

For the deep-analysis shortlist from Step 5, the /api/enrichment endpoint runs an AI teardown of a single ad: scene-by-scene transcript, hook and offer analysis, persuasion mechanics, and a 1:1 replication brief tuned to the detected format. One credit per analysis. Enrich only the evidence-backed winners and the creative team gets briefs grounded in ads the market already validated.

If you want working scaffolding instead of snippets, our Python ad library scripts cookbook has copy-paste research loops, the end-to-end monitoring guide covers scheduled pulls, and the n8n workflow collection does the same without code. Set the monitoring up before launch, because entry research has a shelf life and the market keeps moving after your first campaign goes live.

Building the Entry Brief

Research that stays in a spreadsheet dies there. The entry brief is the deliverable that turns five steps of digging into launch decisions, and it fits on roughly six pages:

  1. Market sizing table. Active ad totals per country, per format, per recency window. One table, comparable across candidate markets.
  2. Competitive map. The 10 to 20 resolved advertisers, grouped into locals, localized internationals, and non-localized tourists, each with platform IDs and activity levels.
  3. Format norms. The market's media-type mix, dominant lengths, and aspect ratios, with three or four reference creatives per format.
  4. Messaging saturation map. The angle distribution from Step 4, with explicit callouts of the crowded angles and the empty ones.
  5. Evidence shortlist. The 10 to 15 proven creatives with their runtime and reach evidence, plus enrichment teardowns and a creative brief derived from each.
  6. The wedge and the test plan. Your recommended entry angle, the formats to launch with, and a structured creative testing plan with budget split across two or three hypotheses. An ad budget planner pass against local CPM assumptions completes it.

Country playbooks are what this looks like fully worked: our Spain and Brazil playbooks are entry briefs of exactly this shape, expanded into operating guides, and they show how differently the same category reads across two markets. The brief is also the artifact that gets ongoing competitor ad research funded after launch, because it makes the research's value legible to whoever owns the budget.

Case Walkthrough: A DACH Entry in Five Days

To make this concrete, here is the workflow run for a fictional but realistic case: a UK sleep-supplement brand entering DACH. Numbers are from the example run, rounded.

Day 1: sizing. Search slices across DEU, AUT, and CHE with German category keywords. Germany shows roughly 6x Austria's active ad volume. Switzerland splits into a German-language majority and a French-language minority arena. Video share sits near 55% in Germany, higher than the brand's UK experience. Twelve credits spent.

Day 2: competitor discovery. Wide keyword pass with ten German terms ("schlaf gummibärchen", "melatonin alternative", "einschlafhilfe", and friends). The roster lands at 14 advertisers: 6 German locals the team had never heard of, 5 localized internationals, 3 running English-only creative.

Day 3: format and language slices. Long-runner analysis shows DACH's winning sleep ads skew to 15 to 30 second native-feeling video with subtitled German voiceover, plus carousels carrying clinical-proof claims. The 9:16 ratio dominates. The brand's UK-style influencer montage has no surviving analog in the market, a warning worth a page in the brief. Our Germany playbook and the broader German paid ads guide confirm the proof-driven pattern is general, not category-specific.

Day 4: signals and enrichment. Sorting by runtime and heat produces a shortlist of 12 creatives with 60-plus day runtimes and high reach bands. Enrichment teardowns on all 12 cost 12 credits and reveal the saturation picture: 7 of 12 winners lead with a science-authority hook, while none touch a next-day-performance angle. There is the wedge.

Day 5: the brief. Six pages, recommending entry through Germany only, 9:16 video plus proof carousels, a next-day-performance angle with German-native creators, and a three-cell test plan. Total API cost: 41 credits. The first campaign launched against a known battlefield instead of a guess.

Frequently Asked Questions

What is market entry ad research?

Market entry ad research is the practice of studying a target country's ad libraries before launching paid campaigns there. It uses platform transparency data to identify local competitors, dominant creative formats, saturated messaging angles, and proven creatives, producing an entry brief that grounds the first campaign in market evidence rather than home-market assumptions.

Which ad libraries should I check before entering a new market?

Four cover most categories: Meta's Ad Library for Facebook and Instagram, the Google Ads Transparency Center for Search and YouTube, TikTok's Commercial Content Library for EU TikTok ads, and the LinkedIn Ad Library for B2B. A multi-platform tool like AdLibrary searches all of them plus seven more networks through one interface or API key, which matters when a market's category activity is split across platforms.

How do language filters work in ad library research?

Geo and language are independent filters. Geo controls where an ad was served, while language matches the language of the ad copy itself, using ISO 639-1 codes like de, fr, or pt. Crossing them is the trick for multilingual markets: filtering Switzerland by French versus German reveals two separate competitive arenas inside one country, each with its own competitors and norms.

How much does it cost to automate market entry research with an API?

On AdLibrary, searches cost 1 credit each, advertiser resolution is free, and an AI creative teardown costs 1 credit per ad. A full five-step entry scan of one market typically uses 30 to 60 credits. API access is part of the Business plan at €329/mo with 1000+ monthly credits, enough to run entry research on multiple candidate markets and keep monitoring them after launch.

Can ad libraries tell me how much competitors spend in a new market?

Only approximately. Meta publishes exact spend for political ads, but commercial ad spend is never disclosed by platforms. Research APIs provide estimated spend per ad and bucketed impression ranges, which are reliable for ranking competitors against each other and sizing relative activity, but should never be quoted as actual budgets in an entry brief.

Look Before You Spend

Market entry ad research is not a luxury layer on top of a launch plan. It is the difference between buying your market education from the ad auction at full price and reading it for free from the transparency data the platforms are required to publish. Who dominates, what formats win, which messages are saturated, where the gap is: all of it is sitting in the libraries before you spend a cent.

The manual version of this workflow costs a week per market. The scripted version costs an afternoon to set up and then runs for every market you ever consider. If you are evaluating an expansion this year, that pipeline belongs in your stack: API access ships with the Business plan at €329/mo with 1000+ monthly credits, one key, eleven platforms, and free integration help to get your first market scan running. The ads are already telling you how to enter. Look before you spend.

Related Articles