LiveNow live

Method

How these numbers are made

The honest version. A live counter is a visualisation of a model, not an observation — and most sites in this genre never say so.

1. Nothing is being counted

No government publishes births and deaths in real time. What every site of this kind does — including this one — is take a published population estimate and a published rate, then interpolate. The only question is whether you show the interpolation or hide it.

2. The formula

population(t) = anchor + rate × (t − anchorTime) where anchor = World Bank estimate for 1 July of the anchor year anchorTime = 1 July of that year, 00:00 UTC rate = people per second, derived below

Births and deaths per second come from crude rates applied to the anchor population:

births/sec = population × crude birth rate ÷ 1,000 ÷ 31,556,952 deaths/sec = population × crude death rate ÷ 1,000 ÷ 31,556,952 net mig/sec = (5-year net migration total ÷ 5) ÷ 31,556,952

"Today" means since midnight in your timezone, not UTC — otherwise the counter would reset at an arbitrary moment for most visitors.

3. The numbers don't perfectly agree

Loading…

Two independent World Bank series are involved, and they disagree. The births-minus-deaths figure and the published growth rate are produced by different parts of the same estimation process. This site shows both rather than silently picking one.

4. Known weaknesses

5. Sources

World Bank Open Data, retrieved :
SP.POP.TOTL population · SP.DYN.CBRT.IN crude birth rate · SP.DYN.CDRT.IN crude death rate · SM.POP.NETM net migration · SP.URB.TOTL.IN.ZS urban share · AG.SRF.TOTL.K2 land area · NY.GDP.PCAP.CD GDP per capita · SP.DYN.LE00.IN life expectancy · SP.DYN.TFRT.IN fertility · SP.POP.0014.TO.ZS / SP.POP.65UP.TO.ZS age structure · SP.POP.GROW growth rate. The World Bank's population series are themselves largely UN World Population Prospects estimates.

6. Reproduce it

The raw pull and the build step are plain Python with no dependencies: python3 data/fetch_wb.py then python3 data/build.py. That writes data/countries.json and data/world.json, which is everything the site reads.