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 49ba0e5b4d feat(data): add Kota Bharu location and Q3 2025 data
Add new BAS.MY service location Kota Bharu which began operations
in July 2025. Extend ridership dataset with Q3 2025 monthly data
(July, August, September). Update yearly 2025 totals to reflect
additional three months of data. Update last_updated timestamps
to 2025-10-27 across all data files and documentation.
2025-10-29 17:56:28 +08:00
json feat(data): add Kota Bharu location and Q3 2025 data 2025-10-29 17:56:28 +08:00
markdown feat(data): add Kota Bharu location and Q3 2025 data 2025-10-29 17:56:28 +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 Kota Bharu location and Q3 2025 data 2025-10-29 17:56:28 +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
  • 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.