ForHosting KIT · Dates & time

Generation by birth year

Type a birth year and get its generation with the years that define it: 1990 is a Millennial, part of the 1981 to 1996 cohort, also called Gen Y. Ranges follow common Pew-style cutoffs from 1883 to 2039. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Year
1,990
You get
Cohort
Millennial
Key
millennial
Start year
1,981
End year
1,996

Marketers, product teams, educators, and researchers often need a fast answer to one simple question: which generation does a birth year belong to? This capability takes a single integer year of birth and returns the matching cohort label along with the inclusive start and end years used for that label, plus common alternate names. The boundaries follow widely cited demography conventions—Pew-style ranges for Baby Boomers through Generation Z, with standard extensions for older cohorts and Generation Alpha and Beta.

How generational year boundaries are applied

Generational labels are social constructs, not legal categories, but product and research teams still need a consistent mapping. This tool uses fixed inclusive ranges: Lost Generation 1883–1900, Greatest Generation 1901–1927, Silent Generation 1928–1945, Baby Boomer 1946–1964, Generation X 1965–1980, Millennial 1981–1996, Generation Z 1997–2012, Generation Alpha 2013–2024, and Generation Beta 2025–2039. Those cutoffs mirror common public references (especially Pew for Boomer–Gen Z) so dashboards, surveys, and CRM segments stay comparable across tools.

A birth year is matched with a simple closed-interval check: if the year falls between start and end inclusive, that cohort wins. There is no partial membership, fuzzy scoring, or age-at-today calculation—only the calendar year of birth.

What to enter and what you get back

Send a single field named year as a whole integer, for example 1990 or 2005. Years outside the defined table (before 1883 or after 2039) also fail with a clear range message instead of inventing a label. Use the key for storage and the name for display.

The capability does not estimate current age, life stage, or cultural traits—only the generation label implied by the birth year under these fixed boundaries.

Where to use it and how pricing works

Typical uses include tagging CRM contacts, splitting A/B test audiences, labeling survey respondents, building content calendars by generation, and validating demographic filters before a campaign ships. Call it once per person or once per distinct birth year when you batch-deduplicate upstream. Pair the output with your own analytics stack—SQL CASE expressions, warehouse dimensions, or marketing automation tags—by treating key and cohort as stable vocabulary rather than free-text labels that drift over time.

CRM and audience tagging

Attach a stable generation key to each contact from their birth year so segments, offers, and lifecycle emails stay consistent across tools.

Survey and research coding

Code open demographic fields into Millennial, Gen Z, Boomer, and related cohorts for crosstabs without hand-maintained spreadsheet formulas.

Product and content planning

Validate filters and personas when planning features or campaigns aimed at a specific generation defined by birth-year ranges.

Which year ranges do you use?

Inclusive ranges: Lost 1883–1900, Greatest 1901–1927, Silent 1928–1945, Baby Boomer 1946–1964, Gen X 1965–1980, Millennial 1981–1996, Gen Z 1997–2012, Alpha 2013–2024, Beta 2025–2039. Boomer–Gen Z follow common Pew-style cutoffs.

What happens if I send 1990.5 or "nineteen ninety"?

Only whole integer birth years (or integer strings like "1990") are accepted.

Does this calculate age from today's date?

No. It maps the birth year alone to a cohort table. Current age, zodiac, or life-stage estimates are out of scope and would require a date that this pure lookup deliberately ignores.

Why is 1997 Gen Z and not Millennial?

Under the fixed table used here, Millennials end in 1996 and Generation Z begins in 1997, matching widely cited public demography cutoffs so your labels align with external reports.

What generation is someone born in 1990?

A Millennial. The Millennial range here runs from 1981 to 1996 inclusive, and the result also lists common alternate names for the group, such as Gen Y and Generation Y.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/date/generation-cohort

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/date/generation-cohort \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990}'
{
  "year": 1990
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.generation_cohort",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Everything runs as pure local table lookup with no clocks, models, or network calls, so the same year always maps to the same cohort and your data never leaves the request path.

Input rules and what the response contains

Integer-looking strings such as "1988" are accepted and normalized to a number; fractional values like 1990.5, booleans, empty strings, and free text are rejected with invalid_input so a bad type cannot pollute a segment. On success the response echoes the normalized year, the primary cohort name (for example Millennial or Generation Z), a stable machine-friendly key (millennial, gen_z), the inclusive start_year and end_year of that cohort, and an also_known_as list of common aliases such as Gen Y or Zoomers.

Where to use it and how pricing works

On the free web page the lookup runs locally on desktop and mobile; the same function via the KIT API is billed at $0.002 per request from prepaid balance, with unit set to item so one successful mapping is one billable unit.

How much does the API cost?

The browser page runs locally for free. The same mapping via the API is billed at $0.002 per request from prepaid KIT balance.

Read the full KIT documentation →