COVID vaccination programme searches

COVID vaccination programme searches

The current version of COVID vaccination programme searches is v7

Introduction and installation

Primary Care IT has released a suite of searches to support the COVID vaccination programme. A video version of this guide can be found here

There are 9 groups of searches:
  1. Headline searches to list eligible patients, those who are contraindicated, have abandoned the course, and those who have declined vaccination
  2. Priority Groups (A)
  3. No Primary Dose (B) - previously listed as Still Outstanding (D)
  4. First Primary Dose (C) - previously listed Partial Course (C)
  5. Second Primary Dose (D) - previously listed as Completed Course (B)
  6. Third Dose (E)
  7. Consider immunosuppression for third dose (P)
  8. Data quality (Q)
  9. Invite for 3rd dose (R)
Most of the folders break priority group patients down into the nationally specified cohorts, with the search reference differing by the letter A, B, C, D, E, or R. Within folders B, C, D, E, R, the rules of each search are identical.

Having downloaded the xml search file somewhere easy like your desktop, open EMIS Web and select Population Reporting.

Select an existing folder or create a new one. Then click on the Import button on the ribbon, and press the 3 dots to find the xml file. You can untick the top folder.

Press OK then wait a moment for the searches to import.

You’ll notice that there are 8 sub folders containing different searches; start by looking at results in the Q) Data quality folder. Right click the folder and press run.


The searches are built on the codes defined by NHS Digital; SNOMED contains more codes, but a set list is maintained for the UK vaccination programme.
1324681000000101    Administration of first dose of SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccine
1324691000000104    Administration of second dose of SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccine
1363861000000103    Administration of third dose of SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccine
1363791000000101    Administration of fourth dose of SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccine
1363831000000108    Administration of fifth dose of SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccine
1324671000000103    Immunisation course to achieve immunity against SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2)
1362591000000103    Immunisation course to maintain protection against SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2)

Below are the codes used to exclude a patient. A subsequent vaccination code will ignore the below entries.
1324761000000100    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) immunisation course contraindicated
1362641000000107    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) protection maintenance course contraindicated

1324811000000107    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) immunisation course declined
1324721000000108    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) vaccination dose declined
1362651000000105    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) protection maintenance course declined

1324861000000109    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) immunisation course abandoned
1362631000000103    SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) protection maintenance course abandoned

Other valid codes exist but are not used in these searches; these refer to courses not indicated, not done, started, completed.

Q) Data quality

You will need to complete some housekeeping using CVP-Q1, Q2, Q3 to in order to make the priority groups as concise as possible!
CVP-Q1 contains all those patients who are likely to be contraindicated to receiving the COVID vaccine. The criteria are those who have a coded history of anaphylaxis or adverse reaction to a vaccine; adverse reaction to the COVID vaccine; any issue ever of an adrenaline auto injector; and currently pregnant.

Patients appearing in this list should be clinically reviewed as soon as possible to determine whether or not they are suitable to receive the vaccine. When you open the report you will notice that patients are sorted in age order so you can pull out blocks of data according to which priority cohort you are working on.

We have been cautious with the history of adverse reaction to a vaccine by including all codes, despite the green book stating that the vaccine should not be given to patients who have had a… ”confirmed anaphylactic reaction to any components of the COVID-19 vaccine”

Anybody who has been clinically reviewed and determined to have a contraindication to the COVID vaccine needs to be coded with SARS-CoV-2 immunisation course contraindicated.

CVP-Q2 is to review for clinically extremely vulnerable status. This is the group borne out of the shielding patients who have the code high risk category for developing complication from COVID-19 infection. Patients appearing in this data quality search will be under 70 since anybody aged 70 or over is already included in higher priority groups.

Anybody who features in this search has a code which may indicate that they could be coded with the high risk code. The codes have been drawn from the Department of Health and Social Care’s most recent recommendations from early November. You will see from the definition of the search that this includes patients with a history of solid organ transplant, cystic fibrosis, asplenia, Down’s syndrome, CKD stage 5, dialysis, and currently pregnant women with an underlying heart condition.

Again, the report will help you identify what codes are including them in the search, and after clinical review the addition of a high risk code will elevate the priority.

CVP-Q3 Possible frontline health & social care workers is a bit of a challenge due to the historic use of occupation codes to document that the patient has seen a particular type of clinician such as a pharmacist or physiotherapist. Not every frontline worker will have had their current occupation coded on their medical record so it’s never going to be completely accurate. On this basis, occupation has been omitted from priority group 2, but you could manually include patients if they prove their occupation. The report will reveal any occupation code from the patient's record to help identify some of the frontline workers. 

CVP-Q5 highlights patients who received the second dose less than 21 days after the first dose. 21 days is the minimum interval for the Pfizer BioNTech vaccine, while the Oxford-Astra Zeneca vaccine has a minimum interval or 28 days. Once the AZ vaccine comes online, this search is really aimed at picking out anybody who had the Pfizer vaccine doses too close together, but it may also indicate a coding problem.

CVP-Q7 is a simple data quality exercise to find patients who have had the vaccine code inputted twice on the same day. This search operates in tandem with CVP-Q18.

CVP-Q8 lists all under 16s who fall into the clinically extremely vulnerable category. Vaccination of these individuals is likely to be planned in conjunction with secondary care.

CVP-Q9 helps identify patients with learning disabilities who have not yet received a vaccination. This is to prioritise their recall alongside patients in cohort 6.

CVP-Q10 & CVP-Q11 are used together to help identify household members of immunocompromised patients. Unfortunately this does require some manual input; using CVP-Q10, Practices can review each immunocompromised patient and use the Household button on the EMIS Web précis bar to find household members and then add the code Lives with immunocompromised person [527401000000103] to their record. CVP-Q11 will list all of these coded patients for recall (excluding those who have already received a vaccine).
Practices should consider that the Household button is not 100% reflective of the true household; tiny spelling mistakes in the address can ignore a patient so it is recommended to find patients using a combination of first line of address and partial postcode.

CVP-Q12 highlights patients with thrombocytopenia codes which is a contraindication to receiving the AZ jab.


CVP-Q13 helps to keep problem lists clean by listing patients who have had a vaccine added as a problem, so the problem status can be removed.


CVP-Q14 lists patients who are aged between 17 years and 9 months and 18 to help invite them as soon as possible after their 18th birthday.


CVP-Q15 shows patients who had their first jab 7 weeks ago, to help target patients for reminder that their second jab is due next week.


CVP-Q16 lists all patients whose first jab was at least 8 weeks ago, but they haven’t had a second jab yet.


CVP-Q17 lists codes which are not part of the official NHS set of vaccination codes. This includes some SNOMED International procedure codes ‘Administration of SARS-CoV-2 mRNA vaccine’ which are not recognised by NHS Digital.


CVP-Q18 identified problems with coding which should be checked, such as more than 2 of the same vaccination code. User the report to check dates and review the record.

CVP-Q4 and -Q6 have been retired

0) Main folder

The main search in the top folder CVP-01 All patients without contraindications for COVID vaccine is the population who will eventually be invited for the jabs. The patients excluded from this search are listed in CVP-04 due to being contraindicated.

CVP-02 lists any patient who has been coded as declined to receive the vaccine. If they subsequently had a vaccine, they will not be included in this search but will appear in the appropriate PARTIAL and COMPLETED searches.

CVP-03 lists patients who did not receive the second dose of the vaccine. Patients will appear here if codes SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) immunisation course abandoned or SARS-CoV-2 (severe acute respiratory syndrome coronavirus 2) immunisation course declined is added to their record after the first dose. If they subsequently received a second dose, they will not be included in this search but will appear in the appropriate PARTIAL and COMPLETED searches.

CVP-04 will populate after the clinical review exercise of CVP-Q1

CVP-05 is a report which can be copied or linked to any cohort of patients. The report can be run against some of the supplied searches, or Practices may wish to view the vaccination statuses of a defined cohort such as patients living in a care home or those who are housebound. The report displays the date of each dose plus the type of vaccine (eg: AZ, Pfizer, Moderna).


Each of the searches in this folder break down your eligible patient list into the first 9 priority groups. They also serve as parent searches for all searches in COMPLETED, PARTIAL, OUTSTANDING.

CVP-A1 is the first priority group, for care home residents and their carers. This search has been left blank for Practices to fill in. When editing the search and you will see two rules which are available to copy as many times as needed. 
Rule 1 is for care homes where the address on your systems is a number and street such as 42 High Street,
Rule 2 is where you have a care home with a name such as Riverside Care Home.
When you have copied the rule, you can double click to edit the feature, then double click the first line to edit. Then do the same to the postcode criteria. As a housekeeping exercise it’s worth checking that all your residents within each care home share these parts of the address. If you have individual flats or rooms listed, it is possible to insert an asterisk where the numbers appear eg: (Flat) * Riverside Care Home.

Finally, it is really important to make sure that the outcomes of each rule are correct – If rule passed must always be ‘Include in final result’. If rule failed will show 'Goto next rule' for each rule apart from the final rule which must be 'Exclude from final result'.

If you want to manually include patients who are staff in care homes it would be possible to manually create a List of Patients, and include this as a rule in the search.
HINT: Add another rule > Use an existing search's results 

Searches CVP-A2 to CVP-A15 exclude anybody appearing in CVP-A1.

Most of these searches (A2, A3, A5, A7, A8, A9, A11, A12, A13, A14, A15) are self-explanatory as age groups. 

CVP-A2 does not include frontline health and social care workers. If you want to include a manual list of these patients, it would be possible to add a List of Patients as described for the care home workers above.

CVP-A4 includes those patients who are coded as clinically extremely vulnerable – using the national "high risk" code. As with CVP-Q2, the clinically extremely vulnerable patients are only those under the age of 70, since older patients are already included in priority group 4 or higher. Patients can be added to this search during the clinical review exercise of CVP-Q2. If a clinician decides that a patient is no longer clinically extremely vulnerable, adding a code of moderate risk or low risk will remove them from the search.

CVP-A6 identifies the patients with underlying health conditions. This has been built in line with JCVI and Green Book recommendations, while the codeset generally uses the same codes used for flu at risk groups with the addition of SMI. Patients coded as clinically extremely vulnerable will not appear since they will already have been picked up in CVP-A4.

Feb 2021: v3 searches reflect a clarification by JCVI around (severe) asthma eligibility; only patients who have had an emergency admission to hospital, or those who require continuous or regular systemic steroid therapy.

CVP-A15 has been introduced in v7 in response to 12-15 year olds being invited for a first vaccination. A sub-search to follow up on unvaccinated patients who are also in an at-risk category 

CVP-A16 has been introduced in v8 in response to the updated JCVI guidance advising that the following cohorts should be offered a booster dose no sooner than 3 months after completion of their primary course:

  1. Children and young people aged 16-17

  2. Children and young people aged 12-15 who are in a clinical risk group or who are a household contact of someone who is immunosuppressed

  3. Children and young people aged 12 to 15 years who are severely immunosuppressed and who have a third primary dose


This folder lists everybody who hasn’t yet received a dose of COVID-19 vaccine or has declined. 
You can re-run the searches in this folder periodically to find additional patients to invite or re-invite. In particular patients turning 55, 60, 65, 70, 75, and 80, may fall between the cracks due to the likely time gap between re-running each cohort to invite them. There is only a single code for a text message invitation, and nothing by phone or letter, so tracking patients who have never been invited may be a bit of a challenge in EMIS alone. If the invitation code is used, consider adding a report to CVP-B0 for an overview of when patients were last contacted.

Prior to v7 this folder was called OUTSTANDING and searches within were prefixed CVP-D. 


This folder lists everybody who has received the first dose, but not a second dose. Anybody who decided they didn’t want to receive the second vaccine should be coded with the code SARS-CoV-2 immunisation course abandoned which will remove them from CVP-C0 (the declined code will also work). Eventually anybody remaining in these searches will need follow up to complete the vaccination course.
Prior to v7 this folder was called PARTIAL COURSE.


The searches in here find everybody who has received exactly 2 doses, broken down into the priority groups. You will be able to use the percentage of each search to track the uptake within that priority group but bear in mind any patients who have had a third dose are not counted.

Prior to v7 this folder was called COMPLETED COURSE and searches within were prefixed CVP-B.

E) COVID vaccinations THIRD DOSE

Introduced for v7, this folder shows everybody who has received 3 doses of a COVID-19 vaccine, broken down into the various priority groups. You will be able to use the percentage of each search to track the uptake within that priority group.

P) Consider immunosuppression for third dose

This folder contains searches that help you to identify your patients who have immunosuppression and need a third dose of COVID vaccine for their primary course.  The CMO specification states there are 4 groups that should be invited for a third primary dose of their COVID vaccination.  These are listed below in figure 1

Figure 1

1. Individuals with primary or acquired immunodeficiency states at the time of vaccination due to conditions including: 

  • acute and chronic leukaemias, and clinically aggressive lymphomas (including Hodgkin’s lymphoma) who were under treatment or within 12 months of achieving cure 
  • individuals under follow up for chronic lymphoproliferative disorders including haematological malignancies such as indolent lymphoma, chronic lymphoid leukaemia, myeloma, Waldenstrom’s macroglobulinemia and other plasma cell dyscrasias (note: this list is not exhaustive) 
  • immunosuppression due to HIV/AIDS with a current CD4 count of <200 cells/μl for adults or children 
  • primary or acquired cellular and combined immune deficiencies – those with lymphopaenia (<1,000 lymphocytes/ul) or with a functional lymphocyte disorder 
  • those who had received an allogeneic (cells from a donor) or an autologous (using their own cells) stem cell transplant in the previous 24 months 
  • those who had received a stem cell transplant more than 24 months ago but had ongoing immunosuppression or graft versus host disease (GVHD) 
  • persistent agammaglobulinaemia (IgG < 3g/L) due to primary immunodeficiency (for example, common variable immunodeficiency) or secondary to disease/therapy 

2. Individuals on immunosuppressive or immunomodulating therapy at the time of vaccination including: 

  • those who were receiving or had received immunosuppressive therapy for a solid organ transplant in the previous 6 months 
  • those who were receiving or had received in the previous 3 months targeted therapy for autoimmune disease, such as JAK inhibitors or biologic immune modulators including B-cell targeted therapies (including rituximab but in this case the recipient would be considered immunosuppressed for a 6-month period), T-cell co-stimulation modulators, monoclonal tumour necrosis factor inhibitors (TNFi), soluble TNF receptors, interleukin (IL)-6 receptor inhibitors, IL-17 inhibitors, IL 12/23 inhibitors, IL 23 inhibitors (note: this list is not exhaustive) 
  • those who were receiving or had received in the previous 6 months immunosuppressive chemotherapy or radiotherapy for any indication 

3. Individuals with chronic immune-mediated inflammatory disease who were receiving or had received immunosuppressive therapy prior to vaccination including: 

  • high-dose corticosteroids (equivalent to ≥ 20mg prednisolone per day) for more than 10 days in the previous month 
  • long-term moderate dose corticosteroids (equivalent to ≥10mg prednisolone per day for more than 4 weeks) in the previous 3 months 
  • non-biological oral immune modulating drugs, such as methotrexate >20mg per week (oral and subcutaneous), azathioprine >3.0mg/kg/day, 6-mercaptopurine >1.5mg/kg/day, mycophenolate >1g/day in the previous 3 months 
  • certain combination therapies at individual doses lower than above, including those on ≥7.5mg prednisolone per day in combination with other immunosuppressants (other than hydroxychloroquine or sulfasalazine) and those receiving methotrexate (any dose) with leflunomide in the previous 3 months 

4. Individuals who had received high-dose steroids (equivalent to >40mg prednisolone per day for more than a week) for any reason in the month before vaccination. 

Individuals who had received brief immunosuppression (≤40mg prednisolone per day) for an acute episode (for example, asthma / COPD / COVID-19) and individuals on replacement corticosteroids for adrenal insufficiency are not considered severely immunosuppressed sufficient to have prevented response to the primary vaccination. 
This leads to a complex situation, where if practices are to follow the letter of the guidance they will need to contact secondary care providers to identify which departments are notifying which patients and there is a potential for confusion and for some patients to slip through the net!  Primary Care IT have created searches to completely mirror the CMO specification - these are CVP-P1->CVP-P13 in the P) searches folder. 
The searches provided by Primary Care IT do not include an age restriction, so children under the age of 12 may be listed in the search results.
There are specific searches which will need a degree of manual checking as searches alone cannot identify the patients completely. These are:
  1. CVP-P3 to look at the CD4 count
  2. CVP-P8 to check that targeted therapy is current
  3. CVP-P9 to look at the date of chemo/radiotherapy to check if it was in the last 6 months
  4. CVP-P10 to calculate the daily dose of steroids the patient is on
  5. CVP-P12 to look at the combination of drugs
  6. CVP-P13 to calculate the daily dose of steroids the patient is on
The associated reports have been designed to help you identify quickly which patients are eligible.

If Practices are struggling with capacity and don't have the resources to review all of these patients, we have included two searches at the top of the folder; the first for patients who would usually be identified as immunocompromised for the influenza campaign (CVP-P0), the second (CVP-P0a) to identify patients who appear in the PCIT searches but NOT in CVP-P0.  If Practices wish to use the flu immunocompromised patients search, we suggest reviewing these patients too to see if they are eligible.  The majority are likely to be related to steroid issues.

A final word of warning – if you run the top folder it may take about 15 minutes to run all the searches.


v1 - Initial 9 priority cohorts
v2 - Fix high priority code 
v4 - Add data quality searches
v5 - Add searches for 12-15 cohort with underlying health conditions
v6 - Add folder P for immunosuppression
v7 - Add folder E for third dose invitation; add CVP-05 report; update all searches with wider set of COVID vaccination codes (1st - 5th dose); add searches CVP-B0 / CVP-C0 / CVP-D0 / CVP-E0 for overview of patients who fit within each folder's vaccination status logic.
v8 - Added searches for age and risk groups specified in latest JCVI guidance

First published 18th December 2020
Updated 23th December 2021

    • Related Articles

    • Childhood Vaccination Searches

      The childhood vaccination searches have been revamped for 2021. They can be found within the Data Quality set of searches and also feature as part of COVID recovery. The childhood vaccination schedule has been updated a number of times in the past ...
    • COVID Recovery

      As we begin to return to a 'normal' way of working having been upended by the pandemic, GP Practices will already know that a lot of patient care fell by the wayside. Primary Care IT has compiled some existing - as well as some new - searches to ...
    • CQRS: PCV HIB MenC programme searches

      The current version of CQRS: PCV HIB MenC is v1 The PCV HIB MenC programme service indicators are extracted automatically from your system approximately 10 days after the end of the monthly reporting period. Practices have a short opportunity to ...
    • CQRS searches

      CQRS extracts data from the clinical system to support payment and management of various enhanced services. The automation of these monthly reports saved Practices having to construct their own searches, which did not always accurately reflect the ...
    • CQRS: Rotavirus searches

      The current version of CQRS: Rotavirus vaccination programme is v1 The rotavirus service indicators are extracted automatically from your system approximately 10 days after the end of the monthly reporting period. Practices have a short opportunity ...