Skip to content

adamXbot/AUcoverage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Australian Mobile Coverage Checker

A simple, static web page to compare Telstra, Optus and Vodafone (TPG) mobile coverage at an Aussie address, or between two.

🔗 Runs entirely in the browser Live demo

Australian Mobile Coverage Checker — compare Telstra, Optus and Vodafone coverage at an address

Coverage comes from open Australian Government data and is an approximate, predictive estimate. It is not the carriers' live maps.

A data-version toggle lets you switch between the 2025 ACCC Mobile Infrastructure Report (default) and the earlier 2021–22 dataset, and each compares all three networks side by side.

Why now

From 30 June 2026, the ACMA's Telecommunications (Mobile Network Coverage Maps) Industry Standard 2026 requires carriers to publish standardised 4G/5G maps labelled good / moderate / basic / no coverage, and the ACCC has warned providers that coverage claims must line up with those maps. This tool helps consumers compare and sanity-check, then points them at the official, standard-compliant maps.

How it works

Concern Source Notes
"Is this address covered by carrier X?" (2025, default) ACCC Mobile Infrastructure Report 2025 (ArcGIS query, point-in-polygon) Open, keyless, CORS-open. "Total Outdoor" layers: 20 = Telstra, 14 = Optus, 25 + 31 = TPG (own + its coverage on Optus under the MOCN deal)
"Is this address covered?" (2021–22, baseline) Infrastructure RKR by-provider Layers: 0 = TPG, 1 = Optus, 2 = Telstra
Map overlay Same service as the selected version, ArcGIS export image per viewport Rendered under a Leaflet base map
Advanced: compare on the map ArcGIS export with a dynamicLayers renderer override, one overlay per layer Overlay any networks' Coverage / 5G / 4G at once. Colour = network; within a network 5G is vivid, 4G lighter. A colour-blind toggle gives each network×technology combo its own fill shape (Telstra 4G ╱ / 5G ╲, Optus 4G — / 5G ❘, Vodafone 4G ✕ / 5G +; total coverage stays solid) so any overlays are distinguishable without colour. 5G/4G are 2025-only; Vodafone includes its MOCN coverage on Optus. (3G retired — not shown.) Each layer is separate, so toggling one is instant and never re-renders the others.
Advanced: tower sites sites service (2022), queried by map extent Tower sites in the current map view (no address needed), loaded once zoomed in and coloured by carrier — the selected network, or all three
Address → coordinates OpenStreetMap Nominatim ≤1 req/sec, cached, no autocomplete. Prefers a precise address/town point over an admin-boundary (LGA) centroid, and warns when only an area centroid is found
Base map tiles OpenFreeMap vector tiles (MapLibre GL, rendered inside Leaflet) Keyless, no registration, no usage limits, commercial use allowed. Data © OpenMapTiles / OpenStreetMap. Falls back to OpenStreetMap raster tiles if WebGL is unavailable
Distance / "between" Haversine + great-circle sampling (pure JS) Straight line, not road route

The carriers' own maps are proprietary — they can't be legally/technically overlaid on a static site — which is exactly why the app leans on the open government dataset for comparison and deep-links to each carrier for the authoritative detail.

Known limitations (stated in the UI too)

  • Government data is predictive, not measured, and still lags the carriers' live maps (which are updated at least quarterly under the 2026 standard).
  • The 2021–22 dataset understates Vodafone (TPG) (its regional reach grew via the later Optus network-sharing deal); the 2025 dataset fixes this by including TPG's MOCN coverage.
  • Most Telstra MVNOs ride the smaller Telstra Wholesale footprint (Boost is the exception) — so non-Boost Telstra brands may get less than the shaded Telstra area. The open data has no separate wholesale layer, so this is flagged with a note + a link to Telstra Wholesale's own map.
  • Geocoding prefers a precise address or town/suburb point over a shire/LGA-centroid match, and warns when only an area centroid is found — but for best accuracy enter a full street address.
  • The on-map colour comparison (Coverage / 5G / 4G per network) shows the network footprints; per-carrier 5G/4G exist only in the 2025 data. 3G was shut down in 2024, so it isn't offered.

Run it locally

It's static, but geocoding wants an HTTP origin (not file://), so serve the folder:

python3 -m http.server 8000
# then open http://localhost:8000

or in your tool of choice.

Deploy to GitHub Pages

  1. Create a repo and push these files to main.
  2. Settings → Pages → Build and deployment → Source: GitHub Actions (a workflow is included at .github/workflows/deploy.yml), or choose Deploy from a branch → main → / (root).
  3. Your site publishes at https://<user>.github.io/<repo>/.

The included .nojekyll stops GitHub from touching the asset paths.

Project structure

index.html          # page structure + content (works without JS for the official links)
styles.css          # mobile-first, high-contrast, WCAG 2.2 AA
js/config.js        # endpoints, layer IDs, carrier→brand mappings, tunables
js/geo.js           # Haversine + great-circle sampling (pure maths)
js/services.js      # geocoding + coverage queries (all network I/O)
js/map.js           # Leaflet map + dynamic government overlays
js/app.js           # UI controller: form, toggles, results, accessibility

Accessibility

  • The flow is address → map (with the network/technology layer filters) → text results below; the text results are the source of truth and the map is a labelled visual enhancement.
  • Network/technology layers are aria-pressed toggle buttons; labelled inputs; aria-live result announcements.
  • Keyboard operable, visible focus, no colour-only meaning, reflows at 320px / 200% zoom, forced-colors and prefers-reduced-motion support.
  • A colour-blind pattern mode (advanced) gives each network×technology combo its own fill shape (Telstra ╱╲, Optus —❘, Vodafone ✕+) so overlays are distinguishable without relying on colour.

Data sources

Everything runs client-side, straight from the browser — no backend, no API key. The app queries or renders data from four external services, and deep-links out to each carrier's own checker. Below is every source, what it provides, and a link to that root domain's terms of use and privacy policy.

Sources the app queries or renders

Source What it provides Terms of use Privacy policy
Australian Government spatial portalspatial.infrastructure.gov.au (Dept of Infrastructure, Transport, Regional Development, Communications, Sport & the Arts). Data originates from the ACCC Infrastructure RKR audit / Mobile Infrastructure Report; licensed CC BY 2.5 AU. Coverage polygons (point-in-polygon "is it covered?" + map overlays) and mobile tower/site points infrastructure.gov.au/copyright · disclaimers infrastructure.gov.au/privacy
ACCCaccc.gov.au (originator of the coverage dataset) The Mobile Infrastructure Report underlying the data above Disclaimer & copyright Privacy policy
OpenStreetMap / Nominatimnominatim.openstreetmap.org (OpenStreetMap Foundation) Geocoding (address → coordinates). Bound by the Nominatim Usage Policy: ≤1 req/sec, cached, no autocomplete OSMF Terms of Use · data © OSM contributors OSMF Privacy Policy
OpenFreeMaptiles.openfreemap.org (openfreemap.org) Base map vector tiles (rendered via MapLibre GL inside Leaflet). Keyless, no limits, commercial OK Terms / FAQ · OpenMapTiles licence Privacy — no cookies, no user data
unpkgunpkg.com (community CDN, served via Cloudflare) Delivers the Leaflet (1.9.4, BSD-2) and MapLibre GL (4.7.1, BSD-3) libraries + the Leaflet↔MapLibre bridge unpkg project (no formal ToS published) Privacy policy

unpkg caveat: unpkg is a best-effort community CDN with no uptime guarantee or formal terms. The version is already pinned; for production, consider self-hosting Leaflet or serving it from a CDN with a published SLA.

Browse or download the exact coverage data

All of these endpoints and layer IDs live in js/config.js under gov.versions, so they're easy to check or update if the services change.

Carrier checkers the app links out to (not queried)

The tool never scrapes or overlays the carriers' own maps — they're proprietary. It sends you to each carrier's official checker for the authoritative answer, so that carrier's own terms and privacy apply once you click through:

Carrier Coverage checker Terms of use Privacy policy
Telstra our-coverage Terms of use Privacy
Telstra Wholesale (non-Boost MVNO footprint) coverage map Legal — Privacy & Terms Legal — Privacy & Terms
Optus living-network/coverage Legal Privacy
Vodafone (TPG) coverage-checker Website terms of use Privacy

Licences & attribution

  • Coverage & tower data © Commonwealth of Australia — ACCC Audit of Telecommunications Infrastructure Assets (Infrastructure RKR) / Mobile Infrastructure Report, via spatial.infrastructure.gov.au. Licensed CC BY 2.5 AU.
  • Geocoding & map data © OpenStreetMap contributors (Nominatim), under the ODbL.
  • Base map © OpenFreeMap / OpenMapTiles, data © OpenStreetMap contributors.
  • Leaflet — BSD-2-Clause. MapLibre GL JS — BSD-3-Clause.

Telstra, Optus and Vodafone are trademarks of their respective owners, used here nominatively to identify each network. This is an independent tool, not affiliated with or endorsed by any carrier.

Licence

This project's own code is released into the public domain under The Unlicense — do whatever you want with it, no attribution required. See LICENSE.

The data the app displays is not ours to relicense — keep its attributions (ACCC coverage data under CC BY 2.5 AU, OpenStreetMap/Nominatim, OpenFreeMap/OpenMapTiles, Leaflet, MapLibre GL). Details in LICENSE.

Contributions welcome — the carrier→brand lists in js/config.js and index.html drift over time; PRs to keep them current are appreciated.

About

Unofficial Aussie mobile coverage checker

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors