Tally Digital product · Data visualisation
Pyramiddle shows you one population pyramid and gives you six guesses to name the country. Every shape is real data from the UN’s World Population Prospects — which means the game teaches you to read a chart without ever saying so.
A population pyramid is one of the most information-dense charts in existence. Its silhouette tells you whether a country is young or ageing, whether it has been through a war, whether it imports labour, whether birth rates collapsed a generation ago. Most people have never been taught to read one.
The premise: strip the labels off, show the shape, and make guessing the country a daily habit. Learning to read the chart happens as a side effect of trying to win.
A daily puzzle covering 196 countries. Everyone in the world gets the same country each day, resetting at midnight UTC, so the game is shareable without spoiling. Six guesses, each returning distance, compass direction and a proximity percentage — enough signal to triangulate, not enough to trivialise.
Every pyramid is generated from the UN World Population Prospects 2024 release rather than hand-drawn, so the shapes are honest and the underlying numbers hold up if a player goes looking. Solve the country and an optional bonus round asks a few demographic trivia questions about it.
It runs in English, Spanish and French, with the country-name lists translated per language — a guessing game is unplayable if it only accepts the English spelling of your own country.
Deliberately small. A thin Flask wrapper serves a static front end; the game logic runs entirely in the browser against pre-computed JSON. There is no build step, no framework, and no per-player state on the server — the daily country order is frozen in advance, so the server does not need to know who you are or what you guessed.
flowchart LR
classDef extern fill:#fdfcfb,stroke:#c4873b,stroke-width:1.5px,color:#0a0f0f
classDef hub fill:#0a0f0f,stroke:#c4873b,stroke-width:1.5px,color:#fdfcfb
classDef out fill:#f3f2f1,stroke:#9a9a96,color:#0a0f0f
U["UN World Population
Prospects 2024"]:::extern
P["Pre-processed
pyramid + border JSON"]:::hub
D["Date → today's
country (frozen order)"]:::hub
B["Browser:
guess, distance,
direction, proximity"]:::out
G["Guides & bonus round
EN / ES / FR"]:::out
U --> P
P --> B
D --> B
P --> G
No server-side game state. The date decides the country, and the browser does the rest.
It is free, has no ads, and stores nothing about the player. The honest status: it is early, and the metric that will decide whether it works — players who come back tomorrow — is still being established.
Sitting on a dataset nobody looks at? Sometimes the useful thing isn’t a dashboard — it’s a reason to come back. Start a conversation →