GSTR-9 is the annual GST return that regular taxpayers file once per financial year for each GSTIN, consolidating what they reported in GSTR-1 and GSTR-3B. Registered persons with aggregate turnover up to Rs 2 crore are exempt from filing it from FY 2024-25 onwards, and taxpayers above Rs 5 crore must also file the GSTR-9C reconciliation statement. The due date is 31 December following the financial year, so 31 December 2026 for FY 2025-26 unless it is extended. Because a filed GSTR-9 cannot be revised, reconcile your monthly returns and books before you file.
Who this is for and what you will have at the end
This guide is for business owners, accountants and finance staff in India who handle GST filing. It was checked on 29 October 2026. By the end you will know whether you must file GSTR-9, GSTR-9A or neither, whether GSTR-9C applies, when it is due, and what to reconcile before you open the form.
Thresholds and due dates change by notification, so use this as a working guide and confirm against the GST portal (gst.gov.in) and CBIC notifications for your financial year. For the monthly returns that feed the annual one, see GSTR-1 vs GSTR-3B differences, and for late-fee mechanics on monthly returns see GST late fee and interest on GSTR-3B delays.
Which annual return applies to you
The GST portal's FAQ on Form GSTR-9 sets out who files what.
| Taxpayer | Annual return |
|---|---|
| Registered normal (regular) taxpayer, including SEZ unit or developer | GSTR-9 |
| Taxpayer who moved from composition to normal at any time in the year | GSTR-9 (for the normal-taxpayer period) |
| Composition taxpayer | GSTR-9A |
| Casual taxpayer, non-resident taxpayer, Input Service Distributor (ISD), OIDAR service provider | Not required |
Filing is at GSTIN level, so each registration files its own return. A business with registrations in three states has three annual returns to prepare.
For part-year changes between schemes, the portal FAQ says:
- Part-year composition: file GSTR-9A for the composition period and GSTR-9 for the normal-taxpayer period.
- Opted in to composition during the year: file GSTR-9 only for the period as a normal taxpayer.
- Opted out during the year: file GSTR-9 for the period when tax was paid at normal rates.
Thresholds: Rs 2 crore and Rs 5 crore
Two turnover limits decide what you file. The figures below come from Notification No. 15/2025-Central Tax and GSTN's advisory as reported by Taxscan; the portal FAQ itself only says that exemptions and optional filing are set by notification from time to time.
| Aggregate turnover in the financial year | GSTR-9 | GSTR-9C |
|---|---|---|
| Up to Rs 2 crore | Exempt from FY 2024-25 onwards | Not required |
| Above Rs 2 crore up to Rs 5 crore | Required | Not required |
| Above Rs 5 crore | Required | Required, a self-certified reconciliation statement under Rule 80 |
Points to keep in mind:
- The exemption is by notification, so it can change. Check the notification for the financial year you are filing.
- Exempt does not mean your monthly returns stop. GSTR-1 and GSTR-3B obligations continue.
- GSTR-9C is a reconciliation statement between your annual return and your financial statements. File it together with, or after, GSTR-9 for the same year.
- Aggregate turnover is defined in the GST law and is calculated on a PAN basis across registrations, so check the definition before you decide that you fall under a limit. Verify this on the CBIC site for your case.
Due date
The GST portal FAQ gives the due date as 31 December of the subsequent financial year, or the later date the Government sets by notification.
| Financial year | Normal due date |
|---|---|
| FY 2024-25 | 31 December 2025 |
| FY 2025-26 | 31 December 2026 |
GSTN enabled GSTR-9 and GSTR-9C for FY 2025-26 on the portal from 8 October 2026 and issued an advisory on 13 October 2026, according to Taxscan's report. The tile appears only when all GSTR-1 and GSTR-3B returns for the year have been filed. No extension for FY 2025-26 was found at the time of checking, so plan for 31 December 2026 and look at the portal's news page for any change.
If you file late, a late fee applies. The portal FAQ says liability is computed after you click Compute Liabilities, and you cannot file the return until the late fee is paid. File early enough that a portal problem near the deadline does not push you into a fee.
What to reconcile before you file
GSTR-9 is an annual consolidation, so errors from earlier months surface here. The portal FAQ says all GSTR-1 and GSTR-3B returns for the year must be filed first. Reconcile these items before you open the form.
1. Outward supplies: books vs GSTR-1 vs GSTR-3B
Compare total sales in your accounting records with the totals in your GSTR-1 filings and in GSTR-3B for the year. Differences usually come from invoices missed in a month, credit notes, amendments reported in a later period, or timing differences around March and April. The portal auto-populates Tables 4 and 5 and parts of Table 6 from GSTR-1 and GSTR-3B, so your starting figures are what you filed, not what your books say.
2. Input tax credit: GSTR-3B vs GSTR-2B vs books
Table 8A is auto-populated from GSTR-2A (through FY 2022-23) or GSTR-2B (FY 2023-24 onward), according to the portal FAQ. Compare it with the ITC you claimed in GSTR-3B and recorded in your purchase books. Look for supplier invoices that never appeared in the statement, ITC claimed on invoices not in your statement, and reversals you made in one place but not another.
3. Tax paid
Table 9 is auto-populated and is editable only in the tax payable column. Compare the tax payable in the return with the tax you actually paid through cash and credit ledgers during the year.
4. Amendments and credit notes
Look at invoices and credit notes that were amended or issued after the original period. Check that they have been reflected in the right period so the annual figure matches.
5. Items the form cannot fix
The portal FAQ states two limits you should plan around:
- You cannot claim ITC through GSTR-9.
- Additional liabilities not reported earlier can be declared in GSTR-9 but are paid through DRC-03.
If you find unpaid tax, pay it through DRC-03 and report it. If you find missed ITC, check the rules for claiming it through the monthly return mechanism rather than the annual return.
Step by step: filing GSTR-9
- Confirm obligations. Check turnover against the notification thresholds and confirm which GSTINs must file.
- File everything monthly. Make sure every GSTR-1 and GSTR-3B for the year is filed. The portal enables the tile only after that.
- Reconcile. Work through the five areas above and keep a reconciliation sheet.
- Log in to the GST portal. Go to Services, then Returns, then Annual Return, and select the financial year. Confirm the navigation on the portal, since menu labels can change between releases.
- Review auto-populated tables. Most auto-populated fields are editable, except Table 6A, Table 8A and Table 9 (other than the tax payable column), per the portal FAQ.
- Declare differences. Enter additional liabilities or reversals where required and pay any tax through DRC-03.
- Compute liabilities. Click Compute Liabilities, and pay any late fee shown.
- Preview, then file. Check every table before filing, because a filed GSTR-9 cannot be revised.
- If GSTR-9C applies, file it after GSTR-9. The portal provides an offline utility for GSTR-9C.
The GST portal also provides an offline utility for GSTR-9, last updated 8 September 2026 on its download page, useful for larger returns.
Nil GSTR-9
You can file a nil GSTR-9 only if you had no outward or inward supplies, no other liability, no ITC or refund claims, no demand orders, and no late fee for the year. If any of those exist, file a regular return.
Common problems and fixes
| Problem | Likely cause | What to do |
|---|---|---|
| GSTR-9 tile not visible | A GSTR-1 or GSTR-3B for the year is unfiled | File all monthly returns, then refresh |
| Cannot edit a field | Table 6A, 8A and most of Table 9 are not editable | Correct the source return period if possible, or declare differences elsewhere in the form |
| Table 8A differs from your books | Supplier did not report, or timing | Reconcile with GSTR-2B and obtain supplier corrections |
| Return will not file | Late fee unpaid | Pay it after Compute Liabilities |
| Need to correct a filed return | GSTR-9 cannot be revised | Declare and pay differences through DRC-03 where applicable; check the portal FAQ and a tax professional |
| GSTR-9/9C tile missing | GSTN's advisory says all GSTR-1 and GSTR-3B returns for the year must be filed to enable the tile | File any pending monthly returns, then refresh |
Closing checklist
- Checked turnover against the Rs 2 crore and Rs 5 crore thresholds in the latest notification
- Identified every GSTIN that must file, and any composition periods
- All GSTR-1 and GSTR-3B for the year filed
- Sales reconciled between books, GSTR-1 and GSTR-3B
- ITC reconciled between GSTR-2B, GSTR-3B and purchase books
- Tax paid matches ledgers; any extra liability paid via DRC-03
- Due date confirmed on the GST portal news page
- GSTR-9C prepared if turnover is above Rs 5 crore
- Preview checked before final filing, since revision is not possible
Comments
Questions and tips are welcome. Comments are checked by the EpiFive team before they appear; please do not share passwords, phone numbers or other private details.