Data

Share of students achieving minimum reading proficiency by the end of primary education

See all data and research on:

What you should know about this indicator

  • This indicator measures the share of children or students who achieve minimum proficiency in reading or mathematics by the end of a given education level (primary or lower secondary).
  • Minimum proficiency in and is defined differently at each education level.
  • At the end of , minimum reading proficiency means students can identify key ideas in simple texts and connect them to their own experiences. In mathematics, it means demonstrating number sense and computation, basic measurement, interpreting simple graphs, spatial orientation, and number patterns.
  • At the end of , minimum reading proficiency means students can connect ideas across different types of texts, understand the author’s intent, and draw conclusions based on the text. In mathematics, it means applying computation skills, solving real-world problems, interpreting graphs and tables, and using algebraic representations.
  • There are two types of estimates: one for all children in the age group, and one for students who are enrolled in school.
  • Estimates for all children adjust for school completion and enrollment, offering a full population-level view — including those who dropped out or were never enrolled.
  • Estimates for students reflect outcomes only among those still in school at the end of the education cycle.
  • Data comes from international assessments such as TIMSS, PIRLS, or PISA, combined with completion and enrollment data from surveys or statistical models.

How is this data described by its producer?

Percentage of children at the end of primary education reaching at least a minimum proficiency level in reading. A minimum proficiency level (MPL) is the benchmark of basic knowledge in a domain (mathematics, reading, etc.) measured through learning assessments. The indicator is calculated as the number of children and/or young people at the relevant stage of education n in a given year t achieving or exceeding the pre-defined proficiency level in a given subject s, expressed as a percentage of the total number of children and/or young people at stage of education n, in year t, in any proficiency level in subject s. The higher the value of the indicator, the higher the proportion of children or young adults who have acquired the minimum level of meaningful competencies. Data are calculated by the UNESCO Institute for Statistics from sources that include the Programme for International Student Assessment (PISA), Programme for International Student Assessment for Development (PISA-D), Trends in International Mathematics and Science Study (TIMSS), Progress in International Reading Literacy Study (PIRLS), El Laboratorio Latino americano de Evaluación de la Calidad de la Educación (LLECE), Programme d’analyse des systèmes éducatifs de la confemen (PASEC), Southern and Eastern Africa Consortium for Monitoring Education Quality (SACMEQ), Pacific Islands Literacy and Numeracy Assessment (PILNA), national assessments data collected through the Catalogue of Learning Assessments (CLA) and/or available in national reports, and population-based assessments (Early Grade Reading Assessment (EGRA) and Early Grade Mathematics Assessment (EGMA), UNICEF Multiple Indicator Cluster Surveys (MICS), People’s Action for Learning (PAL) NETWORK: e.g. Annual Status of Education Report (ASER), UWEZO, etc.)). For more information, consult the UNESCO Institute for Statistics: http://uis.unesco.org/

Share of students achieving minimum reading proficiency by the end of primary education
Percentage of students at school age meeting minimum reading proficiency by the end of education. This data omits children who don't attend school.
Source
UNESCO Institute for Statistics (2025)with minor processing by Our World in Data
Last updated
May 1, 2025
Next expected update
May 2026
Date range
2000–2023
Unit
%

Sources and processing

UNESCO Institute for Statistics – UNESCO Institute for Statistics (UIS) - Education

The UNESCO Institute for Statistics (UIS) is the official and trusted source of internationally-comparable data on education, science, culture and communication. As the official statistical agency of UNESCO, the UIS produces a wide range of state-of-the-art databases to fuel the policies and investments needed to transform lives and propel the world towards its development goals. The UIS provides free access to data for all UNESCO countries and regional groupings from 1970 to the most recent year available.

Retrieved on
May 1, 2025
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
UNESCO Institute for Statistics (UIS), Education, https://uis.unesco.org/bdds, 2025

The UNESCO Institute for Statistics (UIS) is the official and trusted source of internationally-comparable data on education, science, culture and communication. As the official statistical agency of UNESCO, the UIS produces a wide range of state-of-the-art databases to fuel the policies and investments needed to transform lives and propel the world towards its development goals. The UIS provides free access to data for all UNESCO countries and regional groupings from 1970 to the most recent year available.

Retrieved on
May 1, 2025
Citation
This is the citation of the original data obtained from the source, prior to any processing or adaptation by Our World in Data. To cite data downloaded from this page, please use the suggested citation given in Reuse This Work below.
UNESCO Institute for Statistics (UIS), Education, https://uis.unesco.org/bdds, 2025

All data and visualizations on Our World in Data rely on data sourced from one or several original data providers. Preparing this original data involves several processing steps. Depending on the data, this can include standardizing country names and world region definitions, converting units, calculating derived indicators such as per capita measures, as well as adding or adapting metadata such as the name or the description given to an indicator.

At the link below you can find a detailed description of the structure of our data pipeline, including links to all the code used to prepare data across Our World in Data.

Read about our data pipeline

How to cite this page

To cite this page overall, including any descriptions, FAQs or explanations of the data authored by Our World in Data, please use the following citation:

“Data Page: Share of students achieving minimum reading proficiency by the end of primary education”, part of the following publication: Hannah Ritchie, Veronika Samborska, Esteban Ortiz-Ospina, and Max Roser (2023) - “Global Education”. Data adapted from UNESCO Institute for Statistics. Retrieved from https://archive.ourworldindata.org/20260304-094028/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.html [online resource] (archived on March 4, 2026).

How to cite this data

In-line citationIf you have limited space (e.g. in data visualizations), you can use this abbreviated in-line citation:

UNESCO Institute for Statistics (2025) – with minor processing by Our World in Data

Full citation

UNESCO Institute for Statistics (2025) – with minor processing by Our World in Data. “Share of students achieving minimum reading proficiency by the end of primary education” [dataset]. UNESCO Institute for Statistics, “UNESCO Institute for Statistics (UIS) - Education” [original data]. Retrieved April 1, 2026 from https://archive.ourworldindata.org/20260304-094028/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.html (archived on March 4, 2026).

Quick download

Download the data shown in this chart as a ZIP file containing a CSV file, metadata in JSON format, and a README. The CSV file can be opened in Excel, Google Sheets, and other data analysis tools.

Data API

Use these URLs to programmatically access this chart's data and configure your requests with the options below. Our documentation provides more information on how to use the API, and you can find a few code examples below.

Data URL (CSV format)
https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.csv?v=1&csvType=full&useColumnShortNames=false
Metadata URL (JSON format)
https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.metadata.json?v=1&csvType=full&useColumnShortNames=false

Code examples

Examples of how to load this data into different data analysis tools.

Excel / Google Sheets
=IMPORTDATA("https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.csv?v=1&csvType=full&useColumnShortNames=false")
Python with Pandas
import pandas as pd
import requests

# Fetch the data.
df = pd.read_csv("https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.csv?v=1&csvType=full&useColumnShortNames=false", storage_options = {'User-Agent': 'Our World In Data data fetch/1.0'})

# Fetch the metadata
metadata = requests.get("https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.metadata.json?v=1&csvType=full&useColumnShortNames=false").json()
R
library(jsonlite)

# Fetch the data
df <- read.csv("https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.csv?v=1&csvType=full&useColumnShortNames=false")

# Fetch the metadata
metadata <- fromJSON("https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.metadata.json?v=1&csvType=full&useColumnShortNames=false")
Stata
import delimited "https://ourworldindata.org/grapher/share-of-students-at-end-of-primary-education-achieving-minimum-reading-proficiency.csv?v=1&csvType=full&useColumnShortNames=false", encoding("utf-8") clear