Skip to content
czechdatasets

Medicine shortages and availability in the Czech Republic since 2008

Every supply report for medicines since 2008 (start, interruption, resumption, end), the shortages derived from them with start and end, and the medicines missing right now. Plus monthly distributor deliveries to pharmacies since 2020. Joins the medicines database on the SÚKL code.

Free sample

One-time payment, final price for a personal licence, switch to business at checkout · data as of 9 November 2026

You are buying the Medicines, medicine shortages, pharmacies and healthcare providers bundle. It also includes: Medicinal products (SÚKL), Healthcare facilities (NRPZS), Pharmacies with opening hours and GPS.

An island with a village pharmacy and a health centre with a green cross and a herb gardenAn island with a village pharmacy and a health centre with a green cross and a herb garden

How much work it saves

Unifying two versions of the interface of SÚKL, the Czech medicines agency, removing 295 duplicate reports, ordering the reports so that a later correction overrides the original plan (matching the SÚKL flag for all 22,516 products), deriving 40,146 shortages and joining 78 monthly DIS-13 files into one table.

Measured on our own build

Lines of code and tests
1,093
Machine time per build
5 mins
AI agent tokens
10m
AI agent run time
21 mins

Tokens and time cover the first working version of the code, written with Claude Fable 5.2. Not counted: researching sources and licences, quality checks and later fixes. Build including source downloads, measured on Apple M5 (10 cores, 24 GB RAM).

  • Free sample: all tables cut down to the Kutná Hora area, in CSV and Parquet. Download the sample
Data as of
9 November 2026
Rows
2.2m
Tables
7
Formats
PostgreSQL, Parquet, CSV, JSON
Source licence
SÚKL terms, commercial use allowed

What’s inside

Reports by marketing authorisation holders on the start, interruption, resumption and end of supply of medicinal products since 2007, with derived shortage intervals and a list of currently unavailable products, plus the monthly DIS-13 distributor deliveries (2020-05 to 2026-10). Linked to the Database of Medicinal Products by SÚKL code (name, ATC, holder). Status evaluated as of 2026-11-10.

TableRows
pripravkyAvailability overview: one row per SÚKL code that has at least one holder report or a DIS-13 record24,656
nedostupneCurrently unavailable products: the last valid report is an interruption or end of supply that has already taken effect and was not followed by a resumption14,472
vypadkyUnavailability intervals derived from the reports: interruptions of supply (until resumption)40,146
hlaseniReports by marketing authorisation holders on the start, interruption, resumption and end of supply of a medicinal product to the Czech market (SÚKL), with name, ATC and holder83,886
hlaseni_nahradySubstitute products given in reports of an interruption or end of supply (long table: report × substitute)195,440
distribuceMonthly deliveries and returns of medicinal products as reported by distributors (SÚKL DIS-13). Row = month × SÚKL code × customer type × movement type1,805,033
ciselnikyThe dataset’s code lists in one table: report types, supply statuses, DIS-13 customer and movement types, dispensing modes and registration statuses40

The reports are statements by marketing authorisation holders, not a measurement of availability in pharmacies. The shortages and the list of unavailable medicines are derived by the rules in the README; they are not an official SÚKL list.

Downloads

Every format contains the same data. Download only the one you need; verify its integrity with the SHA256SUMS file.

FormatFilesSize
PostgreSQLschema.sql with types, keys, indexes and comments, and import.sh, which loads the data from CSV222 kB
ParquetOne file per table (zstd). DuckDB, Polars and pandas read it without an import.723 MB
CSVUTF-8, comma-separated, with a header; large tables as .csv.gz761 MB
JSONAn array of objects; large tables as JSON Lines (.jsonl.gz)7124 MB

Code example

More examples for SQL, DuckDB, Python and Node.js are in the README.md inside the bundle.

What is missing right nowPostgreSQL
-- co teď chybí: registrované přípravky s přerušenými dodávkami, nejdelší výpadky nahoře
SELECT kod_sukl, nazev, doplnek, atc_kod, nedostupne_od, dni, termin_obnoveni, duvod, nahrazujici_kody
FROM sukl_vypadky.nedostupne
WHERE stav_kod = 'preruseno' AND stav_registrace_kod = 'R'
ORDER BY dni DESC;
Was a medicine available on a given day?PostgreSQL
-- byl přípravek dostupný k danému dni? (žádný výpadek, který ten den pokrývá)
SELECT NOT EXISTS (
  SELECT 1 FROM sukl_vypadky.vypadky
  WHERE kod_sukl = '0094113' AND zacatek <= DATE '2024-03-01' AND (konec IS NULL OR konec > DATE '2024-03-01')
) AS dostupny;
Deliveries of one product to pharmaciesDuckDB
-- měsíční dodávky jednoho přípravku do lékáren (dodávky minus vratky)
SELECT obdobi, sum(pocet_baleni) AS baleni
FROM 'parquet/distribuce.parquet'
WHERE kod_sukl = '0094113' AND typ_odberatele_kod = 'LEKARNA' GROUP BY 1 ORDER BY 1;

Medicines, medicine shortages, pharmacies and healthcare providers for 490 CZK.

One-time payment, download right after paying, no account and no subscription. Updates to the dataset are included in the price. All 15 paid datasets together cost 2,490 CZK, 3,510 CZK less than buying them one by one.