ForHosting KIT · Health & fitness

UK COVID vaccine queue - JCVI priority cohort calculator

An 82-year-old with no priority job or clinical risk is JCVI cohort 2, one of the nine UK Phase 1 cohorts from 2020–21. Enter age, occupation and clinical vulnerability, plus care-home residence if it applies, to get the cohort number. 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
Age
82
Occupation
Other
Clinical vulnerability
None
You get
Cohort
2
Cohort label
JCVI cohort 2 — age 80+ and frontline health and social care
Eligibility status
eligible
Priority rank
2

The United Kingdom did not offer every adult a first COVID-19 dose on the same winter morning. The Joint Committee on Vaccination and Immunisation published nine Phase 1 priority cohorts so the earliest vials went to care-home residents and their carers, then to the oldest adults, frontline health and social care workers, and people who were clinically extremely vulnerable. This UK vaccine-queue calculator assigns that JCVI cohort number from three facts you already know: age in completed years, occupation class, and clinical vulnerability. Optional care-home residence marks group 1 for older adults. A negative age is rejected as invalid input rather than being folded into an absolute value. Treat every result as an educational reconstruction of the 2020–21 sequenced framework, never as an NHS booking, a medical order, or a substitute for a GP or local vaccination service.

How the JCVI COVID-19 vaccine priority cohorts were sequenced

England, Scotland, Wales, and Northern Ireland did not open every adult appointment book on the same winter morning. The Joint Committee on Vaccination and Immunisation, advising UK health departments, ordered people into nine Phase 1 priority cohorts so the earliest COVID-19 vials went to those at greatest risk of death, of explosive outbreaks in closed settings, or of collapsing the health and social care workforce. This calculator encodes that 2020–21 sequenced framework as a deterministic educational model.

It does not look up a live NHS booking site, does not know which primary-care network has supply this week, and does not replace a clinician, a GP, or a local vaccination service. You send an age in completed years, an occupation class from a closed list, and a clinical-vulnerability code the caller has already classified; an optional flag marks residence in a care home for older adults.

The engine then walks a published waterfall from cohort 1 to cohort 9 and returns the first matching JCVI cohort number together with eligibility. Cohort 1 covers residents in a care home for older adults and their carers. Cohort 2 covers everyone aged eighty and over and frontline health and social care workers.

Cohort 3 covers everyone aged seventy-five and over. Cohort 4 covers everyone aged seventy and over and clinically extremely vulnerable people aged sixteen and over who were on the shielding list. Cohort 5 covers everyone aged sixty-five and over.

Cohort 6 covers people aged sixteen to sixty-four with underlying health conditions that put them at higher risk of serious disease. Cohort 7 covers remaining adults aged sixty and over, cohort 8 remaining adults aged fifty-five and over, and cohort 9 remaining adults aged fifty and over. People who match none of those nine groups receive cohort 0 and are marked not eligible for the original Phase 1 programme.

Always frame outputs as an educational JCVI cohort number from this published waterfall, not as a clinic appointment or a clinical recommendation.

Where a UK JCVI vaccine-queue calculator earns its keep

Public-health explainers, journalism notebooks, and civics classrooms still need a transparent oracle for the question people typed in the winter of 2020 and still type when they reconstruct that campaign: which JCVI COVID-19 vaccine priority cohort did this age, job, and clinical-vulnerability profile fall into. A single trusted function that returns the cohort number beside the criteria that fired speeds teaching, fact-checking, and synthetic dataset labels without scraping an NHS portal that no longer hosts the original queue.

Research assistants preparing historical immunisation tables want stable cohort integers from known demographics, and they need a hard reject when age arrives negative so dirty extracts cannot masquerade as a JCVI group. If you later need remaining vaccine-induced protection percent, a booster interval, or a live clinic finder, treat those as separate search intents and landings rather than overloading this queue page.

Always present results as educational estimates from the 2020–21 JCVI Phase 1 sequenced framework; clinical decisions and actual appointments require qualified professionals, an NHS or devolved-administration programme this tool does not call, and eligibility rules that changed as supply improved.

Classroom reconstruction of the 2020–21 JCVI queue

Give students an age, occupation class, and clinical-vulnerability code and verify the JCVI cohort number and eligibility status against the published nine-group waterfall, including the hard reject on a negative age.

Journalism and explainer widgets

Show which UK COVID-19 vaccine priority cohort a profile would have entered without scraping an NHS booking site that no longer hosts the original Phase 1 queue.

What do the JCVI cohort numbers mean?

Cohorts 1 through 9 are the original Phase 1 priority groups, with 1 highest. Cohort 1 is care-home residents and their carers; 2 is age 80+ and frontline health and social care; 3 is age 75+; 4 is age 70+ and clinically extremely vulnerable adults; 5 is age 65+; 6 is ages 16–64 with underlying conditions; 7–9 are remaining adults 60+, 55+, and 50+. Cohort 0 means the profile is not in those nine groups.

Does this book an NHS vaccine appointment in the United Kingdom?

No. It is an educational reconstruction of the 2020–21 JCVI Phase 1 sequenced framework. It does not call an NHS portal, reserve a clinic slot, or give medical advice.

Which JCVI cohort was an 82-year-old in?

Cohort 2, shared by everyone aged 80 and over and frontline health and social care workers. With no priority job or clinical risk, the result is cohort 2, priority rank 2, marked eligible.

Does living in a care home always mean cohort 1?

Only from age 65. Living in a care home for older adults combined with an age of 65 or over gives cohort 1; otherwise age, occupation and clinical vulnerability decide the cohort.

Which cohort were clinically extremely vulnerable people in?

Cohort 4, from age 16, alongside everyone aged 70 and over. People who were clinically vulnerable with underlying health conditions, aged 16 to 64, went in cohort 6 instead.

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/health/vaccine-queue-uk

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/health/vaccine-queue-uk \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"age":82,"occupation":"other","clinical_vulnerability":"none"}'
{
  "age": 82,
  "occupation": "other",
  "clinical_vulnerability": "none"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "health.vaccine_queue_uk",
  "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.

max_age120
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.

Successful API calls use the published $0.002 per item; invalid input is not billed.

How the JCVI COVID-19 vaccine priority cohorts were sequenced

Identical inputs always produce identical JSON because the rules are pure comparisons with no network, no clock, and no randomness.

Input contract, response shape, and error behaviour

Send a JSON object with three required fields and one optional flag. The field age is completed years and must be a finite number from zero through one hundred and twenty; a negative age fails with invalid_input naming that field, because years of life cannot be negative and this calculator will not silently take an absolute value. Aliases years and age_years are accepted. The field occupation is a closed enum: care_home for staff and carers of older-adult care homes, health_social_care for frontline health and social care workers including NHS clinical staff, and other for retired, unemployed, or non-priority jobs. Aliases job, work, role, and occupation_class are accepted. The field clinical_vulnerability is a closed enum: cev for clinically extremely vulnerable people on the shielding list, cv for clinically vulnerable people with underlying health conditions used by JCVI group 6, and none when neither list applies. Aliases vulnerability, shielding, and clinical_risk are accepted. Optional care_home_resident defaults to false and, combined with age sixty-five and over, maps to cohort 1 for residents in a care home for older adults; aliases ltc_resident and nursing_home are accepted. Missing required fields, empty strings, non-finite age, age above one hundred and twenty, an occupation outside the enum, a vulnerability code outside the enum, and a non-boolean residence flag all fail with invalid_input and are not charged. On success the response echoes the cleaned age, occupation, clinical_vulnerability, and care_home_resident values, reports cohort as the integer 1 through 9 or 0, reports cohort_label and priority_rank, sets eligible true when the person is in the original Phase 1 nine groups, sets eligibility_status to eligible or not_eligible, lists the criteria codes that fired, and includes guideline, method, and formula strings for display and for pinning in tests. A classic highest-age triple is an eighty-two-year-old with occupation other and clinical_vulnerability none, which yields cohort 2. A forty-year-old with clinical_vulnerability cev yields cohort 4 even with occupation other. Pricing for successful API calls is the published $0.002 per item; validation failures do not consume prepaid balance.

Where a UK JCVI vaccine-queue calculator earns its keep

Because this capability is a pure parse engine, API pricing is the published base of $0.002 per successful item and failed validation does not consume balance. Keep requests small, pin the cohort and eligibility_status in tests, and you get reproducible UK vaccine-queue labels for homework, LMS plugins, and edge workers without standing up a public-health information system of your own.

Historical immunisation dataset labels

Bulk-produce stable JCVI cohort integers for synthetic or archived demographic rows, with invalid_input when age is negative so dirty extracts cannot look like a sequenced Phase 1 group.

How is the UK COVID-19 JCVI vaccine priority cohort assigned?

Send age in years, occupation (care_home, health_social_care, or other), and clinical_vulnerability (cev, cv, or none). Optional care_home_resident defaults to false. The API walks the JCVI Phase 1 waterfall and returns the highest matching cohort number plus eligibility_status.

What happens if age is negative?

The task fails with invalid_input. Years of age cannot be negative, so the calculator does not take an absolute value and the request is not billed.

What does the UK COVID vaccine queue calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →