Every registered regular taxpayer must file an annual return in Form GSTR-9. Section 44(1) sets the due date as 31 December following the end of the financial year. Filing it involves confirming your outward supplies, reconciling your Input Tax Credit (ITC), and reporting any taxes paid in the next financial year that relate to the current one.
Step-by-step filing guide
- Log in to the GST Portal. Go to Services, then Returns, then Annual Return. Select the correct Financial Year and click Search.
- Download system computed forms. Click 'Prepare Online'. Download the System Computed GSTR-9, GSTR-1 summary, and GSTR-3B summary. You need these to check the auto-populated figures.
- Details of outward supplies (Tables 4 and 5). Check your sales and outward liabilities. These are auto-populated from your filed GSTR-1 returns. You can edit these details if you missed reporting a liability during the year, but you will have to pay the extra tax in cash via DRC-03.
- Details of ITC availed (Table 6). Table 6A shows the total ITC you claimed in GSTR-3B. This is locked. You must provide the breakup of this total (inputs, capital goods, input services) in Table 6B to 6O. The total of the breakup must match Table 6A.
- Details of ITC reversed (Table 7). Enter any ITC you reversed during the year under various rules like Rule 42, Rule 43, or Section 17(5).
- Other ITC related information (Table 8). This is the most critical reconciliation. Table 8A auto-populates from GSTR-2B (from FY 2023-24). Verify that your claimed ITC (8B) and ITC claimed in the next year (8C) do not exceed Table 8A. A negative difference in 8D means you claimed more than was reported by your suppliers.
- Compute liabilities and file. Click 'Compute Liabilities'. If there is late fee payable, a tile will appear for payment. Once paid, select the declaration checkbox, choose the authorized signatory, and file using DSC or EVC.
Common mistake: Attempting to edit Table 6A or Table 8A. The GST portal does not allow edits to these fields. Table 6A is exactly what you claimed in GSTR-3B all year. Table 8A is exactly what came in your GSTR-2B. You must work with these numbers.
Worked example: breaking down Table 6
A business has an auto-populated total in Table 6A:
| Field | Amount | Action |
|---|---|---|
| Table 6A (Total from 3B) | ₹8,00,000 | Auto-filled, locked |
| Inputs | ₹6,50,000 | User enters |
| Capital Goods | ₹1,00,000 | User enters |
| Input Services | ₹50,000 | User enters |
| Difference | ₹0 | Must be zero to proceed |
If you enter ₹6,00,000 for inputs, leaving a ₹50,000 difference, the portal will show a warning. The breakup must completely account for the total in 6A.
Frequently asked questions
What is the due date for GSTR-9?
The due date for filing GSTR-9 is 31 December following the end of the financial year, as per Section 44(1).
Can Table 6A be edited?
No. Table 6A is auto-filled with the total ITC availed through GSTR-3B and is non-editable.
Match 12 months of GSTR-2B in seconds
Table 8 requires exact reconciliation of your purchase register against the whole year's GSTR-2B. Our free tool processes 12 months of Excel files instantly in your browser to spot missing invoices. Your files never leave your computer.
Last checked: 02 October 2026. Sources: GSTN GSTR-9 Manual.