Use case — network & marketplace enrichment

Turn thin publisher records into a fully classified, decision-ready catalog

Your network already knows the domain. It rarely knows the site type, the real language, the traffic tier, or whether the page is still alive. We read each publisher against 120M+ classified domains and hand every record its missing fields — with a confidence score on each.

hundreds of thousands
of publisher records a single enrichment run can process (estimate)
12+
classification & proxy fields added per record
1
deduplicated row per canonical domain on delivery
The job to be done

A domain and a self-reported category is not a usable record

Marketplaces run on filters — advertisers browse by vertical, geo, size, and quality. When the underlying records are sparse or self-reported, those filters return noise, advertisers churn, and support fields the same questions by hand. Enrichment closes the gap.

Filters need real fields

"Show me German fitness publishers in the top traffic tier" only works if language, vertical, and a traffic proxy are actually populated — not left blank or guessed by the publisher.

Records rot silently

Publishers go dormant, pivot niche, or die. Without a freshness and alive check, your catalog quietly fills with records advertisers waste outreach on.

Self-reported tags drift

Publishers tag themselves generously. Independent classification replaces the self-serving label with what the site actually publishes.

How the pipeline enriches

From a bare domain list to enriched records — five steps

You send the domains you already hold; we return them enriched, deduplicated, and confidence-scored, in a schema that maps onto your existing fields.

1

Ingest & canonicalize

Your publisher list is normalized: mirrors, redirects, www/non-www, and country variants collapse to one canonical domain, so enrichment is never wasted on duplicates.

2

Match to the classified base

Each canonical domain is matched against the 120M+ classified-domain database — the source that already carries site-type, language, and category signals.

3

LLM read for the gaps

An LLM reads the live site to fill and verify the fields a static match cannot settle: real editorial focus, monetization signals, freshness, individual-vs-company operation.

4

Attach traffic proxies

We add reproducible traffic proxies — CrUX presence and a rank group — never invented visitor counts. Every advertiser sees the same auditable signal.

5

Score & return

Every field ships with a confidence score in a schema mapped to your columns. You import deltas or a full replace, whichever your platform prefers.

6

Refresh on a cadence

Records age. Optional quarterly or monthly refresh runs re-check freshness and alive status and re-classify pivots, delivered as the same schema.

The fields

What gets added to every record

Each field is extracted from what the site actually publishes and shipped with its own confidence score. Pick the subset your platform's filters need, or take them all.

Website type / format Vertical & sub-niche Detected language Geo focus CrUX presence (proxy) Rank group (proxy) Affiliate links present Display ads present Content freshness Alive status Individual vs company run Newsletter presence Active social presence Thin / AI-spun flag

Need a field that isn't here — "accepts sponsored posts", "runs a specific network's links", "has a media kit"? Custom fields are defined per engagement and scored the same way.

Before & after

One record, enriched

An illustrative marketplace record before and after an enrichment run. The domain is withheld and values are illustrative; your deliverable carries the real domain and every signal.

FieldBefore (your record)After enrichment
canonical_domainpublisher-x.example (+ 2 variants)publisher-x.example (deduped)
vertical"lifestyle" (self-reported)home & garden › indoor plants
languageblankde (0.97)
geo_focusblankDACH (0.88)
traffic_proxyblankCrUX present · rank group 3
monetizationunknownaffiliate links + display ads
freshnessunknownfresh — posts < 3 mo (0.91)
alive_statusunknownalive (0.99)
operatorunknownindividual / small team (0.82)

A note on confidentiality

The record shown above is illustrative and drawn from real screening output, so we follow standard confidentiality practice on public pages: domains are withheld and descriptions generalized. The published example is intentionally not traceable to any site — including through a web search — which protects the publisher without changing the underlying data. Your enrichment deliverable contains the actual domains with every field and confidence score, so everything can be verified directly. Start with a free pilot →

The deliverable

The enriched catalog, in your schema

A deduplicated CSV — one row per canonical domain, each field with a confidence score — that maps onto your existing columns for a clean import. Values below are illustrative.

canonical_domainverticallanguagegeotraffic_groupmonetizationfreshaliveconf
publisher-x.examplehome_gardendeDACH3affiliate+adsyesyes0.90
publisher-y.examplefitnessenUS2affiliateyesyes0.86
publisher-z.examplefinancefrFR4ads_onlynoyes0.71
publisher-w.exampletravelenUK5nonenono0.64
Traffic proxies only: the traffic_group column is a reproducible rank grouping derived from CrUX presence and public rank signals — never an invented visitor number. Every advertiser browsing your marketplace sees the same auditable basis.
The measured basis

Classification proven at scale

The same classification engine that enriches your records screened an entire vertical for a large-scale production run on our own classification platform — the reference for how it behaves across millions of domains.

0
classified domains as the base
0
travel domains identified in the reference run
0
domains classified in one run
0
precision on a reviewed sample
120M+
classified base
1.73M
vertical matched
1.2M
classified
~96%
precision confirmed

Reference: a large-scale production run on our own classification platform. Your enrichment run is scoped to the records you send.

Questions

Network & marketplace enrichment — FAQ

Do I send you my publisher list, or do you supply the domains?
Either. For enrichment you send the domains you already hold and we return them classified and scored. If you also want net-new publishers, the same pipeline discovers them across the full web — enrichment and discovery run on the same engine.
How do you report traffic without inventing numbers?
We attach reproducible proxies only: whether the domain appears in the Chrome UX Report and which public rank group it falls into. There are no modeled or estimated visitor counts, because those would not be auditable across your advertiser base. The proxy is the same for everyone who queries it.
Will the schema fit my existing database?
Yes. We map the enrichment fields onto your column names and value conventions during setup, and deliver a deduplicated CSV keyed on canonical domain. You can import a full replace or just the deltas from a refresh run.
How do you keep the catalog from going stale?
Optional refresh runs on a quarterly or monthly cadence re-check freshness and alive status, re-classify sites that pivoted niche, and flag records that went dark. You receive the deltas in the same schema so the update is a clean import.
Can I try it on a slice of my catalog first?
Yes — that is exactly what the free pilot is for. We enrich a sample of your records against your target fields so you can see the confidence scores and schema fit before scoping the full catalog.
What if a domain isn't in your classified base?
If a canonical domain is not already in the 120M+ classified base, the LLM reads the live site directly to populate its fields, then it is added to the base for future runs. Either way you get a fully classified record, and each field still carries its own confidence score so you can see how strong the read was.

Make every publisher record filterable and current

The free pilot enriches a sample of your catalog against your target fields — classification, language, traffic proxies, freshness, and alive status, each confidence-scored — so you can see the fit before scoping the full run. No cost, no obligation.

Request a Free Pilot