Skip to content

bimicroads/australian-mbs-pbs-data

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Australian MBS & PBS Data

Free, machine-readable datasets for the Australian Medicare Benefits Schedule (MBS) and Pharmaceutical Benefits Scheme (PBS).

What's included

File Description Records
exports/mbs-items.csv All MBS item numbers with schedule fees, rebates, and plain English descriptions 6,005 items
exports/pbs-items.csv All PBS listed medicines with co-payments and conditions treated 6,936 items
exports/mbs-summary.json MBS statistics by category 9 categories
exports/pbs-top-medicines.json Top 100 most-listed PBS medicines 100 medicines

Data source

Data sourced from:

Crown Copyright © Commonwealth of Australia. Licensed under CC BY 4.0

Plain English descriptions

Each MBS item and PBS medicine includes a plain English description generated to help patients and non-clinical users understand the Australian healthcare system.

Browse the full interactive lookup at healthitems.au — plain English guide to all MBS items and PBS medicines.

Usage examples

Python

import pandas as pd

# Load MBS items
mbs = pd.read_csv('exports/mbs-items.csv')

# Find all GP consultation items
gp_items = mbs[mbs['category_name'].str.contains('Attendances', na=False)]
print(f"Found {len(gp_items)} GP-related items")

# Items with high schedule fee
high_fee = mbs[pd.to_numeric(mbs['schedule_fee'].str.replace('$','').str.replace(',',''), errors='coerce') > 100]
print(high_fee[['item_number', 'category_name', 'schedule_fee']].head(10))

# Load PBS medicines
pbs = pd.read_csv('exports/pbs-items.csv')
print(f"\nTotal PBS items: {len(pbs)}")
print(f"Unique medicines: {pbs['drug_name'].nunique()}")

R

library(readr)
library(dplyr)

mbs <- read_csv("exports/mbs-items.csv")
pbs <- read_csv("exports/pbs-items.csv")

# Item count by category
mbs %>%
  group_by(category_name) %>%
  summarise(item_count = n()) %>%
  arrange(desc(item_count))

# PBS medicines by ATC category
pbs %>%
  group_by(atc_category) %>%
  summarise(count = n()) %>%
  arrange(desc(count)) %>%
  head(20)

CSV column reference

mbs-items.csv

Column Description
item_number MBS item number
category Category code
category_name Category name (e.g. Professional Attendances)
group MBS group within category
schedule_fee Schedule fee (AUD)
benefit_100 100% Medicare benefit
original_description Official MBS description
plain_english_summary Plain English explanation for patients

pbs-items.csv

Column Description
pbs_item_code PBS item code
drug_name Generic drug name
brand_names Brand name(s)
li_form Form and strength
restriction_type Restriction (Unrestricted / Restricted / Authority)
atc_category ATC pharmacological category
program PBS program
general_copayment General patient co-payment (AUD)
concession_copayment Concession card co-payment (AUD)
conditions_treated Conditions this medicine treats

Update schedule

MBS data updates: January, July, November each year PBS data updates: 1st of each month

Related

License

Data: CC BY 4.0 (Commonwealth of Australia) Plain English descriptions: MIT License

About

Free datasets: Australian Medicare Benefits Schedule (MBS) 6,005 items and Pharmaceutical Benefits Scheme (PBS) 6,936 medicines. Updated 3x/year.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors