The unofficial open data hub for BAS.MY bus ridership statistics in various Malaysian cities. NOTE: BAS.MY Kuching and Kota Kinabalu are currently not included in the statistics. https://techmavie.digital/basmy-opendata
Find a file
Aliff d56f618c28 feat(data): add Kuantan location and Q4 2025 ridership data
- Add Kuantan as new BAS.MY service location (started December 2025)
- Include October, November, December 2025 monthly statistics
- Update 2025 annual totals with complete year data
- Remove provisional status from 2025 data
2026-02-26 00:30:38 +08:00
json feat(data): add Kuantan location and Q4 2025 ridership data 2026-02-26 00:30:38 +08:00
markdown feat(data): add Kuantan location and Q4 2025 ridership data 2026-02-26 00:30:38 +08:00
.gitattributes Initial commit 2025-07-30 00:00:46 +08:00
LICENSE Initial commit 2025-07-30 00:00:46 +08:00
manifest.json Added manifest JSON file for AI guidance 2025-10-13 14:40:18 +08:00
README.md feat(data): add Kuantan location and Q4 2025 ridership data 2026-02-26 00:30:38 +08:00

BAS.MY Open Data: Ridership Statistics

This project provides open, machine-readable ridership statistics for the BAS.MY bus services in various Malaysian cities.

Disclaimer

This is an independent, community-driven project and is not an official open data initiative by the Agensi Pengangkutan Awam Darat (APAD). While the data is sourced from official publications, this project is not affiliated with or endorsed by APAD.

Data Files

The ridership data is available in two formats:

Data Manifest

To assist AI agents in discovering and understanding the data files in this repository, a manifest file is provided in the root directory:

  • manifest.json: A machine-readable JSON file that lists all data files, their paths, and a brief description of their contents.

This file is intended to be used by AI agents to programmatically locate and interpret the data, making it easier to integrate with this repository.

Accessing Data via MCP

For AI agents and other automated systems, the data in this repository can be accessed programmatically using a Model Context Protocol (MCP) server for GitHub.

I recommend using the GitHub MCP server by Smithery.ai:

You can use this server's tools (e.g., get_file_contents) to read the JSON files directly from the repository.

  • Owner: hithereiamaliff
  • Repo: basmy-opendata

Covered Networks

The ridership statistics currently include data for the following BAS.MY service areas:

  • Ipoh
  • Johor Bahru
  • Kangar
  • Kota Bharu
  • Kota Setar
  • Kuala Terengganu
  • Kuantan
  • Melaka
  • Seremban

Excluded Networks

Please note that the following BAS.MY networks are not included in the current dataset yet, but may be added in the future statistic counts:

  • Kuching
  • Kota Kinabalu

JSON Schema

The data in the JSON files follows a consistent schema, detailed below:

{
  "last_updated": "YYYY-MM-DD",
  "source": "Agensi Pengangkutan Awam Darat (APAD)",
  "statistic_type": "total_passengers" | "average_daily_passengers",
  "data": {
    "yearly": [
      {
        "year": 2019,
        "locations": {
          "Ipoh": 1955306,
          "Kangar": 349562,
          // ... other locations
        },
        "total": 5386684
      }
    ],
    "monthly_YYYY": [
      {
        "month": "Jan-YY",
        "locations": {
          "Ipoh": 60449,
          // ... other locations
        },
        "total": 869485
      }
    ]
  }
}

Acknowledgements

The data presented in this project is sourced from the official infographics and statistics published by the Agensi Pengangkutan Awam Darat (APAD). The original source material can be found on their official website:

We extend our gratitude to APAD for making this data publicly available.

License

This project is licensed under the MIT License. See the LICENSE file for details.