In our quest to support publishers in their efforts to improve their data and sell more books, we routinely receive thoughtful questions from our subscribers and stakeholders about troubleshooting their data to maximize its efficacy. We recently received a question about audience ranges and how to “correctly” send this valuable data point for display in services such as our own CataList. BookNet Canada’s Bibliographic Manager (and master of all things ONIX), Tom Richardson, offers a brief and succinct primer on how to approach audience ranges in ONIX.
Recommendations for Audience Range
Ranges should be three, maybe four years tops, please — never 0 to 99 and such flimflammery.
Ranges should be provided for all children's and YA books, and virtually never for general trade.
How to structure the data for submission in ONIX
Things to note when assembling your data in the ONIX format:
ONIX Codelist 30 can accommodate a number of different types (age, grade, and reading age being the most used).
Age ranges are almost universally by year (unless babies are involved when months might make sense).
The values depend on the code used but are expected to be numbers with the codelist defining what's being measured.
ONIX Codelist 77 details US and Canadian (excluding Québec) school and college grades, and includes P and K for Preschool and Kindergarten and goes up to 17 College Graduate Student.
Ranges are supported four ways:
Between — for example: “10 to 14 years”
From — for example: “from 14 years”
To — for example: “up to 6 years”
Exact — for example: “grade 4”, as exact is mainly used for grades
Real example
Take a look at a children’s book marketed to the US market, as seen through a snippet of its ONIX data:
First composite:
<AudienceRange>
<AudienceRangeQualifier>11</AudienceRangeQualifier> ← From Codelist 30, refers to “US school grade range”
<AudienceRangePrecision>03</AudienceRangePrecision> ← Code for "FROM"
<AudienceRangeValue>P</AudienceRangeValue> ← From Codelist 77, refers to “Preschool”
<AudienceRangePrecision>04</AudienceRangePrecision> ← Code for "TO"
<AudienceRangeValue>K</AudienceRangeValue> ← From Code List 77, refers to “Kindergarten”
</AudienceRange>
Second composite:
<AudienceRange>
<AudienceRangeQualifier>17</AudienceRangeQualifier> ← From Codelist 30, refers to “Interest age, years”
<AudienceRangePrecision>03</AudienceRangePrecision> ← Code for "FROM"
<AudienceRangeValue>3</AudienceRangeValue> ← age 3
<AudienceRangePrecision>04</AudienceRangePrecision> ← Code for "TO"
<AudienceRangeValue>5</AudienceRangeValue> ← age 5
</AudienceRange>
Third composite:
<AudienceRange>
<AudienceRangeQualifier>18</AudienceRangeQualifier> ← From Codelist 30, refers to “Reading age, years”
<AudienceRangePrecision>03</AudienceRangePrecision> ← Code for "FROM"
<AudienceRangeValue>3</AudienceRangeValue> ← age 3
<AudienceRangePrecision>04</AudienceRangePrecision> ← Code for "TO"
<AudienceRangeValue>5</AudienceRangeValue> ← age 5
</AudienceRange>
Last words
“Audience Range is one of ONIX's weirder composites — it's very simple but developers always try to make sense out of it. You just read it. That's all...”
- Tom Richardson
Further reading
If you’d like to learn more about how to make Audience work for you, please refer to this section of BookNet’s help documentation.
What did BookNet read in 2024? We’re sharing some tidbits of data about our team’s reading habits this year.