Annualized Real Income Growth by Income Decile and Presidential Term

PNAD/PNADC
Renda
Governo
Dot plot of annualized real per-capita household income growth by income decile and presidential term.
Published

August 9, 2026

Overview

This figure measures annualized real income growth by income decile across Brazilian presidential terms, from 1995 to 2025. Expressing growth as a compound annual rate rather than a total change makes terms of very different lengths — a full four years versus, for the most recent term shown, only two — directly comparable.

Methodology

Each point is the annualized geometric real income growth rate (percent per year, January 2024 prices) for each income decile, from the first available year of a presidential term to the first available year of the next (blue = gain, orange = loss); horizontal lines are 95% confidence intervals. Itamar Franco’s term (1992–1995) is omitted, since the series used here starts in 1995. The Lula III panel covers two years of growth (2023–2025). The bottom-right panel covers the full 1995–2025 period. Confidence intervals are computed via the delta method for f(t1,t0) = ((t1/t0)^(1/n) − 1) × 100, where n is the number of years in the term: se = (100/n)·(t1/t0)^(1/n)·√((se₁/t1)² + (se₀/t0)²). The standard error of each endpoint is the weighted sample variance divided by the Kish effective sample size (design effect = 2).

How to Cite

If you use this figure or the pipeline behind it, please cite both the dissertation and this specific analysis. References follow APA 7th edition.

Dissertation (in preparation; the entry will be updated after the defense):

Mançano, T. (2026). Inequality in access to tertiary education in Brazil: Household incomes, reforming policies, and the politics of who gets in (1990s–2020s) [Unpublished master’s thesis]. University of São Paulo.

This figure and pipeline:

Mançano, T. (2026, August 9). Annualized real income growth by income decile and presidential term [Figure and reproducible pipeline]. Open Data Analysis. https://mancano-tales.github.io/open-data-analysis/posts/delta-renda-anualizada-decil-governo/

In text: (Mançano, 2026) — when citing several analyses from this catalog in the same work, APA distinguishes them as 2026a, 2026b, … in the order they appear in the reference list.

BibTeX:

@mastersthesis{Mancano2026Thesis,
  author = {Man\c{c}ano, Tales},
  title  = {Inequality in Access to Tertiary Education in Brazil: Household
            Incomes, Reforming Policies, and the Politics of Who Gets In
            (1990s--2020s)},
  school = {University of S\~{a}o Paulo},
  year   = {2026},
  type   = {Master's thesis},
  note   = {Unpublished; Graduate Program in Political Science}
}

@misc{Mancano2026_delta_renda_anualizada_decil_governo,
  author       = {Man\c{c}ano, Tales},
  title        = {Annualized real income growth by income decile and presidential term},
  year         = {2026},
  month        = aug,
  howpublished = {Open Data Analysis, \url{https://mancano-tales.github.io/open-data-analysis/posts/delta-renda-anualizada-decil-governo/}},
  note         = {Figure and reproducible pipeline. Source code: \url{https://github.com/mancano-tales/open-data-analysis}, folder posts/delta-renda-anualizada-decil-governo/. Accessed YYYY-MM-DD}
}

A permanent version (Git tag + Zenodo DOI) will be linked here once the dissertation is defended; until then, cite the page URL above and add the date you accessed it (source code: https://github.com/mancano-tales/open-data-analysis, folder posts/delta-renda-anualizada-decil-governo/).

Pipeline

This figure draws on the PNAD / PNAD Contínua Harmonization, 1992–2025 panel.

Run these scripts in this order, from the project root (each one writes to data-raw/, which the next one reads):

  1. shared-pipeline/pnadc/000_PNADC_Download_Consolidate.R — downloads PNAD Contínua 2012–2025 (1st interview) with PNADcIBGE::get_pnadc() into data-raw/pnadc_raw/ and consolidates it into data-raw/pnadc_consolidado_2012_2025_interview1.rds
  2. shared-pipeline/pnadc/020_PNAD_Anual_Manual_Import_2001_2015.R — downloads the PNAD Anual 2001–2015 microdata from the IBGE FTP into data-raw/pnad_anual_raw/ and imports them into data-raw/harmonizing-br-data/output/PNAD_Anual_2001_2015.parquet
  3. shared-pipeline/pnadc/050_PNAD_Historica_Manual_Import_1992_1999.R — same for PNAD Anual 1992–1999 (PNAD_Anual_1992_1999.parquet)
  4. shared-pipeline/pnadc/035_Splice_Microdados.R — splices PNAD Anual and PNAD Contínua into the harmonized panel — Microdados_Todas_Idades_1992_2025.parquet and Microdados_Jovens_18_24_1992_2025.parquet in data-raw/harmonizing-br-data/output/ (sources shared-pipeline/utils/codigos_curso_pnad.R)
  5. plot.R — reads Microdados_Todas_Idades_1992_2025.parquet; writes the figure to output/figures/delta-renda-anualizada-decil-governo/ — compare it with this post’s thumbnail.png

All of the upstream steps above are Tier A and are also run, in this same order, by shared-pipeline/build_public_data.R.

Reproducibility

Tier: A

This pipeline uses only public data, accessible via package/API without any credential (PNADcIBGE, censobr, sidrar, ipeadatar). Run the scripts in shared-pipeline/ in numeric order to reconstruct the intermediate data.