Statistical Data and Metadata eXchange (SDMX) in Python

pandaSDMX is an Apache 2.0-licensed Python library that implements SDMX 2.1 (ISO 17369:2013), a format for exchange of statistical data and metadata used by national statistical agencies, central banks, and international organisations.

pandaSDMX can be used to:

  • explore the data available from data providers such as the World Bank, International Monetary Fund, Eurostat, OECD, and United Nations;

  • parse data and metadata in SDMX-ML (XML) or SDMX-JSON formats—either:

    • from local files, or

    • retrieved from SDMX web services, with query validation and caching;

  • convert data and metadata into pandas objects, for use with the analysis, plotting, and other tools in the Python data science ecosystem;

  • apply the SDMX Information Model to your own data;

…and much more.


SDMX was designed to be flexible enough to accommodate almost any data. This also means it is complex, with many abstract concepts for describing data, metadata, and their relationships. These are called the “SDMX Information Model” (IM).

This documentation does not repeat the full description of the IM, but focuses on functionality provided by pandaSDMX itself. Detailed knowledge of the IM is not needed to use pandaSDMX; see a usage example in only 10 lines of code, and then the longer Walkthrough.

To learn about the IM and unlock the full power of SDMX, skim a short introduction, consult the linked reference materials, and/or read the API documentation for the pandasdmx.model and pandasdmx.message modules that fully implement the IM.

Get started

Learn more

User guide

Help & development