Skip to main content
The countrystatecity Python packages provide access to countries, states, cities, timezones, currencies, and translations data with full type hints, Pydantic models, and lazy loading. All data is bundled directly — no API key or network requests needed.
Always install using the suffixed package name (e.g. countrystatecity-countries). There is no bare countrystatecity package on PyPI — pip install countrystatecity will not work.

Available Packages

Installation

Install only what you need:

Usage

Countries

States

Cities

Country Details

Timezones

Currencies

Translations

Phone Codes

Features

Type-safe

Full type hints with Pydantic models and mypy support.

Lazy loading

Data loads on first access and caches with LRU cache for minimal memory footprint.

Zero dependencies

Only requires Pydantic — no other external packages.

Full coverage

250+ countries, 5,299+ states, 153,765+ cities with coordinates and metadata.

Data Updates

To get the latest data, upgrade any package:

Source

GitHub Repository

View source, open issues, or contribute.

countrystatecity-countries

Countries, states, and cities on PyPI.

countrystatecity-timezones

Timezone data on PyPI.

countrystatecity-currencies

Currency data on PyPI.

countrystatecity-translations

Translations data on PyPI.

countrystatecity-phonecodes

Phone codes data on PyPI.