Skip to main content

Bridge Restrictions - Implementation Status

Last Updated: October 16, 2025 Database Table: road_restrictions Total Records: 116,668

Summary

VanSafe's bridge restrictions database provides comprehensive coverage of bridge height clearances, load limits, and road restrictions across Australia. The data combines national NHVR (National Heavy Vehicle Regulator) data with state-specific datasets from 6 Australian states.

Key Statistics

Total Restrictions: 116,668
├─ NHVR (National): 101,333 (86.8%)
├─ Victoria: 6,540 (5.6%)
├─ Western Australia: 3,158 (2.7%)
├─ Queensland: 2,000 (1.7%)
├─ ACT: 1,314 (1.1%)
├─ Tasmania: 1,170 (1.0%)
└─ New South Wales: 1,153 (1.0%)

Caravan Impact:

  • Affects caravans: 15,958+ (13.7%)
  • Safe for caravans: 100,710+ (86.3%)

Height Clearances: 5,563 detailed measurements (VIC: 4,410 + NSW: 1,153)

Data Sources

1. NHVR (National) - ✅ Complete

  • Source: National Heavy Vehicle Regulator
  • Records: 101,333 restrictions
  • Coverage: National heavy vehicle network
  • Affecting Caravans: 11,489 restrictions
  • Script: scripts/collect-nhvr-restrictions.ts
  • Command: npm run db:import-nhvr-restrictions

Data Quality:

  • ✅ National coverage across all states
  • ✅ Multiple layer types (restricted routes, conditional routes, height clearances)
  • ⚠️ Most records lack specific height/width/weight values (stored in nhvr_properties JSON)
  • ✅ Good categorization of restriction types

2. Tasmania - ✅ Complete

  • Source: State Growth Tasmania
  • Records: 1,170 restrictions (42 bridges, 1,128 roads)
  • Affecting Caravans: 194 restrictions
  • Load Limits Range: 2t - 50t
  • Script: scripts/import-tas-bridges.ts
  • Command: npm run db:import-tas-bridges

Data Quality:

  • ✅ Complete Tasmania coverage
  • ✅ Actual load limit values in tonnes
  • ✅ Bridge and road names included
  • ✅ Asset owner information

3. Queensland - ✅ Complete

  • Source: Queensland Transport and Main Roads
  • Records: 2,000 state-controlled bridges
  • Script: scripts/import-qld-bridges.ts
  • Command: npm run db:import-qld-bridges

Data Quality:

  • ✅ State-controlled bridges across Queensland
  • ✅ Geometry data included (Point and LineString)
  • ✅ Comprehensive coverage of major roads
  • ✅ ArcGIS REST API provides reliable access

4. Western Australia - ✅ Complete

  • Source: Main Roads Western Australia
  • Records: 3,158 structures
  • Affecting Caravans: 66 structures
  • Script: scripts/import-wa-bridges.ts
  • Command: npm run db:import-wa-bridges

Data Quality:

  • ✅ Comprehensive structures dataset (bridges, tunnels, sign gantries)
  • ✅ GeoJSON format available via ArcGIS Open Data
  • ✅ Includes structure types and IDs
  • ✅ Regular updates from Main Roads WA

5. Australian Capital Territory - ✅ Complete

  • Source: ACT Government - TCCS
  • Records: 1,314 bridge assets
  • Script: scripts/import-act-bridges.ts
  • Command: npm run db:import-act-bridges

Data Quality:

  • ✅ All bridge assets in ACT
  • ✅ Socrata API provides reliable JSON access
  • ✅ Includes asset types, ownership, location data
  • ✅ Complete ACT coverage

6. New South Wales - ✅ Complete

  • Source: Transport for NSW Open Data Hub
  • Records: 1,153 vertical clearances
  • Affecting Caravans: 23 restrictions
  • Height Range: 2.19m - 18.10m
  • Average Clearance: 5.56m
  • Danger Level: 10 bridges (< 3.0m)
  • Script: scripts/import-nsw-bridges-excel.ts
  • Command: npm run db:import-nsw-bridges-excel

Data Quality:

  • ✅ Comprehensive NSW state roads coverage
  • ✅ All records have accurate height clearance measurements
  • ✅ Complete coordinate data for mapping
  • ✅ Detailed bridge descriptions and locations
  • ✅ Regional and zone information included

Implementation Notes:

  • Excel file (XLSX) parsed using xlsx library
  • Data from "Min Vertical Clearance" sheet
  • Includes bridge numbers, descriptions, and road numbers
  • Last updated: October 2023

7. Victoria - ✅ Complete

  • Source: Transport Victoria / VicRoads
  • Records: 6,540 road bridges
  • With Height Data: 4,410 bridges with clearance measurements
  • Affecting Caravans: 3,992 restrictions
  • Height Range: 0.20m - 36.80m
  • Script: scripts/import-vic-bridges-csv.ts
  • Command: npm run db:import-vic-bridges-csv

Data Quality:

  • ✅ Comprehensive Victoria bridge dataset
  • ✅ 4,410 bridges with actual height clearance data
  • ✅ Includes rail overpasses (90 identified)
  • ✅ Complete coordinate data for mapping
  • ✅ Bridge types, structure forms, and status included
  • ⚠️ Some bridges lack specific height measurements

Implementation Notes:

  • CSV file downloaded from Transport Victoria Open Data Portal
  • Filters out invalid placeholder values (9999m)
  • Validates height clearances (0-50m range)
  • Flags bridges affecting caravans (< 3.5m clearance)

8. South Australia - ⚠️ Limited Scope

  • Source: data.sa.gov.au
  • Status: ⚠️ Dataset limited to Adelaide City Council area only
  • Coverage: Adelaide metro area only (not statewide)
  • Decision: Skip SA-specific import, rely on NHVR national data

Limitations:

  • Only covers Adelaide City Council jurisdiction
  • Excludes state highways and regional bridges
  • NHVR data likely provides better SA coverage

9. Northern Territory - ⚠️ No State Dataset

  • Coverage: NHVR national data only
  • No dedicated NT government dataset available

Import Commands

Import Individual States

# Import NHVR national data
npm run db:import-nhvr-restrictions

# Import individual states
npm run db:import-tas-bridges
npm run db:import-qld-bridges
npm run db:import-wa-bridges
npm run db:import-act-bridges
npm run db:import-nsw-bridges-excel
npm run db:import-vic-bridges-csv

Import All States

# Import all state-specific bridge data sequentially
npm run db:import-all-state-bridges

This runs TAS, QLD, WA, ACT, VIC, and NSW imports in sequence.

Analysis Commands

# Analyze bridge restrictions coverage
npm run db:analyze-bridge-restrictions

# Extract structured data from NHVR properties
npm run db:extract-nhvr-properties

# Analyze VIC missing heights
npm run db:analyze-vic-gaps

# Validate against OpenStreetMap
npm run db:validate-osm

Data Quality Assessment

Strengths

Comprehensive national coverage via NHVR (101,333 records) ✅ State-specific bridge data for NSW, VIC, TAS, QLD, WA, ACT (15,335 records) ✅ 15,958+ caravan restrictions identified and flagged ✅ 5,563 height clearance measurements (NSW: 1,153 + VIC: 4,410) ✅ Geometry data for mapping and routing across all states ✅ Metadata preserved in nhvr_properties JSON ✅ Multiple reliable sources (Excel, ArcGIS APIs, CSV imports, Socrata API, GeoJSON)

Gaps

⚠️ Limited specific measurements (height/width/weight) in some NHVR data ⚠️ No state-specific SA/NT data beyond NHVR ⚠️ Some VIC bridges lack height measurements (2,130 records)

Improvements Completed

  1. NHVR Property Parsing: Extracted structured data from nhvr_properties JSON
  2. OSM Validation: Cross-referenced with OpenStreetMap bridge height tags
  3. VIC Missing Heights: Investigated data sources for missing heights (45 critical rail overpasses identified)

See Data Quality Improvements for detailed report.

Usage Examples

Query Caravan-Unsafe Bridges in Tasmania

const { data } = await supabase
.from('road_restrictions')
.select('*')
.eq('state', 'TAS')
.eq('affects_caravans', true)
.order('max_weight_tonnes', { ascending: true });

Find Low Clearances Near Route

const { data } = await supabase
.from('road_restrictions')
.select('*')
.not('max_height_meters', 'is', null)
.lt('max_height_meters', 3.5)
.gte('latitude', minLat)
.lte('latitude', maxLat)
.gte('longitude', minLon)
.lte('longitude', maxLon);

Status

🟢 Production Ready

  • ✅ National network via NHVR (101,333 records)
  • ✅ 6 states with detailed bridge data (NSW, VIC, QLD, WA, ACT, TAS)
  • ✅ 5,563 height clearance measurements
  • ✅ 15,958+ caravan-specific restrictions identified
  • ⚠️ SA/NT limited to NHVR data

Recommendation: System is production ready with comprehensive coverage. Current data provides sufficient detail for caravan route planning across all Australian states.

Attribution