Population is a static rebuild, not a live database. A Python script reads the normalised JSON in data/pop/, computes a handful of summary statistics, and writes HTML, JSON and a sitemap. There are no pip dependencies.
Series and units
- Population is the World Bank's mid-year estimate of total residents, a count of people (World Development Indicators, SP.POP.TOTL).
- Population growth is the annual percent change in that estimate (SP.POP.GROW).
- Both series are republished unmodified; nothing is interpolated or estimated beyond what the source publishes.
- The population series runs from 1960; the growth series from 1961.
- Rankings use the latest year available for that economy. Economies do not all share the same last year, so read the year column.
- Where the World Bank does not report an economy, the country page shows Not tracked with a note saying so.
- The change from the previous year is computed from the published values; it is the only derived figure on a series page.
Coverage
The site carries the 25 official desks. Each desk page shows both series where the Bank publishes them, and the leaderboards and charts rank the same set — a chart and a table on this site never disagree with each other. Adding a desk is a data-pipeline change first and a page change second.
What we do not do
We do not change a published value, fill a gap with an interpolation, or substitute a national estimate for the World Bank's own. A missing year stays missing.
Charts and tables
Charts are annual. The all-countries chart opens with the twelve largest latest populations; the legend and the table let you add or remove economies. Range buttons (10, 20, 30 years, or all history) filter the view only; they do not recompute a value. Country-filtered views chart that country plus a related set.
Reproducibility
A rebuild reads the same source files, so two runs produce the same pages. Hashing of CSS and JavaScript normalises line endings, so asset names do not change between Windows and Linux builds. Sitemap entries are canonical URLs only; country-filtered metric views point their canonical at the global series page.
Ads
Pages load Google AdSense (publisher id ca-pub-6557770900386479, listed in ads.txt). There are no reserved layout boxes on the page; ads may still appear through the network script.