Category taxonomies

Category taxonomies tell the receiver which IAB Tech Lab vocabulary a set of category IDs comes from: content, ad product or audience, and which version. OpenRTB 2.6 sends the value in a cattax field on each object that carries categories, plus Content.gtax for genres. Every cattax defaults to 1, the deprecated Content Category Taxonomy 1.0, so the field matters most when it is missing.

List: Category Taxonomies10 valuesUsed by app.cattax, seatbid.bid.cattax, cattax, app.content.cattax, app.content.gtax, app.content.producer.cattax, app.publisher.cattax, site.cattax

Values

ValueNameWhat it means
1IAB Tech Lab Content Category Taxonomy 1.0The original IAB content categories with codes like IAB1-1; deprecated, but still the default when cattax is omitted.
2IAB Tech Lab Content Category Taxonomy 2.0Content Taxonomy 2.0, the first version with numeric IDs; deprecated in favor of later releases.
3IAB Tech Lab Ad Product Taxonomy 1.0Categories for the product or service an ad promotes, used for ad blocking and creative labeling.
4IAB Tech Lab Audience Taxonomy 1.1Audience Taxonomy 1.1, which describes people (demographics, interests, purchase intent) rather than content or ads.
5IAB Tech Lab Content Taxonomy 2.1Content Taxonomy 2.1, a 2.x revision suitable for content classification.
6IAB Tech Lab Content Taxonomy 2.2Content Taxonomy 2.2, the newest 2.x version in this list.
7IAB Tech Lab Content Taxonomy 3.0Content Taxonomy 3.0, the first release of the 3.x generation.
8IAB Tech Lab Ad Product Taxonomy 2.0Ad Product Taxonomy 2.0, the newer of the two ad product versions in this list.
9IAB Tech Lab Content Taxonomy 3.1Content Taxonomy 3.1, also the default taxonomy for Content.genres when Content.gtax is absent.
500+Vendor-specific codesVendor-specific taxonomies, such as an exchange's own category codes, agreed between the parties.

Fields that use this list

How to use it

Each object that carries categories has its own cattax, and it describes only the category arrays in that object. BidRequest.cattax covers BidRequest.bcat and BidRequest.acat. Site.cattax and App.cattax cover their cat, sectioncat and pagecat. Publisher.cattax, Content.cattax and Producer.cattax cover their own cat, and Bid.cattax covers Bid.cat. Nothing is inherited from a parent object, so a site and its content can use different taxonomies in the same request. Content.gtax works the same way for Content.genres but defaults to 9. Use content taxonomies for what a page or stream is about and ad product taxonomies for what an ad sells.

Common mistakes

  • Sending Content Taxonomy 2.x or 3.x IDs with no cattax. The default is 1, so the buyer looks the IDs up in the 1.0 code list and finds nothing, or the wrong category.
  • Setting BidRequest.cattax and expecting it to describe site.cat. The request-level field covers only bcat and acat.
  • Mixing taxonomies in one array, such as "IAB25" next to a numeric ID. One cattax describes the whole array, so split the data or convert it.
  • Using the audience taxonomy (4) for content or ad categories. The IDs are not interchangeable.
  • Sending a value below 500 that the list does not define. rtblint reports it as openrtb.value.invalid.

Validation

On OpenRTB 2.6 snapshots, RTBlint reports a value outside this list as openrtb.value.invalid. Paste a request into the tester to check the values you send.

Related lists

All lists are on the enumerated lists index.