How the calculator actually works
Most “delusion calculators” online multiply a handful of independent percentages together and stop there. That approach overstates how rare a combination of traits really is, because several of the filters you can set aren’t actually independent of each other. Here’s what ours does differently, and where it still falls short of a full statistical model.
The core idea: age as a conditioning variable
Income, marital status, and obesity prevalence all shift meaningfully with age — median income rises through someone’s 20s and 30s before leveling off; the share of people who are currently unmarried is high in the early 20s, drops through the 30s and 40s, then rises again later from divorce and widowhood. Instead of applying one flat national rate for each of those filters, we split the population into seven age brackets (18–24, 25–34, 35–44, 45–54, 55–64, 65–74, 75+), each with its own income distribution, unmarried rate, and obesity rate, by gender.
When you set an age range, we calculate how much of each bracket falls inside it, weight each bracket’s contribution accordingly, and then apply that bracket’s own income/marital/obesity rates — rather than one number for the whole adult population regardless of which ages you actually selected.
What’s modeled as a distribution vs. a flat rate
- Height— modeled as a normal distribution per gender (mean and standard deviation drawn from published anthropometric norms), independent of age. Adult height is fairly stable across the working-age range, so we don’t stratify it by age bracket.
- Income — modeled as a log-normal distribution (income distributions are right-skewed, which a normal distribution handles poorly), with its own median and spread per age bracket, per gender.
- Marital status— the share currently unmarried (single, divorced, or widowed — the practically relevant “dating available” pool), per age bracket, per gender.
- Obesity— prevalence per age bracket, per gender, reflecting that obesity rates aren’t flat across adulthood.
- Ethnicity — applied as a flat population share, independent of age and everything else. This is the filter where we make the least statistical effort, for a specific reason explained below.
Where we still assume independence
Within a given age bracket, we treat height, income, marital status, and obesity as conditionally independent of each other. That’s a real simplification — income and education correlate, for instance, and we don’t collect education as an input at all. Ethnicity is applied as a single independent multiplier regardless of age, income, or the other filters, for the same reason: we don’t currently have reliable joint distributions (e.g., income-by-ethnicity-by-age) to draw on, and approximating one badly would be worse than being upfront about using an independent share.
Age is the one correlation we’ve deliberately built in, because it’s the variable that most affects the others and because reliable age-bracketed public data exists to model it with. It’s a meaningful improvement over treating every filter as flatly independent, not a claim that the model is fully joint.
Where the reference numbers come from
The bracket-level figures (population share, income, marital status, obesity) are illustrative approximations built from widely published aggregate statistics — U.S. Census Bureau age and marital-status tables, CDC/NHANES obesity prevalence data, and standard anthropometric height norms. They are nota live pull from the Census API or any other government data source, and they will drift out of date over time the way any static reference table does. If you spot a figure that looks off, or you know of a better public data source we should be using, we’d genuinely like to hear about it — see the contact page.
What a more complete model would add
A version of this calculator built on individual-level microdata (the Census Bureau’s public-use ACS PUMS files, for example) could model real joint distributions across income, education, ethnicity, and age simultaneously, instead of stratifying by age alone and assuming independence elsewhere. That’s a meaningfully larger undertaking than what a client-side calculator can reasonably do today, and it’s the direction we’d want to take this if we invest further in the model.
What the calculator can’t tell you
None of this touches personality, values, communication style, or chemistry — factors that relationship research consistently finds matter more for relationship satisfaction than any demographic filter, and that simply aren’t measurable this way. Treat the output as an honest statistical answer to a narrow question (how common is this combination of traits?), not a verdict on your standards or your dating prospects.