GitPedia

Countries states cities database

🌍 Discover our global repository of countries, states, and cities! πŸ™οΈ Get comprehensive data in JSON, SQL, PSQL, SQLSERVER, MONGODB, SQLITE, XML, YAML, and CSV formats. Access ISO2, ISO3 codes, country code, capital, native language, timezones (for countries), and more. #countries #states #cities

From dr5hnΒ·Updated June 15, 2026Β·View on GitHubΒ·

A comprehensive, community-maintained dataset of **countries, states, cities, and postcodes** β€” published in 11 formats and free under the [Open Database License](LICENSE) **(attribution required)**. The project is written primarily in Python, distributed under the Open Data Commons Open Database License v1.0 license, first published in 2018. It has gained significant community traction with 9,635 stars and 3,003 forks on GitHub. Key topics include: cities, countries, country, csv, geographical-data.

Latest release: v3.2-export.4
<div align="center">

banner

Countries States Cities Database

A comprehensive, community-maintained dataset of countries, states, cities, and postcodes β€” published in 11 formats and free under the Open Database License (attribution required).

License: ODbL-1.0
GitHub stars
release
NPM
PyPI

</div>

Total Regions : 6 <br>
Total Sub Regions : 22 <br>
Total Countries : 250 <br>
Total States/Regions/Municipalities : 5,299 <br>
Total Cities/Towns/Districts : 153,765 <br>
Total Postcodes : 844248 (125 countries) <br>
Total Timezones : 427 (100% IANA coverage) <br>
Last Updated On: May 27, 2026


The two managed products below are the fastest path to shipping. They're actively maintained, billed for sustainability, and back the rest of the ecosystem.

REST API β€” api.countrystatecity.in

Query countries, states, cities, and postcodes from any language. Free tier for prototyping; paid tiers for production.

bash
curl https://api.countrystatecity.in/v1/countries/IN/states/MH/cities \ -H "X-CSCAPI-KEY: $YOUR_API_KEY"

Get an API key β†’ Β·
Documentation Β·
Interactive playground Β·
OpenAPI spec Β·
Status

Export Tool β€” export.countrystatecity.in

Build tailored datasets in your browser β€” pick country, region, format, and field selection, then download.

Launch the Export Tool β†’


Other ways to use the data

<details> <summary><strong>NPM (JavaScript / TypeScript)</strong></summary>
bash
npm install @countrystatecity/countries
js
import { Country, State, City } from '@countrystatecity/countries'; const usStates = State.getStatesOfCountry('US');

GitHub Β·
NPM

</details> <details> <summary><strong>PyPI (Python)</strong></summary>
bash
pip install countrystatecity-countries
python
from countrystatecity_countries import Country, State, City us_states = State.get_states_of_country('US')

GitHub Β·
PyPI

</details> <details> <summary><strong>Direct download (gzipped exports)</strong></summary>

Every format ships as a .gz asset on each GitHub Release.

bash
curl -LO https://github.com/dr5hn/countries-states-cities-database/releases/latest/download/json-cities.json.gz gunzip json-cities.json.gz

Smaller reference files (countries, states, schema) live in the repo. Use git clone --depth 1 for a fast clone.

</details> <details> <summary><strong>Other packages and platforms</strong></summary> </details>

What's in the data

  • 250 countries Β· 5,299 states / regions Β· 153,765 cities Β· 100k+ postcodes across ~50 countries
  • 19 languages of country and state names plus native script
  • 100% IANA timezone coverage for cities
  • Validated foreign keys on every contribution
  • Formats: JSON, MySQL, PostgreSQL, SQLite, SQL Server, MongoDB, XML, YAML, CSV, GeoJSON, TOON (LLM-optimised, ~40% fewer tokens than JSON)
FormatExport timeSizeCompressed
CSV1s40 MB9 MB
MongoDB dump1s30 MB20 MB
MySQL SQL3s86 MB22 MB
JSON4s271 MB18 MB
TOON5s23 MB20 MB
GeoJSON8s208 MB24 MB
XML9s91 MB15 MB
YAML17s68 MBβ€”
SQLite45s89 MBβ€”

Contributing

The easiest way is the Community Manager β€” submit corrections through a web UI with end-to-end tracking.

To edit JSON directly:

  1. Fork and clone (git clone --depth 1).
  2. Edit files under contributions/cities/, contributions/states/, contributions/countries/, or contributions/postcodes/.
  3. Required for new cities: name, state_id, state_code, country_id, country_code, latitude, longitude. Optional: timezone, wikiDataId, native.
  4. Omit id, created_at, updated_at, flag β€” auto-managed on import.
  5. Open a pull request with a clear data source.
json
{ "name": "San Francisco", "state_id": 1416, "state_code": "CA", "country_id": 233, "country_code": "US", "latitude": "37.77493", "longitude": "-122.41942", "timezone": "America/Los_Angeles", "wikiDataId": "Q62" }

Contributions guide Β·
Contribution guidelines Β·
Multi-level territories policy Β·
The cities.type field

Don't edit the auto-generated directories (json/, csv/, xml/, yml/, sql/, etc.). They're rebuilt from MySQL on every release.


License and attribution

Licensed under the Open Database License (ODbL v1.0). Commercial use, modification, and redistribution all permitted. Attribution is required, and derivatives must be shared under the same license.

Data by Countries States Cities Database
https://github.com/dr5hn/countries-states-cities-database | ODbL v1.0

Support

If this project saves you time, please consider supporting its continued maintenance.

Sponsor on GitHub
Buy a coffee

You can also plant a tree on behalf of the project.

Reach out: gadadarshan [at] gmail [dot] com

<a href="https://github.com/dr5hn/"><img alt="GitHub @dr5hn" src="https://img.shields.io/static/v1?logo=github&message=GitHub&color=black&style=flat-square&label=" /></a>
<a href="https://twitter.com/dr5hn/"><img alt="Twitter @dr5hn" src="https://img.shields.io/static/v1?logo=twitter&message=Twitter&color=black&style=flat-square&label=" /></a>
<a href="https://www.linkedin.com/in/dr5hn/"><img alt="LinkedIn @dr5hn" src="https://img.shields.io/static/v1?logo=linkedin&message=LinkedIn&color=black&style=flat-square&label=" /></a>

Sponsors

<p align="center"> <a href="https://cdn.jsdelivr.net/gh/dr5hn/static/sponsors.svg"> <img src='https://cdn.jsdelivr.net/gh/dr5hn/static/sponsors.svg'/> </a> </p>

Disclaimer

Community-maintained data may contain errors or lag behind geopolitical changes. Verify critical data with official sources. Report issues.


<div align="center">

Repo Activity

Thanks to our contributors.

<a href="https://github.com/dr5hn/countries-states-cities-database/graphs/contributors"> <img src="https://contrib.rocks/image?repo=dr5hn/countries-states-cities-database&anon=1" /> </a> </div>

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub β†’

This article is auto-generated from dr5hn/countries-states-cities-database via the GitHub API.Last fetched: 6/15/2026