Coverage
1,908 rows, 2000-03-31 to 2026-06-30. 1,724 carry a figure. Across 18 geographies, each row carrying its own PSA code.
official statistic
The same quarterly volume across all eighteen regions, back to 2000. PSA declares its unit here as plain metric ton where the national table of the same commodity says metric ton liveweight, so the two are charted together only with that difference stated. The regional split is the only way to watch the ASF collapse arrive one region at a time.
01 · The figures
Computed from the rows during the build, over live rows only — a withdrawn figure is one this site could not stand behind, and reprinting it as a record high would be republishing it under a different heading.
Latest
2,061
39.2%
2026-Q2. metric ton.
Highest
156,941
2018-Q4
Lowest
0
2021-Q1
Range
156,941
Highest minus lowest, across every published row.
Coverage
90%
1,724 of 1,908 rows carry a figure.
Span
26y
2000-03-31 to 2026-06-30
Freshness budget
184d
The rule: 92 days for a quarterly source, times 2 — 184 days. A budget at one cadence fires the moment a release is a day late, and a gate that fires on healthy data is one people learn to ignore.
Geographies
18
Every one of them is in the download, each row carrying its own PSA code.
02 · The shape of it
Hog production volume by region (PSA)
Cordillera Administrative Region (CAR) only — the geography with the most published figures. This series holds 18 in total and every one of them is in the download.
Reading it: the line breaks wherever the source published no figure, and each of those runs is shaded. The vertical axis is fitted to the data and both bounds are labelled; it does not start at zero, because ₱150 to ₱260 on a zero-based axis is a flat line and a fitted one is the same fact made legible.
Each line is that geography's last sixteen periods. They are not all the same period, which is why they are listed rather than ranked against each other — the whole geography is in the download.
| Geography | Latest | Period | Published rows | Recent |
|---|---|---|---|---|
| REGION III (CENTRAL LUZON) region | 58,447 | 2026-Q2 | 106 | |
| REGION IV-A (CALABARZON) region | 58,352 | 2026-Q2 | 106 | |
| REGION X (NORTHERN MINDANAO) region | 51,717 | 2026-Q2 | 106 | |
| REGION VII (CENTRAL VISAYAS) region | 30,137 | 2026-Q2 | 106 | |
| REGION XI (DAVAO REGION) region | 28,622 | 2026-Q2 | 106 | |
| REGION XII (SOCCSKSARGEN) region | 25,212 | 2026-Q2 | 106 | |
| NEGROS ISLAND REGION (NIR) region | 24,731 | 2026-Q2 | 6 | |
| MIMAROPA REGION region | 24,198 | 2026-Q2 | 106 | |
| REGION V (BICOL REGION) region | 22,467 | 2026-Q2 | 106 | |
| REGION IX (ZAMBOANGA PENINSULA) region | 19,495 | 2026-Q2 | 106 | |
| REGION I (ILOCOS REGION) region | 17,789 | 2026-Q2 | 106 | |
| REGION VI (WESTERN VISAYAS) region | 17,424 | 2026-Q2 | 106 |
03 · What is in it
1,908 rows, 2000-03-31 to 2026-06-30. 1,724 carry a figure. Across 18 geographies, each row carrying its own PSA code.
184 of 1,908 rows (10%) carry no figure. Each is a quarterly period the source published without a figure. Nothing is interpolated and nothing is carried forward: the gap is the honest answer and the row says so.
Beyond the period, the value, the source and the access date, which every row in this archive has. Counted from the rows, so a column that stops being filled stops being listed.
first_seen
— 1,908 rows. the date this archive first held a row for that key, set once.
receipt_id
— 1,908 rows. the content-addressed receipt proving which document it came from.
The newest figure is 53 days old, inside its 184-day budget.
The rule: 92 days for a quarterly source, times 2 — 184 days. A budget at one cadence fires the moment a release is a day late, and a gate that fires on healthy data is one people learn to ignore.
04 · Where it comes from
official statistic
Every row carries the exact page or document it was read from, and the date somebody opened it — not just the agency. Those URLs are in the download, one per row, because "PSA OpenSTAT — Philippine Statistics Authority statistical database" is not a citation anybody can follow.
A PXWeb query against PSA OpenSTAT. The table is addressed by its full path, and every dimension this series pins names the code AND the label that code must still read. Both are re-read from the live table's own metadata before anything is written, and a label that has moved refuses the run instead of returning a different commodity at a believable peso figure.
| Field | Value | What guards it |
|---|---|---|
| Table | 2E/LP/PDN/0032E4FPLS0 | The full path from DB/ down, never the basename: 0042M4ARN09.px exists under two folders, one stops in 2021 and the other runs to 2026, and nothing in a response says which answered. |
| Animal Type | 2 — "Hog" | The label is re-read on every run. A code that changed meaning refuses. |
| Units | metric ton | PSA's own PX header, verbatim. Two production tables one geography level apart declare "metric ton, liveweight" and "metric ton"; reading the second as the first would put a claim on this site the source does not make. |
| Period | Period · the reading covers a quarter and the row is dated its last day | The dimension is resolved by name, never by position, and the live value labels have to look like the style declared here. |
| Geography | every geolocation except the national one | Codes in the "livestock" family. PSA runs two schemes that are not translatable by arithmetic, so a code is only ever validated inside its own. |
1 document were read to build this series, each hashed on the exact bytes received. The newest 1 are below; the rest are on the provenance page . Download one, hash it, and either it matches or the publisher has reissued it.
| Document | Read on | Bytes | Rows | sha256 |
|---|---|---|---|---|
| scripts/fetch-psa-swine.mjs | 2026-08-21 | 147,192 | 1,908 | 6ef0a591e9420ceb… |
07 · The tail
two years of a quarterly series, for Cordillera Administrative Region (CAR). The whole thing is in the downloads below — this table is the end of it.
| Period | Value | Source read on |
|---|---|---|
| 2026-Q2 | 5,455 | 2026-08-21 |
| 2026-Q1 | 4,606 | 2026-08-21 |
| 2025-Q4 | 4,708 | 2026-08-21 |
| 2025-Q3 | 5,450 | 2026-08-21 |
| 2025-Q2 | 4,764 | 2026-08-21 |
| 2025-Q1 | 4,479 | 2026-08-21 |
| 2024-Q4 | 4,777 | 2026-08-21 |
| 2024-Q3 | 5,346 | 2026-08-21 |
All of these rows cite: https://openstat.psa.gov.ph/PXWeb/api/v1/en/DB/2E/LP/PDN/0032E4FPLS0.px
08 · Download
Every row carries its source, its URL and the date somebody actually opened it, and the attribution line is repeated on every row rather than in a header — because the unit of loss is the row, not the file.
| File | Format | Size | Rows | What is in it |
|---|---|---|---|---|
| hog-production-regional.csv | text/csv | 654 KB | 1,908 | Published rows only, one row per period. Retracted rows are excluded, so an average taken over this file is correct without filtering. Null values are the token NA. |
| full/hog-production-regional.csv | text/csv | 687 KB | 1,908 | Every row this archive has ever held, including withdrawn ones, with a status column and the retraction date and reason. Use this to audit the archive, not to compute on. |
| hog-production-regional.json | application/json | 799 KB | 1,908 | The same rows as the full CSV, as JSON, with the coverage summary and the licence. |
| hog-production-regional.parquet | application/vnd.apache.parquet | 17 KB | 1,908 | The published rows with types: the numeric columns are doubles and a missing figure is a real null rather than the NA token a CSV has to write. |
Sizes: the real ones, from the same call that produced the bytes the endpoint serves. There is deliberately no Parquet of the full file — the withdrawn rows are the ones nobody may compute on without looking.
Every series stacked under one schema, typed, with real nulls. It is not this series — kept in its own block so nobody takes the whole archive by mistake.
09 · Related
Each of these states its relation. A related list with no stated relation is a list of guesses, and the strongest ones here are facts about the source rather than editorial judgements.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
Supply — what the country makes, kills and imports.
10 · Cite it
Attribution is the only condition, and it is what keeps a figure traceable once it has been copied twice.
Plain text
Baboy PH state-of-the-industry archive, series "hog-production-regional". CC BY 4.0. https://baboyph.com/data/hog-production-regional
BibTeX
@misc{baboyph-hog-production-regional,
title = {Hog production volume by region (PSA)},
author = {{Baboy PH}},
howpublished = {\url{https://baboyph.com/data/hog-production-regional}},
note = {metric ton. CC BY 4.0.},
urldate = {2026-08-21},
} Straight at the data
https://baboyph.com/data/hog-production-regional.csv
Licence: CC BY 4.0. The figures themselves are official statistics published by the agencies named above; what this archive adds is the retrieval, the provenance on every row, and the refusals.