IAB Taxonomy Mapping Guide: Map Your Own Categories to IAB v2 and v3
Most companies have their own category list: for content, products, customers or sites. To exchange data with ad platforms and partners, those categories need a clean link to the IAB Content Taxonomy. This guide shows how to build that crosswalk, check it with real domain data and keep it healthy as both taxonomies evolve over the years.
When you need an IAB mapping
You rarely map for its own sake. One of these situations usually triggers the project, and knowing which one helps you decide how deep and how precise the mapping must be.
Partner exchange
Sending or receiving segments with platforms that speak IAB.
Merging sources
Combining data from vendors that each use their own labels.
Standard reports
Reporting results in categories clients already recognise.
Version upgrade
Moving segments built on version 2 to version 3.
Product launch
Offering IAB-based targeting in your own platform.
If you need the structure of the taxonomy itself first, start with IAB Content Taxonomy 3.1 and the IAB categories list. This page focuses on linking your own list to it.
Six kinds of mapping relationship
The most useful thing you can add to a mapping table is a column that says what kind of match each row is. It makes the table honest and tells downstream users how much to trust it, row by row, without reading every definition.
| Relationship | Meaning | Example | How to use it |
|---|---|---|---|
| Exact | Same scope on both sides | "Job boards" to Careers > Job Search | Safe for targeting and reporting |
| Broader | The IAB node covers more than your category | "Sourdough baking" to Food & Drink > Cooking | Fine for reporting, loose for targeting |
| Narrower | The IAB node covers only part of your category | "Entertainment" to Entertainment > Music | Map to several nodes or move up a tier |
| One-to-many | Your category spans several IAB branches | "Property finance" to Real Estate and Personal Finance | Keep all targets, mark one as primary |
| Partial | Overlap, but neither contains the other | "Outdoor lifestyle" to Travel and Sports | Use with care; document the gap |
| No match | Nothing in IAB fits | Internal business labels such as "key account" | Leave unmapped; never force a match |
Step by step: building the crosswalk
Inventory your categories
Export every label with its definition, parent, owner and how many items use it. Labels nobody uses can wait.
Write one-line definitions
If a category has no definition, write one. Mapping a name without a meaning leads to guesswork.
Pick the target versions
Decide whether you need version 2, version 3 or both, based on the partners who will read the output.
Map top-down
Match your parents to IAB tier 1 first, then work down. This stops children drifting into unrelated branches.
Record the relationship type
For every row, mark exact, broader, narrower, one-to-many, partial or no match.
Validate with real data
Check the mapping against domains or content you have already labeled, as described below.
Review the gaps
Look hard at partial and no-match rows. Some reveal categories you should split or merge internally.
Publish and assign an owner
Share the table in one place, with a named owner and a review date. Unowned mappings decay fast.
Who should take part
Taxonomy owner
Knows why each internal label exists and decides edge cases. Without this person, mapping becomes guesswork.
Ad operations or partner lead
Knows which IAB version and depth each partner actually reads, and where segments have failed before.
Data engineer
Builds the joins, keeps IDs consistent and runs the validation against labeled domains.
Worked examples: in-house labels to IAB v2 and v3
The IAB paths below are taken from how real, well-known domains are categorized in our data, which makes them a practical anchor for your own mapping.
| Your label (example) | IAB v2 path | IAB v3 path | Anchor domain |
|---|---|---|---|
| Developer tools | Technology & Computing > Computing > Programming Languages | Technology & Computing > Computing > Programming Languages | github.com |
| Business software | Technology & Computing > Computing > Computer Software and Applications | Same path in v3 | salesforce.com |
| Payments and wallets | Personal Finance > Consumer Banking | Personal Finance > Consumer Banking | paypal.com |
| Hotel booking | Travel > Travel Type > Hotels and Motels | Travel > Travel Type > Hotels and Motels | booking.com |
| E-learning | Education > Online Education | Education > Online Education | coursera.org |
| Recipes | Food & Drink > Cooking | Food & Drink > Cooking | allrecipes.com |
| Job search | Careers > Job Search | Careers > Job Search | indeed.com |
| Music streaming | Music and Audio | Entertainment > Music | spotify.com |
| General news | News and Politics | News | nytimes.com |
| Home buying | Real Estate | Real Estate > Real Estate Buying and Selling | zillow.com |
| Space and astronomy | Varies by site | Science > Space and Astronomy | nasa.gov |
Check any anchor of your own with the domain checker, which shows both IAB versions side by side.
Where v2 and v3 differ in practice
Mapping to both versions is mostly the same work twice, but not entirely. Our data shows where the differences concentrate, which tells you which rows deserve a second look when you add the version 3 column.
| Tier 1 in v2 | Where domains land in v3 | Mapping tip |
|---|---|---|
| News and Politics | News, or Politics | Split your news labels: general news vs political content |
| Music and Audio | Entertainment, often > Music | Map music labels one tier deeper in v3 |
| Movies; Television | Entertainment | Keep film and TV distinctions at tier 2 |
| Events and Attractions | Attractions, or Events | Decide whether your label is about places or happenings |
| Adult | Sensitive Topics | Handle together with your brand safety rules |
For the full story of the version change, see IAB Content Taxonomy 3.0 vs 3.1, and for how content and product taxonomies differ, content taxonomy vs ad product taxonomy.
Choosing the right tier depth
Mapping deeper is not always better. Map as deep as your own category is specific, and pick the tier that matches how the output will be used. A deep mapping on a broad label creates false precision and shrinks reach for no gain.
Tier 1
Executive reporting and broad suitability rules. Stable and easy to compare across partners.
Tier 2
Media planning and most contextual segments. The usual sweet spot for advertisers.
Tier 3
Precise targeting for specialist products, such as programming languages or hotels.
Tier 4
Very narrow niches. Use only where your label is just as narrow, or reach will collapse.
Coverage note: in our full database, nearly every domain has a tier 1 IAB category, about half reach tier 3, and a smaller share reach tier 4. Deep tiers exist where the site is specific enough to justify them.
Validating the mapping with domain data
A mapping written at a desk is a hypothesis. The quickest test is to take items you have already labeled, look up their IAB categories, and see where they land. Fifty to a hundred domains per internal category is usually enough to see the pattern clearly.
| Personal Finance | Real Estate | Business and Finance | Other | |
|---|---|---|---|---|
| Your "Mortgages" | High | Medium | Low | Low |
| Your "Property listings" | Low | High | Low | Low |
| Your "Fintech" | Medium | Low | Medium | Medium |
Illustrative pattern, not measured values.
One dominant column
Most domains land in one IAB node. Your mapping is likely right. "Mortgages" above fits this pattern.
Two strong columns
A one-to-many relationship. Keep both targets, or split your category in two.
Spread everywhere
Your category is too broad or poorly defined. "Fintech" above needs a sharper definition before mapping.
For larger tests, a labeled extract helps; see the website classification dataset and dual taxonomy categorization.
Mapping other common taxonomies to IAB
The internal list you start from shapes the work far more than the target version does. These are the source taxonomies we see most often, with the typical pitfalls of each.
| Source taxonomy | Typical shape | Main pitfall | Approach |
|---|---|---|---|
| CMS content tags | Hundreds of free-form tags, many near-duplicates | Tags describe articles, not whole sites | Group tags into topics first, then map the topics |
| Product catalogue categories | Deep trees of product types | Products are not content; many have no IAB subject node | Map to the subject a shopper would read about, or consider the ad product taxonomy |
| Industry codes | Company activity codes | A company's industry and its site's subject can differ | Map via the site's category, and keep the code separately |
| App store categories | A few dozen broad groups | Very broad, such as "Lifestyle" | Map to tier 1 only, then refine with app content |
| Web filtering categories | Policy-oriented groups such as Gambling or VPN | Built for blocking decisions, not for subject | Keep both on each domain instead of mapping one into the other |
| Legacy vendor segments | Named audiences with unclear definitions | No written scope | Rebuild definitions from the domains in each segment |
Web filtering labels and IAB nodes side by side
Because our data carries both systems on every domain, you can see how they relate without building a crosswalk at all. A few typical pairings:
| Web filtering label | Common IAB v3 tier 1 | Note |
|---|---|---|
| Job Search/Careers | Careers | Close match in both directions |
| Online Banking; Financial Services | Personal Finance; Business and Finance | Consumer vs business finance splits by IAB branch |
| Streaming Media; Podcasts | Entertainment | IAB adds the subject of what is streamed |
| Developer Tools / Code Hosting | Technology & Computing | IAB tier 3 can add programming detail |
| Adult | Sensitive Topics | Treat as a safety signal in both systems |
A realistic timeline for a mapping project
For an internal taxonomy of a few dozen to a few hundred labels, two to three weeks of part-time work is typical. Larger trees take longer mainly because of review, not mapping.
Days 1 to 3: inventory
Export labels, usage counts and definitions. Agree which labels are in scope and which versions you need.
Days 4 to 7: first draft
Map top-down, mark relationship types and flag every partial or no-match row for discussion.
Days 8 to 11: validate
Look up IAB categories for labeled domains, build the comparison matrix and fix rows that do not hold up.
Days 12 to 15: review and publish
Walk through gaps with the teams that use the labels, assign an owner and share the final table.
Columns for a mapping table that lasts
| Column | Content | Why it matters |
|---|---|---|
| Your category ID and name | Stable internal key plus the display name | Joins survive renames |
| Definition | One sentence on scope | Lets anyone check the mapping later |
| IAB v2 ID and path | Unique ID plus full path | Partners on the older version |
| IAB v3 ID and path | Unique ID plus full path | Current version |
| Relationship type | Exact, broader, narrower, one-to-many, partial, none | Tells users how far to trust the row |
| Primary flag | Yes or no, for one-to-many rows | Gives systems a single answer when needed |
| Owner and review date | Name and next review | Keeps the table current |
| Notes | Edge cases and examples | Saves the next person hours |
Join on IDs, display names: some names repeat in different branches, and names can match across versions while IDs differ. IDs keep joins exact.
Keeping the mapping healthy
Review on a schedule
Twice a year, and whenever IAB releases a new version or your taxonomy changes.
Keep a test set
A few hundred labeled domains you re-check after every edit, so regressions show up at once.
Limit who edits
One owner approves edits. Many hands without review produce silent drift.
Watch partner feedback
If a partner reports odd reach in a segment, the mapping is a likely suspect.
Retire carefully
When you retire an internal category, point its rows to the new one instead of deleting them.
Share widely
Sales, product and data teams should use the same table, not private copies.
Common mapping mistakes
- Forcing every internal label to an IAB node, even with no real match
- Mapping by similar names without reading the definitions
- Mapping to tier 4 for broad labels and losing most reach
- Keeping only version 3 when key partners still read version 2
- Treating Sensitive Topics as an ordinary subject branch
- Joining on names instead of IDs
- Never testing the mapping against real labeled data
- No owner, so nobody notices when it breaks
IAB taxonomy mapping: frequently asked questions
What is IAB taxonomy mapping?
Building a table that links each category in your taxonomy to the closest IAB node or nodes, so your data can move between partners and platforms.
Should I map to IAB version 2 or version 3?
Map to both if partners differ. Version 3 is current, but many platforms still use version 2 IDs.
What if one of my categories matches several IAB categories?
Record a one-to-many mapping, keep all targets and mark one as primary with a clear rule.
How deep should the mapping go?
As deep as your own category is specific, and no deeper.
How do I check that a mapping is correct?
Look up the IAB categories of items you have already labeled and compare. A dominant target confirms the mapping.
Should I map by category name or ID?
Store both, but join on IDs, since names repeat and change across versions.
Can mapping be automated?
Partly. Name matching and text similarity give a useful first draft, especially for large trees. Every row still needs a human check, and the relationship type is something a person should decide, because it depends on how the output will be used.
Do I need to remap when IAB releases a new version?
Usually only in part. Minor releases change a limited number of nodes, so review the rows that touch changed branches. A move between major versions, such as from 2 to 3, needs a fuller review.
What should I do with categories that have no IAB match?
Leave them unmapped and say so in the table. Forcing a weak match makes partner segments wrong in ways that are hard to trace later. If many labels have no match, consider whether they describe audiences or business status rather than content.
Can domain data replace a mapping?
For site-level work, often yes. If every domain already carries IAB categories, you can filter by IAB directly and only need a mapping for your own reporting labels.
IAB v2 and v3 on every domain, ready to map
Over 120 million domains with IAB v2 and v3 tiers, 59 web filtering categories, personas and popularity in one file, plus a lookup API. Use it to validate your crosswalk and to enrich your own data.
See plans Browse the taxonomyIAB is a trademark of the Interactive Advertising Bureau. Domain names shown are examples of public websites; all trademarks belong to their owners. URL Categorization Database is not affiliated with, sponsored or endorsed by IAB or the owners of these sites.