Reporting periods
Distinguish fiscal years, quarters, year-to-date values and point-in-time balances.
Financial data is indexed by the company's fiscal year, the year it uses for financial reporting. A fiscal year may end in a month other than December. Finbar uses different period formats for document filters and dataset values.
Document periods
Document filters use compact strings such as 2025Y for fiscal year 2025 or
2025Q2 for its second quarter. start_period and end_period are inclusive:
both boundary periods are included.
These filters refer to the period a report covers. They do not filter by the
date the company published the report. Document results include period,
report_date, and publish_date as separate fields.
Dataset periods
Dataset periods specify the fiscal year, the ending month within that fiscal year, and the number of months covered:
{"year": 2025, "end_month": 12, "duration_months": 12}
| Field | Meaning |
|---|---|
year | The fiscal-year label |
end_month | Month 1–12 within that fiscal year; 12 means the fiscal year-end |
duration_months | Length of the interval; 0 means a value at a point in time |
For a company whose fiscal year ends in September, end_month: 12 still means
its fiscal year-end, not December. Use returned periods rather than converting
calendar dates into these fields yourself.
Different values at the same fiscal month
| Example | end_month | duration_months | What it measures |
|---|---|---|---|
| Second-quarter revenue | 6 | 3 | Revenue earned in fiscal months 4–6 |
| First-half revenue | 6 | 6 | Revenue earned in fiscal months 1–6 |
| Cash at the end of the first half | 6 | 0 | A balance at the end of fiscal month 6 |
| Full-year revenue | 12 | 12 | Revenue earned over the fiscal year |
The duration cannot exceed end_month. A quarter, a year-to-date value and
a point-in-time balance are separate observations even when they end in the
same month.
Choosing periods for a query
| Mode | Use it when | Behavior |
|---|---|---|
exact | You need specific annual, quarterly or point-in-time observations | Selects the complete period objects you supply, including duration |
fiscal_range | You need all available observations between two fiscal month ends | Includes both ends and every available duration; use duration 0 on the range endpoints |
trailing | You need recent history from the selected series | Selects a window of months ending at the latest populated historical period in those series |
A trailing window selects existing observations; it does not calculate a
trailing-twelve-month total. Range and trailing selections may include both
quarterly and year-to-date observations. Use exact when you need a particular
duration.
Exact selections accept up to 120 period objects. Range and trailing selections are limited to 120 months. See query examples for the request format.
Availability and gaps
The catalogue's periods array lists all historical periods found anywhere in
the dataset. The same list appears on every catalogue page. A particular series
may have no value for some of those periods; its query result will contain
null at those positions.
See values and sources for how returned periods line up with values.