High dose long acting opioids (OpenPrescribing) - Pseudo BNF

PH3450 / 8491

OpenSAFELY

Jan 26, 2026

REGISTERING DOI...

OpenCodelists Phenotype
  1. Overview

    Codelist ID
    opensafely/high-dose-long-acting-opioids-openprescribing
    Version ID
    3f51e9b7
    Coding System
    BNF codes
    Collections
    OpenCodelistPhenotype Library
    Tags
    No data
  2. Definition

    This codelist was taken from OpenCodelists, created by OpenSAFELY. We recommend viewing this Phenotype on the OpenCodelist website to view the most recent version.

    Taken from high dose long-acting opioid codelist in OpenPrescribing, with a calculated Oral Morphine Equivalence of ≥120mg a day of a long acting regular opioid.

    From OpenPrescribing: "The calculations are based on likely doses of long acting, regular opioids, for example morphine sulphate tablets or fentanyl patches. For example, we have assumed that MST 60mg tablets are “high dose”, as they are usually taken as one tablet twice daily (120mg daily dose), whereas MST 30mg are not, as the daily dose is 60mg. We have not included preparations used for breakthrough pain, e.g. Oramorph, or opioid injections which tend to be used more commonly in palliative care. "

    © University of Oxford for the Bennett Institute for Applied Data Science 2025. This work may be copied freely for non-commercial research and study.

  3. Methodology

    Using SQL from the measure definition for the numerator for this measure in OpenPrescribing, a bnf codelist was built in BigQuery:

    select presentation_code, presentation

    from hscic.bnf

    where (presentation_code LIKE '0407020A0%AF' OR

    presentation_code LIKE '0407020A0%AG' OR

    presentation_code LIKE '0407020A0%AH' OR

    presentation_code LIKE '0407020AD%AH' OR

    presentation_code LIKE '0407020AD%AI' OR

    presentation_code LIKE '0407020AD%AP' OR

    presentation_code LIKE '0407020AD%AQ' OR

    presentation_code LIKE '0407020AF%AD' OR

    presentation_code LIKE '0407020AG%AF' OR

    presentation_code LIKE '0407020AG%AG' OR

    presentation_code LIKE '0407020B0%AF' OR

    presentation_code LIKE '0407020B0%AG' OR

    presentation_code LIKE '0407020Q0%AG' OR

    presentation_code LIKE '0407020Q0%AH' OR

    presentation_code LIKE '0407020Q0%AI' OR

    presentation_code LIKE '0407020Q0%DC' OR

    presentation_code LIKE '0407020Q0%DD' OR

    presentation_code LIKE '0407020Q0%DU' OR

    presentation_code LIKE '0407020Q0%DV' OR

    presentation_code LIKE '0407020Q0%DW' OR

    presentation_code LIKE '0407020Q0%EB' OR

    presentation_code LIKE '0407020Q0%EH' OR

    presentation_code LIKE '0407020Q0%EI')

    AND presentation_code NOT IN ('0407020Q0BIACDU','0407020Q0BIABEH')

    Following a codelist review, small changes were made, and the openprescribing definition was changed to match this codelist.

  4. References

  5. Clinical Codelist

  6. API

    To Export Phenotype Details:

    FormatAPI
    JSON site_root/api/v1/phenotypes/PH3450/version/8491/detail/?format=json
    R Package

    # Download here

    library(ConceptLibraryClient)


    # Connect to API

    client = ConceptLibraryClient::Connection$new(public=TRUE)


    # Get details of Phenotype

    phenotype_details = client$phenotypes$get_detail(
     'PH3450',
     version_id=8491
    )

    Py Package

    # Download here

    from pyconceptlibraryclient import Client


    # Connect to API

    client = Client(public=True)


    # Get details of Phenotype

    phenotype_detail = client.phenotypes.get_detail(
     'PH3450',
     version_id=8491
    )

    To Export Phenotype Code List:

    FormatAPI
    JSON site_root/api/v1/phenotypes/PH3450/version/8491/export/codes/?format=json
    R Package

    # Download here

    library(ConceptLibraryClient)


    # Connect to API

    client = ConceptLibraryClient::Connection$new(public=TRUE)


    # Get codelist of Phenotype

    phenotype_codelist = client$phenotypes$get_codelist(
     'PH3450',
     version_id=8491
    )

    Py Package

    # Download here

    from pyconceptlibraryclient import Client


    # Connect to API

    client = Client(public=True)


    # Get codelist of Phenotype

    phenotype_codelist = client.phenotypes.get_codelist(
     'PH3450',
     version_id=8491
    )

  7. Version History

    Version IDNameOwnerPublish date
    8492 High dose long acting opioids (OpenPrescribing) - Pseudo BNF ieuan.scanlon2026-01-26 23:17
    High dose long acting opioids (OpenPrescribing) - Pseudo BNF ieuan.scanlon2026-01-26 23:17
    8490 High dose long acting opioids (OpenPrescribing) - Pseudo BNF ieuan.scanlon2026-01-26 23:17