A fiscal year that runs from 1 April to 31 March is common: it is the government financial year in the UK, India and Japan, and many companies follow it. QuickSight’s year functions follow the calendar, so the fiscal year comes from one calculated field: the first day of the fiscal year a date belongs to.
Copy and paste
The formulas use April (month 4). Replace each 4 with your start month, or with an Integer parameter.
Fiscal year start of a date (save as {FY Start}):
addDateTime(-1 * mod(extract('MM', {Order Date}) - 4 + 12, 12), 'MM', truncDate('MM', {Order Date}))
Fiscal year label, 2026-27 (save as {FY Label}):
concat(toString(extract('YYYY', {FY Start})), '-', right(toString(extract('YYYY', {FY Start}) + 1), 2))
Fiscal month (1 = April) and fiscal quarter (save the second as {Fiscal Quarter}):
mod(extract('MM', {Order Date}) - 4 + 12, 12) + 1
floor(mod(extract('MM', {Order Date}) - 4 + 12, 12) / 3) + 1
Fiscal YTD up to a reference date (Datetime parameter AsOfDate):
sumIf({Sales},
{Order Date} >= addDateTime(-1 * mod(extract('MM', ${AsOfDate}) - 4 + 12, 12), 'MM', truncDate('MM', ${AsOfDate}))
AND {Order Date} < addDateTime(1, 'DD', ${AsOfDate}))
Fiscal YTD as a line (Order Date by month and {FY Start} in the visual):
runningSum(sum({Sales}), [truncDate('MM', {Order Date}) ASC], [{FY Start}])
How the start is found
mod(month - 4 + 12, 12) is the number of months since the last 1 April: 0 in April, 1 in May, 11 in
March. Going back that many months from the first of the month lands on 1 April of the right year. The
+ 12 keeps the number positive for January to March, because mod is documented for positive numbers.
| Order Date | FY Start | Label | Fiscal month | Fiscal quarter |
|---|---|---|---|---|
| 2025-03-20 | 2024-04-01 | 2024-25 | 12 | 4 |
| 2025-04-02 | 2025-04-01 | 2025-26 | 1 | 1 |
| 2025-09-15 | 2025-04-01 | 2025-26 | 6 | 2 |
| 2026-01-10 | 2025-04-01 | 2025-26 | 10 | 4 |
| 2026-03-05 | 2025-04-01 | 2025-26 | 12 | 4 |
| 2026-04-08 | 2026-04-01 | 2026-27 | 1 | 1 |
| 2026-05-15 | 2026-04-01 | 2026-27 | 2 | 1 |
The label names both calendar years because companies disagree on a single number: some call April 2025
to March 2026 FY2025, after the year it starts in, others FY2026, after the year it ends in.
extract('YYYY', {FY Start}) gives the first convention, and adding 1 gives the second.
Fiscal YTD
With the orders of the Snowflake version of this guide:
| AsOfDate | Fiscal year from | Fiscal YTD |
|---|---|---|
| 2026-05-15 | 2026-04-01 | 250 |
| 2026-03-10 | 2025-04-01 | 460 |
On 15 May the fiscal year is six weeks old: 80 + 120 + 50. On 10 March it is almost complete and includes the orders of April and September 2025 and of January and March 2026.
periodToDateSum(..., YEAR) and periodToDateSumOverTime(..., YEAR) always start on 1 January, so they
don’t fit a fiscal year. The sumIf and runningSum versions above take the start from the formula.
Fiscal quarters on the axis
{FY Start} and the fiscal quarter together identify a fiscal quarter. For a readable axis, combine them:
concat({FY Label}, ' Q', toString({Fiscal Quarter})) gives 2026-27 Q1, which sorts correctly as text.
Checked against the Amazon Quick Sight function reference (October 2026). The example results were recomputed in DuckDB.