02-347-7730  |  Saeree ERP - End-to-end ERP for Thai businesses Contact

Government Budget Code (23-Digit)

  • Home
  • Blog
  • Government Budget Code 23-Digit
Government Budget Code — The 23-Digit Structure Every Executive Must Read
  • 04
  • May

Government accountants and executives reading GFMIS reports or Bureau of the Budget documents will see long codes like 0700-300-001-002-... everywhere. These are not random — they are standardized budget codes that trace every baht from ministry level down to the activity that consumes it.

Executives who cannot read this code cannot read budget reports. They will not know whether a budget line is "personnel for Mission Group A under Plan B of Output C" or "investment for a different plan" — even though both lines, by law, cannot be substituted for each other.

This article unpacks the 23-digit code structure (4-3-3-4-2-4-3 format) layer by layer, with real examples.

In short: Thai government budget codes use 5 layers — (1) Ministry/Agency (4 digits) (2) Mission Group (3 digits) (3) Plan (3 digits) (4) Output/Project (4 digits) (5) Activity + expenditure type (2+4+3 = 9 digits) — totalling 23 digits in the 4-3-3-4-2-4-3 format. Every GFMIS transaction uses this code.

Why So Long?

Because the Thai government's ~1.7 trillion baht annual budget must be traceable line by line — from ministry level all the way to "water bill for building X" under "activity Y" of "plan Z" within "mission group A" of "department B".

The Comptroller-General's Department and Bureau of the Budget data systems must reflect this full hierarchy so reports can be summarized, broken down, and rolled up at any level.

Code Structure — 5 Layers

Layer Name Digits Example
1Ministry / Agency40700 = Ministry of Finance
2Mission Group3300 = Fiscal Mission
3Plan3001 = Fiscal Administration Plan
4Output / Project40002 = Financial Reports Output
5Activity + Expenditure typemultipleactivity + budget type code

So 0700-300-001-0002-... reads as "Ministry of Finance / Fiscal Mission / Fiscal Administration Plan / Financial Reports Output / ..."

Layer 1 — Ministry/Agency Code (4 digits)

The first 4 digits identify the budget owner — using the standard agency-code list maintained by the CGD.

Code Agency
0100Office of the Prime Minister
0200Ministry of Defence
0300Ministry of Foreign Affairs
0700Ministry of Finance
0800Ministry of Tourism and Sports
2500Ministry of Higher Education, Science, Research & Innovation

Note: codes are revised when government structure changes — always reference CGD's latest table.

Layer 2 — Mission Group (3 digits)

Mission Group classifies the agency's primary lines of work — typically 3-7 per ministry. Examples:

  • Ministry of Finance — Fiscal / Revenue / Public Debt missions, etc.
  • MHESI — Higher Education / Science / Research & Innovation
  • Ministry of Public Health — Prevention / Treatment / Rehabilitation

Mission groups are the level at which KPIs are measured and agency performance is evaluated by OPDC.

Layer 3 — Plan (3 digits)

Plans are activity bundles tied to a fiscal year — multiple types:

Plan type Nature
Function-basedRoutine work per the agency's mandate
StrategicAligned to national strategy
IntegratedCross-agency programs (e.g., water, border)
AdministrativeOrg-management work — payroll, facilities

The "Plan" layer is what passes through the Budget Vetting Committee and Parliament. Cannot be changed mid-year except via approved transfer.

Layer 4 — Output / Project (4 digits)

"Output" is what the agency produces from spending the budget — for example:

  • Public-Sector Financial Reports Output (CGD)
  • Inspection Output
  • Vaccine Advisory Output (Department of Disease Control)

"Project" has clear start and end — for example:

  • Government ERP Implementation Project
  • Science Building Construction Project

Layer 5 — Activity + Expenditure Code

The deepest layer breaks down to specific activities under outputs/projects, plus the expenditure-type code (the 5 categories from Budget (Government) vs Budget (Accounting)).

Example:

0700-300-001-0002-01-0100-001
│ │ │ │ │ │ │
│ │ │ │ │ │ └─ Sub-expenditure code
│ │ │ │ │ └────── Budget type (0100=Personnel)
│ │ │ │ └────────── Sub-activity
│ │ │ └─────────────── Output
│ │ └─────────────────── Plan
│ └─────────────────────── Mission Group
└─────────────────────────── Agency

Where the Code Appears

This code appears in nearly every government document:

  • Budget appropriation documents — every line tagged with code
  • Disbursement filings — must specify code to debit
  • GFMIS reports — every transaction has budget code
  • State Audit Office reports — references codes for traceability
  • OPDC reports — outcomes by code

Expenditure-Type Codes Executives Should Know

Within the longer code, the "expenditure type" portion governs how the money is disbursed and which regulations apply.

Code Type Examples
0100PersonnelSalary, allowances
0200OperatingMaterials, water, electricity, telecom
0300InvestmentEquipment, land, buildings
0400SubsidyStudent grants
0500OtherContributions, fund transfers

Real Example — Reading a Code

Suppose you see in a report: 0700-300-001-0002-01-0200-005, amount 50,000 baht, "office supplies".

Decoded:

  • 0700 — Ministry of Finance
  • 300 — Fiscal Mission
  • 001 — Fiscal Administration Plan
  • 0002 — Financial Reports Output
  • 01 — Report Production Activity
  • 0200 — Operating budget
  • 005 — Sub-expenditure "office supplies"

The code carries the full context — which ministry, doing what, under which budget type.

FAQs

Q: Who defines this code?

Bureau of the Budget defines layers 1-4. Each agency proposes activities under each output (layer 5 detail). CGD publishes the standard table for expenditure-type codes.

Q: Can the code change mid-year?

No, not within the year. The next year's appropriations act can adjust structure — proposed via the Bureau of the Budget.

Q: How must a public-sector ERP support this?

Chart of Accounts must map to the 5-layer code with these capabilities:

  • Trace by any layer (e.g., "all transactions under Plan X")
  • Roll up at any layer (e.g., "remaining budget for Mission Group A")
  • Validate code-type compatibility (personnel budget cannot pay for office supplies)
  • Export to GFMIS schema per CGD's spec

About Saeree ERP

Saeree ERP implements a Chart of Accounts that supports the full 5-layer budget code per the Bureau of the Budget and CGD standards — including validation logic that prevents wrong-type spending and a report engine that rolls up at every layer.

Live deployments: TGO, NVI, MHESI, ARDA.

3 Sentences to Remember

  1. The budget code is the DNA of every public-sector transaction.
  2. 5 layers (Agency → Mission → Plan → Output → Activity+Type) decoded one by one.
  3. A government ERP must support all 5 layers + GFMIS schema export.

If you can read the 23-digit code, you can read the public-sector budget.

- The Saeree ERP Team

Related:

This article was prepared from over 20 years of ERP implementation experience for Thai government agencies. Contact sale@grandlinux.com or 02-347-7730.

Looking for a public-sector ERP for your agency?

Free consultation with Government ERP specialists from Grand Linux Solution

Request a Free Demo

02-347-7730 | sale@grandlinux.com

Sureeraya Limpaibul

About the Author

Sureeraya Limpaibul

Managing Director, Grand Linux Solution Co., Ltd. and Founder of Saeree ERP. Available for end-to-end ERP advisory and implementation.