Generative AI & Agentic AISalary, offers and pay mechanics

GST Registration for Freelance Data Work: Tracking ₹20 Lakh

PK
Pankit Kumar
Sr. Data Scientist at Parexel (a Goldman Sachs–backed company) · 27 September 2026 · 4 min read
In this article (6 sections)

Related programme: the Generative & Agentic AI course (3 months).

The short answer

If you freelance on data or AI projects, section 22 of the CGST Act, 2017 requires GST registration once your aggregate turnover in a financial year exceeds ₹20 lakh, or ₹10 lakh if you supply from a special category State. Aggregate turnover counts taxable, exempt and export supplies together, across every business on your PAN. The practical job is a running monthly total that tells you, before you raise the invoice, which one takes you over.

What the section actually tests

Two provisions of the CGST Act do the work.

ProvisionWhat it says, in short
Section 22(1)Register in the State or Union territory you supply from once aggregate turnover in a financial year exceeds ₹20 lakh
Proviso to 22(1)₹10 lakh for special category States, which the Government may raise up to ₹20 lakh on a State's request
Section 2(6)Aggregate turnover includes taxable, exempt and export supplies, computed on an all-India basis for the same PAN

The ₹40 lakh option you may have read about applies only to suppliers exclusively of goods. A consultant writing pipelines, dashboards or retrieval systems supplies services, so the ₹20 lakh line is the relevant one.

Three consequences follow from the wording. The test runs over a financial year, so the count restarts on 1 April; the year used below is 2026-27. Export work counts, even when you expect it to be zero-rated. And two activities on one PAN, say a consulting practice and a small training sideline, share a single total.

A hypothetical year of invoices

Suppose you bill a domestic client ₹1,80,000 every month from April 2026. In August you also invoice ₹2,00,000 to an overseas client for a one-off model evaluation.

MonthDomesticExportRunning total
Apr–Jul₹1,80,000 each–₹7,20,000 by July
Aug₹1,80,000₹2,00,000₹11,00,000
Sep–Dec₹1,80,000 each–₹18,20,000 by December
Jan 2027₹1,80,000–₹20,00,000
Feb 2027₹1,80,000–₹21,80,000

January brings the total to exactly ₹20,00,000. That is not above the limit. February's invoice takes it to ₹21,80,000, and that is the month you cross.

Without the export job, the same domestic work alone reaches ₹19,80,000 by February and ₹21,60,000 in March. The export invoice therefore moved your crossing forward by a month. If you had left it out of your count because it seemed "not GST work", your tracker would have been a month late.

In a special category State, with the ₹10 lakh limit, the August invoice would have been the crossing point: ₹11,00,000 against ₹10,00,000.

The tracker

python
# Synthetic invoices for financial year 2026-27. Replace with your own ledger.
LIMIT = 2000000   # ₹10,00,000 in a special category State

def first_month_over(invoices, limit=LIMIT):
    """invoices: list of (month, domestic_taxable, exempt, export)."""
    running = 0
    for month, domestic, exempt, export in invoices:
        running += domestic + exempt + export
        flag = "OVER" if running > limit else ""
        print(f"{month:<4} {running:>12,} {flag}")
        if running > limit:
            return month, running
    return None, running

months = ["Apr", "May", "Jun", "Jul", "Aug", "Sep",
          "Oct", "Nov", "Dec", "Jan", "Feb", "Mar"]
book = [(m, 180000, 0, 200000 if m == "Aug" else 0) for m in months]

print(first_month_over(book))                              # ('Feb', 2180000)
print(first_month_over([(m, 180000, 0, 0) for m in months]))  # ('Mar', 2160000)
print(first_month_over(book, limit=1000000))               # ('Aug', 1100000)

Run it with next month's expected invoice added before you send that invoice. If the flag appears, you have your answer while you still have time to act on it.

What to record for each invoice

The tracker is only as good as its inputs. Keep one row per invoice with:

  • invoice date and number;
  • client and whether they are in India or abroad;
  • amount, split into the supply categories above;
  • PAN the work was billed under, if you run more than one activity.

The same ledger also serves your income-tax records. Presumptive taxation under the Income-tax Act, 2025 has its own receipts test, which is a separate limit counted over a tax year; presumptive tax vs a salary covers it. Keeping one ledger for both avoids two sets of totals that disagree.

What this article does not settle

  • Section 24. It lists persons who must register whatever their turnover. We did not review it, or any notification under it, so check it before assuming you are below the line.
  • The time allowed to apply once you cross, and what to charge on invoices after registration. These follow from other provisions and portal procedure that are outside the facts checked here. Ask a practitioner or read the GST portal guidance before you invoice past the threshold.
  • Whether a particular receipt is a supply. The tracker assumes every invoice listed is one. If you have mixed income, get the classification checked.

Pricing once you are registered

Crossing the threshold changes what a client sees on your invoice, not only your paperwork. If you quote a flat fee now, decide in advance whether future quotes are stated before or after GST, and say which in the quote. Setting an hourly rate from a target income builds that rate from the income you want, so you can add tax on top rather than absorb it.

Freelance GenAI work is one route learners take after our Generative & Agentic AI add-on, a 3-month programme taught live online, with optional in-person labs at our Noida centre.

Frequently asked questions

Does exactly ₹20 lakh of turnover require registration?

The section 22 test is turnover that exceeds ₹20 lakh in a financial year, so a running total of exactly ₹20,00,000 has not crossed it. The first rupee above it does.

My clients are abroad. Does that turnover count?

Yes. Aggregate turnover as defined in section 2(6) includes export supplies, as well as taxable and exempt supplies, computed across all your businesses on the same PAN.

Are there cases where I must register below the threshold?

Section 24 lists compulsory-registration cases, and notifications can change the position. We have not reviewed them for this article, so check them on the GST portal or with a practitioner before relying on the threshold alone.

PK
Pankit Kumar
Lead Instructor, NeuraPath Academy

Pankit Kumar has 10 years in Data Science & AI, building and shipping production systems in regulated pharma and clinical environments. He is a freelance trainer at Boston Institute of Analytics, AnalytixLabs and Scaler, and has taught this material to thousands of working professionals.

This article is part of our Generative & Agentic AI programme — 3 months. Add practical GenAI, retrieval and agent-building skills to your existing toolkit.

Explore Generative & Agentic AI
Counselling is free · no obligation

Not sure which programme fits?

Tell us your background and we will map it to the right entry point — including saying so when a cheaper programme is the better fit. A counsellor replies within one working day.