OpenPrescribing takes open datasets from NHS Digital and NHS Business Services Authority, and makes it easy for people to explore the prescribing dataset. We also use this dataset in our research, and offer bespoke data extracts from the prescribing dataset for researchers, clinicians and NHS staff (get in touch!). In this series of blog posts we’ll explain key concepts and share our knowledge of the prescribing dataset. In the first blog, we take a look at BNF codes.

The British National Formulary (BNF) is a reference book containing the standard list of medicines used in UK prescribing. It gives information on the indications, dosages and side effects for over 70,000 medicines. The BNF used to show medicines in a hierarchy, and the NHS Business Services Authority use a legacy version of the BNF hierarchy to assign codes to drugs and chemicals. You can find out more about how they assign codes here. UPDATED December 2018: You can find a download of the latest codes from the BSA here.

The BNF codes from this pseudo-classification are used in the prescribing dataset as a unique identifier to show what was prescribed. These BNF codes can tell you a lot about a drug or appliance. The codes are in a hierarchy:

  • The first characters tell you which part of the BNF a drug is from. For example, drugs in BNF Chapter 4 (Central Nervous System) will always begin with ‘04’. The BNF is then further subdivided into sections. For example, Antidepressant Drugs, which are contained within Chapter 4 Section 3 of the BNF, all begin with ‘0403’
  • The last few characters of the BNF code give more detailed information about a drug. It tells you what the drug is, it tells you whether the product is generic or branded, and it tells you more about the presentation of the drug (e.g. whether it is a capsule or tablet, and what the strength of the drug is)

The images below, created by our lead coder Seb, show you how the classification system works for Tramadol. Tramadol is an opioid pain medication, which is available in capsules, tablets and many other formulations. The images show you the BNF codes for some of the tablets which are available.

‘AA’ under product always refers to the generic for whichever drug you are interested, but the letters under strength do not always refer to the same formulation in other drugs — so ‘AM’ in this example does not always refer to 300mg M/R tablets for other chemicals.

The asterisks in the diagram indicate that any code could be entered in this section. So for example, all generic opioids analgesics will have the code 040702 at the start, and ‘AA’ under product. This means we know Tramadol HCL 300mg M/R Tablets (040702040AAAMAM) is an opioid analgesic because it begins ‘040702’, and that it is a generic because it has ‘AA’ under Product. All other generic opioid analgesics will contain these characters in those positions, but will have different codes under sub-paragraph, chemical substance and strength & formulation.

We use the BNF code structure to help us in our research. For example, if we want to look at the prescribing of all opioid analgesics we can run a search in our database for any items prescribed that begin with a BNF code of 040702, or if we want to look at all generics in a paragraph we can search under product for ‘AA’.

If you have any questions, or want to suggest a topic for a future blog, get in touch.