CoolFace
Datasetpublic

CipherSenseAI/afri-fertility-results

afri-fertility: African Language Tokenization Results Measurement dataset for The African Language Tax — the first systematic audit of the subword tokenization penalty imposed on African languages by frontier large language models. Every row is one (language, tokenizer, corpus) triple, with fertility, English-relative premium, and confidence intervals computed from a parallel corpus using sum-then-divide aggregation. Dataset summary Property Value Rows… See the full description on the dataset page: https://huggingface.co/datasets/CipherSenseAI/afri-fertility-results.

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes20downloads
Dataset Card

afri-fertility: African Language Tokenization Results

Measurement dataset for [The African Language Tax](https://arxiv.org/abs/2606.24460) — the first systematic audit of the subword tokenization penalty imposed on African languages by frontier large language models.

Every row is one (language, tokenizer, corpus) triple, with fertility, English-relative premium, and confidence intervals computed from a parallel corpus using sum-then-divide aggregation.

Dataset summary

PropertyValue
Rows616
Languages22 (20 African + English + French baselines)
Tokenizers11
Corpora3 (FLORES-200+, SIB-200, MAFAND-MT)
File size~58 KB
FormatParquet
Tool`afri-fertility`
PaperarXiv 2606.24460

Key findings

  • Every African language carries a tokenization premium above English on every tokenizer — 209 FLORES-200+ pairs (19 languages × 11 tokenizers), zero exceptions
  • Premiums range from 1.29× (Swahili on BLOOM) to 8.92× (N'Ko on o200k_base)
  • Ethiopic-script languages (Amharic, Tigrinya) reach 6.8–9.3×; N'Ko reaches 8.9×
  • Best available tokenizer for African languages: Gemma 4 (mean 2.38× vs 3.31× for cl100k_base)
  • Premium is near-invariant across corpora (FLORES vs SIB-200: Pearson r = 0.9998)

Load the dataset

python
import pandas as pd
from datasets import load_dataset

# Via HuggingFace datasets
ds = load_dataset("CipherSenseAI/afri-fertility-results")
df = ds["train"].to_pandas()

# Or directly as parquet
df = pd.read_parquet("hf://datasets/CipherSenseAI/afri-fertility-results/data/results.parquet")

Column reference

ColumnTypeDescription
corpusstrSource corpus: flores, sib200, or mafand
domainstrText domain (where applicable)
languagestrLanguage display name
iso639_3strISO 639-3 code
scriptstrWriting script: Latin, Ethiopic, N'Ko
familystrLanguage family
tokenizerstrTokenizer identifier (e.g. openai/o200k_base)
vocab_sizeintTokenizer vocabulary size
inspectableboolWhether subword segmentation is accessible
n_sentencesintNumber of parallel sentences in the corpus slice
n_wordsintTotal word count (UAX-29 word boundaries)
n_tokensintTotal subword token count
n_charsintTotal character count (NFC)
n_bytesintTotal UTF-8 byte count
fertilityfloatn_tokens / n_words — subword tokens per word
premiumfloatfertility(L,T) / fertility(English,T) — English-relative multiplier
cptfloatCharacters per token
bptfloatBytes per token
fertility_ci_lowfloatBootstrap 95% CI lower bound for fertility
fertility_ci_highfloatBootstrap 95% CI upper bound for fertility
premium_ci_lowfloatBootstrap 95% CI lower bound for premium
premium_ci_highfloatBootstrap 95% CI upper bound for premium

Languages covered

LanguageISOScriptTier
YorubayorLatinCore
HausahauLatinCore
IgboiboLatinCore
WolofwolLatinCore
SwahiliswhLatinCore
AmharicamhEthiopicCore
ZuluzulLatinBreadth
XhosaxhoLatinBreadth
ShonasnaLatinBreadth
KinyarwandakinLatinBreadth
LugandalugLatinBreadth
Akan/TwiakaLatinBreadth
LingalalinLatinBreadth
OromogazLatinBreadth
Nigerian PidginpcmLatinBreadth
SesothosotLatinBreadth
BambarabamLatinBreadth
N'KonqoN'KoNon-Latin
TigrinyatirEthiopicNon-Latin
AfrikaansafrLatinControl
EnglishengLatinBaseline
FrenchfraLatinBaseline

Tokenizers measured

Tokenizer IDModel familyVocab size
openai/o200k_baseGPT-5 / o-series200k
openai/o200k_harmonygpt-oss open weights201k
openai/cl100k_baseGPT-4 (legacy)100k
meta/llama-3.1Llama 3.1128k
meta/llama-4Llama 4 Scout/Maverick~200k
google/gemma-4Gemma 4262k
mistral/tekkenMistral / Tekken131k
deepseek/v3DeepSeek V3128k
bigscience/bloomBLOOM251k
cohere/aya-expanseAya Expanse256k
qwen/qwen3Qwen 3152k

Reproduce

Results are fully reproducible using the open-source afri-fertility tool:

bash
pip install afri-fertility
afri-fertility reproduce   # runs offline reference suite, prints headline numbers

Full study replication (requires HuggingFace token for gated models):

bash
git clone https://github.com/CipherSenseAI/afri-fertility
cd afri-fertility
pip install -e ".[dev]"
afri-fertility run configs/study_main.yaml

Citation

bibtex
@article{somide2026africanlanguagetax,
  title   = {The African Language Tax: Quantifying the Cost, Latency, and Context
             Penalty of Tokenizing African Languages in Frontier LLMs},
  author  = {Somide, Olaoye Anthony},
  year    = {2026},
  journal = {arXiv preprint arXiv:2606.24460},
  url     = {https://arxiv.org/abs/2606.24460}
}

License

Data: Apache 2.0. Source corpora: FLORES-200+ (CC-BY-SA-4.0), SIB-200 (CC-BY-SA-4.0), MAFAND-MT (per-dataset Masakhane licences).