Broadband Plans API

A free, open JSON feed of every active NBN and broadband plan we track in Australia , provider, technology, typical evening speed, price, intro offers, data, contract and setup. No sign-up, no key. Use it in your own apps, comparisons or research.

All we ask: show a visible, do-follow link back to Oz Broadband Review wherever the data appears. Grab the snippet below.

Attribution (required)

Paste this somewhere visible near the data. It must stay do-follow (don’t add rel="nofollow"):

Renders as: Broadband plan data by Oz Broadband Review  —  a normal do-follow link.

The dataset is licensed CC BY 4.0: free for any use, including commercial, as long as the attribution link above stays visible. Looking for headline numbers rather than raw data? See Australian broadband in numbers.

Endpoint

GET
https://www.ozbroadbandreview.com/api/plans.php

Returns JSON: a meta object (source, attribution, disclaimer, count) and a plans array. CORS is open, so you can call it straight from the browser.

Parameters (all optional)

ParameterTypeExampleDescription
technologystringNBNAccess technology: NBN, ADSL2, Wireless, Cable, Satellite, Fibre
providerslugaussiebroadbandSingle provider (slug as shown in review_url)
typestringResidentialResidential or Business
max_pricenumber70Maximum monthly cost (AUD)
min_speednumber50Minimum typical evening speed (Mbps)
limitinteger500Max rows returned (default & cap: 1000)

Sample queries

Code samples

cURL
curl "https://www.ozbroadbandreview.com/api/plans.php?technology=NBN&max_price=70"
JavaScript
const res = await fetch(
  'https://www.ozbroadbandreview.com/api/plans.php?min_speed=100'
);
const data = await res.json();
console.log(data.meta.count + ' plans');
data.plans.forEach(p =>
  console.log(p.provider, p.plan_name, p.monthly_cost_aud)
);
Python
import requests

r = requests.get(
    "https://www.ozbroadbandreview.com/api/plans.php",
    params={"technology": "NBN", "max_price": 70},
)
data = r.json()
for p in data["plans"]:
    print(p["provider"], p["plan_name"], p["monthly_cost_aud"])
PHP
<?php
$json = file_get_contents(
    'https://www.ozbroadbandreview.com/api/plans.php?provider=superloop'
);
$data = json_decode($json, true);
foreach ($data['plans'] as $p) {
    echo $p['provider'].' '.$p['plan_name'].' $'.$p['monthly_cost_aud']."\n";
}

Example response

JSON (trimmed)
{
  "meta": {
    "source": "Oz Broadband Review",
    "source_url": "https://www.ozbroadbandreview.com/",
    "attribution": {
      "required": true,
      "text": "Plan data provided by Oz Broadband Review",
      "link_html": "<a href=\"https://www.ozbroadbandreview.com/\" rel=\"dofollow\">Oz Broadband Review</a>",
      "terms": "Free to use. In exchange, you must display a visible, do-follow link back..."
    },
    "disclaimer": "Plan data is checked roughly weekly but may be out of date...",
    "license": "Free for any use with attribution (do-follow link back). No warranty.",
    "generated_at": "2026-06-01T09:00:00+00:00",
    "count": 236,
    "docs": "https://www.ozbroadbandreview.com/all-plans.php"
  },
  "plans": [
    {
      "provider": "Superloop",
      "provider_slug": "superloop",
      "plan_name": "Superloop NBN 100/20",
      "technology": "NBN",
      "sub_technology": "Fixed Line",
      "speed_mbps": 100,
      "monthly_cost_aud": 79,
      "intro_cost_aud": 69,
      "intro_months": 6,
      "data": "Unlimited",
      "contract_months": 0,
      "setup_fee_aud": 0,
      "type": "Residential",
      "last_updated": "2026-05-28",
      "review_url": "https://www.ozbroadbandreview.com/company/superloop"
    }
  ]
}

Rate limits & fair use

Light limit of 300 requests per hour per IP (returns 429 with X-RateLimit-* headers when exceeded). The full dataset is ~236 plans in one call, so cache it your end rather than polling, refreshing daily is plenty.

Accuracy: we check and update plan data roughly weekly, but prices and plans change constantly and errors happen. Always confirm details with the provider before relying on them. Data is supplied as-is, with no warranty.

← Browse all plans in a table  ·  See our top NBN picks