Use your browser's Print command and choose “Save as PDF” to keep a copy. Each chapter starts on a new page.

GovGlider

California Agency Chart of Accounts: Manual

Release 2027.03 · prepared September 29, 2026 · www.govglider.com/cacoa

  1. About the CACOA: Why a common chart of accounts
  2. About the CACOA: Relationship to GASB and GAAP
  3. About the CACOA: Design principles
  4. About the CACOA: Adoption paths
  5. About the CACOA: Real-world practices
  6. Using the chart: The account string
  7. Using the chart: Local detail and releases
  8. FTR guide: How the Cities FTR is built
  9. FTR guide: Revenues (forms 15-23)
  10. FTR guide: Expenditures (forms 24-29)
  11. FTR guide: Other financing and fund balance (form 30)
  12. FTR guide: Balance sheets (forms 37, 38, 39, 40)
  13. FTR guide: Enterprise, internal service, and fiduciary funds (forms 03-13, 30.5)
  14. FTR guide: How the crosswalk works
  15. FTR guide: Review and submission
  16. FTR guide: Other State Controller reports

About the CACOA

Why a common chart of accounts

California's cities, special districts, and joint powers authorities all report to the same State Controller, follow the same GASB standards, and answer to the same kinds of auditors. Yet almost every one of them keeps its books in a chart of accounts it invented for itself. Each year that difference is paid for again: in mapping workbooks rebuilt by hand, in consultants hired to translate local codes into state report lines, and in staff who have to relearn the numbering whenever they change employers.

The California Agency Chart of Accounts (CACOA) is a free, open standard that removes most of that translation work. It gives agencies a shared structure for funds, departments, functions, and objects, and it publishes the connection from that structure to the State Controller's Financial Transactions Report (FTR) in advance. An agency that codes its ledger with CACOA gets its FTR placement from the code itself instead of from a mapping exercise every year.

What the CACOA is

  • A multi-dimensional chart of accounts: fund, department, function, and object are separate codes that each mean one thing.
  • Reporting-first: every posting code has a published destination on the Cities FTR.
  • Adoptable in steps: an agency can map its existing chart to CACOA, adopt it for new accounts only, or convert fully.
  • Extensible: reserved local-detail ranges let an agency add its own detail without breaking statewide rollups.
  • Open: the tables, crosswalk, and documentation are published under the MIT License and may be used, changed, and shared freely. The license does not cover any agency's financial data.

What the CACOA is not

  • It is not a mandate. No agency is required to use it.
  • It is not a replacement for GASB standards or for professional judgment.
  • It is not a software product. It works with any ERP that can store a segmented account string.

Who it is for

  • Cities, which file the Cities FTR and get the most direct benefit from the published crosswalk.
  • Special districts and joint powers authorities, which can use the same structure for budgeting, audits, and their own State Controller reports.
  • Any public agency outside the school system. Schools already have a statewide chart, the Standardized Account Code Structure (SACS). The CACOA exists partly to ask why local governments should not have the same advantage.

Why it matters

Compliance work does not deliver a single pothole repair or library hour. Every dollar spent reconciling one agency's private numbering system to a state form is a dollar not spent on local programs. A common chart lets the state, auditors, software vendors, and neighboring agencies all read the same books the same way. The CACOA is published as a working proposal for that common chart: complete enough to use today, and open to correction by anyone who uses it.

About the CACOA

Relationship to GASB and GAAP

The Governmental Accounting Standards Board (GASB) sets generally accepted accounting principles for state and local governments. The CACOA does not compete with those standards and does not change them.

  • GASB decides what must be recognized, measured, and disclosed. When revenue is earned, whether a lease is a liability, how a pension is measured.
  • The CACOA decides where it is recorded. Which fund, which object, which function, and therefore which line of each report.

In practice the two meet in the object descriptions. Each CACOA object carries a plain-language description, a note on the related GASB guidance, accounting and reporting notes, examples, and exclusions. The notes point to the standard; they do not restate or reinterpret it.

What the structure reflects

The code blocks follow the way governmental accounting already works:

  • Fund accounting. Funds are the unit of accountability, and fund categories (general, special revenue, capital projects, debt service, permanent, enterprise, internal service, fiduciary) follow GASB Statement 54 and Statement 84.
  • Measurement focus. Governmental funds use the current financial resources focus and modified accrual basis. Capital assets, long-term liabilities, and pension and OPEB balances for governmental activities belong in the government-wide ledger (fund 980), not in the governmental funds.
  • The statement of net position elements. Assets, deferred outflows of resources, liabilities, deferred inflows of resources, and net position each have their own object class (GASB Statements 63 and 65).
  • Newer standards. Leases (GASB 87), subscription-based IT arrangements (GASB 96), and compensated absences (GASB 101) have dedicated codes, because the FTR reports them on separate lines.

Where judgment stays local

A chart of accounts cannot make a recognition decision. Whether a grant is restricted, whether a transfer is a loan, or whether a payment is a reimbursement are judgments the agency and its auditors make. The CACOA makes those decisions visible by giving each outcome its own code, so the choice is recorded once and reported consistently.

About the CACOA

Design principles

1. Reporting first

The test for every code is simple: when an amount is posted here, where does it go on each required report? The CACOA answers that question in advance and publishes the answer as a crosswalk. Agencies still post the way their operations require; the chart just makes sure the posting already carries its reporting meaning.

2. Objects are the anchor

The object code says what the money is: a tax, a fee, a salary, a bond payment, a receivable. Objects carry most of the comparability across agencies, the same way object codes do in the school system's SACS structure. The fund says whose money it is, the function says what service it supports, and the department says who is responsible for it.

3. One meaning per code

Each dimension answers one question. Departments do not stand in for functions, functions do not stand in for funds, and objects do not carry program information. When a code tries to answer two questions, reports built on it end up needing manual adjustment.

4. Deterministic, not approximate

Given a fund, an object, and a function, the CACOA crosswalk returns exactly one FTR line for each part of the report. The published coverage report checks every combination for gaps and conflicts. If a rule is uncertain, it is marked for review rather than left ambiguous.

5. Local detail without breaking rollups

Every block of universal codes is followed by reserved local-detail ranges. An agency can add as much detail as it needs inside those ranges. A local code rolls up to its universal parent and, where the FTR asks for more detail than the universal codes provide, declares the FTR line it reports on.

6. Silent defaults for small agencies

Function 0000 and department 00 mean "not tracked." A small agency can post with fund and object alone and still produce a correct FTR. Functional detail comes from each department's default function, or from the function code when the agency is ready to use it.

7. Stable codes, visible changes

A published code keeps its meaning. New codes arrive as proposed in a draft release, are reviewed, and become adopted when the release is approved. Every change is listed in the changelog with the reason for it.

8. Reporting profiles

The same ledger feeds several reports: the FTR, the budget, the annual comprehensive financial report, and management dashboards. Each report is a profile, a published set of rollups over the same codes, so agencies can share report designs without sharing identical charts.

About the CACOA

Adoption paths

The CACOA is meant to be adopted in steps. Each step is useful on its own.

Path 1: Map (keep your chart)

  • Keep the existing chart of accounts and posting practices.
  • Map each local account to a CACOA fund, object, and function in a crosswalk table.
  • Produce the FTR and other reports from the mapped trial balance.

Best for: small agencies, agencies catching up on audits, and anyone who wants results before changing anything.

What it costs: one careful mapping, then a few minutes each year for new accounts. The published crosswalk supplies the FTR side, so the agency only maps its own accounts to CACOA codes, not to hundreds of FTR fields.

Path 2: Blend (new accounts follow CACOA)

  • The existing chart stays active.
  • New accounts are created with CACOA numbering or carry a CACOA code as an attribute.
  • Validation rules flag unmapped or ambiguous accounts before year end.

Best for: mid-sized agencies and agencies preparing for a system change.

Path 3: Convert (CACOA is the chart)

  • CACOA codes are the posting codes.
  • Local detail lives in the reserved local-detail ranges.
  • The FTR, budget, and financial statement groupings come straight from the ledger.

Best for: new agencies, ERP replacements, and agencies that want the lowest ongoing reporting cost.

Which path saves the most?

The savings grow with each step, but the first step is where most of the annual FTR effort disappears: once accounts are mapped to CACOA codes, the FTR mapping is inherited instead of rebuilt. Agencies moving to a new ERP should start from Path 3; converting later costs more than starting clean.

Adopting the CACOA turns any of the three paths into a plan that fits inside one fiscal year, with what to hand the auditor and a summary for the governing body.

About the CACOA

Real-world practices

Plenty of legitimate practices do not fit neatly into a textbook. The CACOA handles them by giving each one a clear home rather than forcing a reclassification.

Events and special programs

Some agencies track festivals, emergencies, or one-time programs as their own accounts. In the CACOA an event is a project or program attribute, not an object: the costs keep their normal objects (salaries, supplies, contracts) and the event is tracked alongside them. Emergency costs keep their true function (usually disaster preparedness, function 2400) so they report correctly and can be claimed for reimbursement.

Developer deposits and pass-through money

Developer deposits, refundable fees, and money collected for other agencies are liabilities, not revenue. The CACOA provides deposit (2130, 2290) and due-to-other-governments (2120) codes, and custodial funds (810-849) for money the agency holds for others. Revenue is recognized only as the agency earns it.

Reimbursements and overhead

When one fund pays a cost that belongs to another, the fund that bears the cost records the expenditure and the fund that paid first records a reduction of expenditures, not revenue. The State Controller's instructions treat cost allocation plans the same way. Objects 5600 (cost allocation) and 5610 (internal service charges) identify these charges in the fund that pays them.

Suspense and clearing accounts

Payroll clearing (4980), expenditure clearing (5980), and asset and liability suspense codes (1080, 2180) exist because real systems need them. They should be empty at year end. The crosswalk still places any leftover balance, so nothing disappears from the report, and validation flags the balance for cleanup.

When something truly does not fit

Use a local-detail code, describe it, and declare the FTR line it belongs on. Then suggest a universal code. The next release may add it.

Using the chart

The account string

A CACOA posting uses four codes. Written together they form the account string:

Dimension Digits Answers Example
Fund 3 Whose money is it? 100 General Fund
Department 2 Who is responsible? 30 Police
Function 4 What service does it support? 2100 Police
Object 4 What is it? 4000 Salaries & Wages – Regular

Written out: 100-30-2100-4000. Agencies may store the segments in any order their system prefers; the meaning is in the codes, not the punctuation.

Funds

Three digits, grouped in blocks by fund category:

Block Category
100-299 General fund and special revenue funds (295 is a permanent-fund template)
300-399 Capital projects funds
400-499 Debt service funds
500-699 Enterprise funds, one ten-code block per enterprise type
700-799 Internal service funds
800-899 Fiduciary funds (custodial and trust)
900-999 System funds: 980 government-wide conversion ledger, 999 pooled cash clearing

Every fund carries a fund category (general, special revenue, enterprise, and so on). The category decides which FTR form and column the fund reports on. Enterprise blocks go further: each block reports on one FTR enterprise form (510-519 water on form 12, 520-529 sewer on form 09, and so on).

Large agencies may add a fourth digit for subfunds (1001, 1002). The first three digits still decide the reporting.

Objects

Four digits, grouped by class:

Range Class
1000-1899 Assets
1900-1999 Deferred outflows of resources
2000-2799 Liabilities
2800-2899 Deferred inflows of resources
2900-2999 Fund balance and net position
3000-3999 Revenues
4000-4999 Payroll and benefits
5000-5999 Materials and services (including depreciation and interfund charges)
6000-6999 Capital outlay
7000-7999 Debt service
8000-8999 Other financing sources and uses
9000-9999 Control codes (never posted)

Functions

Four digits. The first digit follows the FTR's expenditure sections: 1 general government, 2 public safety, 3 transportation, 4 community development, 5 culture and leisure, 6 health, 7 public utilities, 8 capital outlay by function, 9 nonfunctional. A few functions report in a different FTR section than their first digit suggests (street lighting reports under public safety; sewers, solid waste, and cemeteries under health). The crosswalk handles those; coders do not have to remember them.

Departments

Two digits in blocks of ten (10-19 governing body and executive, 20-29 administrative services, 30-39 police, and so on). Departments are for management reporting. They are optional for the FTR, except that each department has a default function, which lets an agency that does not code functions still produce functional reports.

Silent defaults

  • Function 0000 means "no function recorded." On revenue it means general revenue. On spending, the department's default function applies.
  • Department 00 means "no department recorded."

A small agency can post with fund and object only, use one department per program, and still produce a correct FTR.

Revenue and the function code

The State Controller splits governmental revenue into general revenue (usable for any public purpose, such as general property tax, sales tax, and business license tax) and functional revenue (revenue from direct services, or revenue tied to a service by an external requirement, such as fees, gas tax, grants, and special assessments). The CACOA records that distinction with the function code:

Put a function on a revenue posting only when the revenue is functional under the State Controller's definition. Leave it at 0000 when the revenue is general.

That single rule decides whether an amount lands in the General or Functional column of the FTR revenue forms and feeds the net expenditure calculation. See Revenues.

Using the chart

Local detail and releases

Adding local detail

Every universal code sits inside a block that reserves room for local detail. For example, 1000 is cash and 1001-1049 is reserved for an agency's own cash accounts; 3300 is charges for services and 3342-3399 is reserved for an agency's own fee codes.

A local code:

  1. Must sit inside a reserved local-detail range.
  2. Rolls up to the universal code at the start of its block.
  3. Reports on exactly the line its reserved range reports on, on every State Controller report.

Rule 3 is what makes local detail safe: an agency can add as many codes as it needs without changing a single report line. Every release tests it for every reserved range, fund type, and report.

When a report asks for more detail than a published code carries, the answer is a published code, not a local one. Release 2027.03 added codes for the detail the enterprise forms ask for (water and electric sales by customer class, airport and harbor revenues, hospital revenues, investments by type) so that no agency has to invent them. If a local code needs to report somewhere its range does not, suggest a code for the next release.

Adding your own codes lists every reserved range and where it reports.

Funds follow the same idea with a fourth digit (5101 is a water subfund that still reports as water, fund 510), and departments with added digits (50 public works, 501 street maintenance, 5012 district 2).

Code status

Every code carries a status:

  • Adopted — published in an approved release. Its meaning will not change.
  • Proposed — new or changed in the current draft release, open for review.
  • Deprecated — kept for history; do not use for new postings.

Releases

The CACOA is published in numbered releases (2026.03, 2026.10). Each release has:

  • the full tables in Excel and CSV,
  • a quick reference workbook,
  • the FTR crosswalk workbook, including mapping rules ready to load into reporting software,
  • a changelog listing every change and why it was made,
  • a coverage report showing that every code resolves to exactly one line on each report,
  • the assurance results: every test the release passed or failed, with statewide evidence (how the CACOA is tested).

A draft release becomes an approved release after review. Corrections found after approval go into the next release; published codes are never silently renumbered.

Suggesting a change

Anyone may suggest a code, a correction, or a better crosswalk rule. A good suggestion names the code or FTR line, describes the transactions involved without identifying any agency, and says which report is affected.

FTR guide

How the Cities FTR is built

What it is

Every California city files a Financial Transactions Report (FTR) with the State Controller each year (Government Code sections 12463 and 53891). The State Controller publishes the results as open data at bythenumbers.sco.ca.gov, where the Legislature, researchers, reporters, and the public use them to compare cities. The report is filed online through the State Controller's Local Government Reporting System (LGRS).

Special districts and counties file their own versions of the FTR. This guide covers the Cities FTR, which is the report the CACOA crosswalk targets today.

When it is due

  • The report is due seven months after the end of the fiscal year, or by the date the State Controller prescribes if later. The State Controller announces the date in an annual alert letter. For a June 30 year end, plan on the end of January.
  • No extensions are granted. Late reports are marked late.
  • The data must come from audited financial statements if they are available, and the State Controller asks for a copy of the audit.
  • An officer who refuses to file, or knowingly files a false report, commits a misdemeanor, and the agency can face a forfeiture of $1,000 to $5,000 depending on its revenue (Government Code sections 53894-53896).

Always confirm dates and requirements against the current year's instructions from the State Controller; this guide is not a substitute for them.

How the report is organized

The FTR does not report fund by fund. It groups funds by type and reports each group its own way:

Funds Where they report
Governmental funds (general, special revenue, capital projects, debt service, permanent), combined Revenue forms 15-23, expenditure forms 24-29, other financing form 30, balance sheet form 37 (one column per governmental fund type)
Governmental activities, government-wide Form 40: capital assets, long-term liabilities, and deferred outflows and inflows
Enterprise funds One operating statement per enterprise type (forms 04-13: airport, electric, gas, harbor and port, hospital, sewer, solid waste, transit, water, other) and form 38 (statement of net position)
Internal service funds, combined Form 03 operating statement and form 38
Fiduciary funds Form 30.5 (changes in fiduciary net position) and form 39 (fiduciary net position), one column per trust type
Debt Forms 31-35, prepared from the agency's debt schedules
Everything else General information (01), comments (02), conduit financing (14), services checklist (36), summary (41), parcel taxes (42)

Blended component units are included in the city's funds.

Where the numbers come from

Most of the report is a classification of the trial balance. In the CACOA the forms fall into four groups:

  • From the trial balance: forms 03-13, 16-30, 30.5, and 37-40. Every CACOA posting code has a published line on these forms.
  • From schedules: the debt forms (31-35), conduit financing (14), and parcel tax statistics (42).
  • Derived from the ledger: functional revenue detail (15), built from each functional revenue's object and function code.
  • Calculated: the summary (41) and every total line.
  • Descriptive: general information, comments, and the services checklist.

The chapters that follow cover each group. The full crosswalk, form by form, is at FTR forms.

FTR guide

Revenues (forms 15-23)

Governmental fund revenue reports on eight forms: taxes (16), special benefit assessments (17), licenses and permits (18), fines and use of money and property (19), intergovernmental state (20), intergovernmental federal and county (21), charges for current services (22), and miscellaneous revenue (23). Most lines have two input columns, General and Functional.

General versus functional

The State Controller's instructions define the split:

  • General revenues cannot be associated with a specific expenditure function and can be used for any legitimate public purpose. Examples: property tax (other than voter-approved debt levies), sales tax, business license tax.
  • Functional revenues can be associated with one or more expenditure functions. A revenue is functional if either:
    1. it comes from direct services, such as fees and charges (sewer connection fees, water service charges, transit fares, engineering fees), including interest earned by enterprise funds and charges to other funds for services; or
    2. it is tied to a service by an external requirement, such as grant conditions, bond agreements, or statute or charter (for example, gas tax, federal workforce funds, special assessments). Restrictions the council can undo by its own vote do not count.

Functional revenue matters because the expenditure forms subtract it from each function's spending to show net expenditures: how much of each service the general taxpayer actually funds.

How the CACOA decides

Two codes do the work:

  1. The object code picks the line. 3000 lands on form 16 line R01 (secured and unsecured property taxes), 3212 on form 20 R03 (gasoline tax), 3330 on form 22 R24 (parks and recreation fees), and so on for every revenue code.
  2. The function code picks the column. Function 0000 means general revenue; any other function means functional revenue, reported for that function.

So the posting routine is:

Code a function on revenue only when the revenue is functional under the State Controller's two tests. Leave it at 0000 otherwise.

Some lines exist in only one column. Gasoline tax, public safety sales tax, and federal grants are always functional; off-highway vehicle in-lieu fees and state mandated cost reimbursements are always general. The crosswalk uses the only column available on those lines.

In LGRS, functional revenue is entered on form 15, which asks for the revenue line and the expenditure function it supports. A CACOA ledger already holds both: the object code is the revenue line and the function code is the expenditure function. Form 15 comes straight from the ledger.

Parent codes and detail codes

The FTR asks for more detail than most small agencies keep. The CACOA gives each FTR line its own universal code, and the parent code in each block has a sensible default:

  • Property taxes. 3000 reports as current secured and unsecured property tax. Detail codes 3001-3009 carry the supplemental roll, the property tax in lieu of vehicle license fees, voter-approved debt levies, prior-year collections, and the ABX1 26 pass-through and residual distributions.
  • Charges for services. The universal codes 3311-3341 each map to one line of form 22. If an agency posts all fees to the parent 3300, the function code picks the line: a fee coded to police (2100) reports as special police department services, one coded to planning (4100) as zoning and subdivision fees, one coded to libraries (5300) as library fines and fees.
  • Special benefit assessments. 3131-3135 map to fire, paramedic, police, lighting, and other assessments. The parent 3130 uses the function code the same way.
  • State revenue. 3211-3219 map to homeowners' property tax relief, gasoline tax, road maintenance and rehabilitation funds, POST reimbursements, off-highway vehicle fees, mandated costs, Proposition 172 public safety sales tax, and 2011 public safety realignment. General state revenue without a function reports as other state intergovernmental; with a function, as other state grants.

Lines that are easy to get wrong

  • Development impact fees (AB 1600) go on form 23, line R01, not licenses and permits. CACOA 3110 already reports there.
  • Construction and development taxes (bedroom taxes, Quimby Act park fees, storm drain fees) go on form 16, line R23: CACOA 3082.
  • Overhead allocations from a cost allocation plan are reimbursements, not revenue. The fund that provided the service records a reduction of expenditures.
  • Transfers in are other financing sources (form 30), never revenue.
  • Capital grants received by a governmental fund are revenue (3500-3521 report with the related federal, state, or county grant lines). Noncash contributed assets are not recorded in governmental funds at all.

The complete list of revenue lines and the codes that feed them is at FTR forms.

FTR guide

Expenditures (forms 24-29)

Governmental fund spending is reported twice, from two directions, and the two must agree:

  • Forms 24-28, Statement of Net Expenditures, by purpose: general government and public safety (24), transportation and community development (25), health and culture and leisure (26), public utilities and other (27), and debt service, capital outlay, and grand totals (28).
  • Form 29, Major Object Classification, by what was bought: salaries, retirement, other benefits, contract services, materials, other operating costs, debt service, and capital outlay.

The grand total on form 28 equals the grand total on form 29.

Forms 24-27: the function picks the line

Operating costs (objects 4000-5299 and 5600-5699) report on the line for their function, in the Current Expenditures column. Examples:

Function FTR line
1100 Legislative 24 R01 Legislative
1200-1800 Executive, clerk, legal, finance, HR, IT, general admin 24 R02 Management and Support
2100 Police 24 R13 Police
2200 Fire 24 R24 Fire
3100 Streets, 3300 Storm drains 25 R01 Streets, Highways, and Storm Drains
3200 Street lighting 24 R28 Street Lighting (public safety)
4100 Planning 25 R10 Planning
5100 Parks, 5200 Recreation 26 R20 Parks and Recreation
7200 Sewers 26 R08 Sewers (health)
7100 Water 27 R01 Water

Every function code has a line; the full table is on each function's page. A cost posted with function 0000 takes the department's default function. If neither is set it reports as other expenditures, which usually means a coding gap worth fixing.

The Functional Revenues column on forms 24-27 fills from the functional revenue reported for each function (see Revenues), and Net Expenditures is current expenditures minus functional revenue.

Form 28: capital outlay and debt service

  • Capital outlay (objects 6000-6999) reports by function group: general government, public safety, transportation, community development, health, culture and leisure, public utilities, or other. The function code decides the group.
  • Debt service reports by type, whatever the function: principal on long-term debt (7000), interest on long-term debt (7010), principal on purchase agreements (7030), short-term notes and warrants (7040), lease financing under GASB 87 (7050-7051), subscription financing under GASB 96 (7060-7061), and other debt service such as issuance costs and fiscal agent fees (7020, 7070).

Form 29: the object picks the line

Objects Form 29 line
4000-4099 R01 Salaries and Wages
4100 R02 Retirement Benefits
4110-4199 R03 Other Employee Benefits
5100-5199 except 5140 R04 Contract Services, Private
5140 R05 Contract Services, Governmental Agencies
5000-5099 R06 Materials and Supplies
5200-5299, 5600-5699 R07 Other Operating Expenditures
7000-7079 R09-R12 Debt service, by type
6000-6999 R14-R17 Land, Buildings and Improvements, Equipment, Other

Contracts with other governments, such as police services from a county sheriff, get their own object (5140) because form 29 reports them separately. The form also asks how much capital project spending was competitively bid (R20-R22); that needs a procurement attribute on the transaction, and the CACOA provides one (PROC_METHOD).

What stays out

Governmental funds do not record depreciation, amortization, or losses on disposal of assets. Those objects (5300-5449) belong in proprietary funds and the government-wide ledger, and the crosswalk excludes them from forms 24-29.

FTR guide

Other financing and fund balance (form 30)

Form 30 takes the governmental funds from their excess of revenues over expenditures to their ending fund balance. It carries everything that changes fund balance but is not revenue or expenditure.

Other financing sources and uses

CACOA object Form 30 line
8000 Transfers In R12 Transfers In
8010 Transfers Out R13 Transfers Out
8020 Proceeds of Debt (bonds, COPs) R02 Long-Term Debt: Bonds, COPs, and Other Agency Debt
8021 Proceeds of loans, notes, and construction financing R03 Construction Financing and Other Long-Term Debt
8030 Sale of Capital Assets R09 Proceeds from Sale of Capital Assets
8500 Insurance Recoveries R11 Insurance Recoveries
8510 Lease Financing (GASB 87) R01.5 Lease Financing
8520 Subscription Financing (GASB 96) R01.6 SBITA Financing
8530 Refunding Bond Proceeds R04 Refunding Bonds Proceeds
8540 / 8550 Premium / Discount on Bonds R05 / R06
8560 Payment to Refunded Bond Escrow Agent R07
8570 / 8580 Refinancing proceeds / payments R03.6 / R03.7
8600 / 8610 Special / Extraordinary Items R15 / R16

Uses (transfers out, discounts, escrow payments, refinancing payments) report as negative amounts on this form.

Transfers or something else?

The State Controller's instructions follow GAAP on interfund activity:

  • Transfers move resources with no expectation of repayment. Loans that will not be repaid are transfers.
  • Interfund loans are receivables and payables (1150/2030 short-term, 1340/2140 long-term), not transfers.
  • Interfund services (one fund selling to another as part of normal operations) are revenue to the seller (3340) and expenditure to the buyer.
  • Reimbursements, including overhead allocations, are expenditures in the fund that bears the cost and a reduction of expenditures in the fund that paid first.

Transfers must balance across all funds. A transfer out with no matching transfer in is one of the most common FTR review questions.

Lease and subscription financing

When a governmental fund enters a GASB 87 lease or a GASB 96 subscription, it records an expenditure for the asset (capital outlay) and an equal other financing source (8510 or 8520). The payments that follow are debt service (7050-7061). The asset and liability themselves live in the government-wide ledger and report on form 40.

Fund balance rollforward

Beginning fund balance, the adjustment line, and ending fund balance are calculated from the prior-year report and the activity above. Prior-period adjustments go on the adjustment line with an explanation. The ending balance by classification (nonspendable, restricted, committed, assigned, unassigned) reports on the balance sheet, form 37.

FTR guide

Balance sheets (forms 37, 38, 39, 40)

The FTR has four balance sheet forms. Which one an account lands on depends on the fund category.

Form Covers Columns
37 Balance Sheet, Governmental Funds Current resources of governmental funds General, special revenue, debt service, capital projects, permanent, total
38 Statement of Net Position, Proprietary Funds Everything owned and owed by enterprise and internal service funds Enterprise, internal service
39 Statement of Fiduciary Net Position Custodial and trust funds Custodial, investment trust, pension and OPEB trust, private-purpose trust
40 Noncurrent Assets and Liabilities Governmental activities, government-wide One amount per line

Governmental funds: form 37

Governmental funds report current financial resources: cash, receivables, prepaid items, payables, deferred inflows such as unavailable revenue, and fund balance by GASB 54 classification. The fund's category picks the column, so the general fund (100) reports in the general column and every special revenue fund in the special revenue column.

Fund balance codes map one to one:

CACOA object Form 37 line
2930 Nonspendable R33
2910 Restricted R34
2940 Committed R35
2950 Assigned (and the combined 2920) R36
2900 Unassigned R37

Governmental activities: form 40 and fund 980

Capital assets, long-term debt, compensated absences, net pension and OPEB liabilities, and pension and OPEB deferrals of governmental activities are not recorded in governmental funds. They exist only in the government-wide statements, which most agencies build each year in a conversion workbook outside the ledger.

The CACOA provides a home for them in the ledger: fund 980, the government-wide conversion ledger. Posting the year's conversion entries to fund 980 (capital asset additions and depreciation, debt issued and retired, the GASB 68 and GASB 75 entries) means form 40 comes straight from the trial balance, and the entries are journal entries with an audit trail instead of formulas in a spreadsheet. Fund 980 never reports revenue or expenditures on the FTR; only its noncurrent balances do.

Proprietary funds: form 38

Enterprise and internal service funds use full accrual, so form 38 carries both current and noncurrent items: cash and investments, receivables, capital assets and accumulated depreciation, current and long-term debt, compensated absences, net pension and OPEB liabilities, deferrals, and net position. Current and noncurrent portions of the same liability are separate CACOA codes (for example, 2170 debt due within one year and 2201-2280 long-term debt by type) because form 38 reports them on separate lines.

Fiduciary funds: form 39

Custodial funds and trust funds report assets, liabilities, and net position by fund category. Successor agencies to former redevelopment agencies report as private-purpose trusts (CACOA fund 870). Pension and OPEB trust investments by type (government obligations, bonds, stocks, real estate, private equity) need local detail codes that declare their line.

Deferred outflows and inflows

Deferred outflows (1900-1999) and deferred inflows (2800-2899) have their own object classes, because GASB presents them separately from assets and liabilities and every FTR balance sheet form reports them separately. Unavailable revenue (2840) appears only on form 37; the government-wide ledger recognizes it as revenue.

FTR guide

Enterprise, internal service, and fiduciary funds (forms 03-13, 30.5)

Enterprise funds: the fund block picks the form

Each enterprise type has its own FTR operating statement, and each CACOA enterprise block reports on exactly one of them:

CACOA funds Enterprise FTR form
510-519 Water 12
520-529 Sewer 09
530-539 Solid waste 10
540-549 Electric 05
550-559 Gas 06
560-569 Airport 04
570-579 Transit 11
580-609 Parking and other enterprises 13
610-619 Harbor and port 07
620-629 Hospital 08

All subfunds of an enterprise (operating, impact fees, grants, capital, debt) sit in the same block and report together.

What goes where on an enterprise form

The object code picks the line, using the same logic on every enterprise form:

  • Operating revenue: service charges and connection fees go to the form's specific lines where they exist (water service charges, sewer service charges, connection fees); other fees go to other operating revenues.
  • Operating expenses: payroll and benefits to Personnel Services, contracts to Contractual Services, materials to Materials and Supplies, cost allocations and internal service charges to General and Administrative, depreciation and amortization to their own line, everything else to Other Operating Expenses.
  • Nonoperating: investment income, rents and royalties, intergovernmental revenue by source, gains and losses on disposal, interest expense (with separate lines for lease and subscription interest), and other nonoperating items.
  • Capital contributions: federal, state, county, and other government capital grants, capital connection fees, and contributed assets each have their own line.
  • Transfers, special items, and net position close the form.

Some forms ask for detail by customer class or activity: water sales inside and outside the agency's boundaries by residential, business, industrial, and irrigation customers; solid waste disposal versus collection; airport hangar and landing fees. The universal codes report those amounts on the form's "other" line. An agency that wants the detailed lines adds local codes that declare them.

What proprietary funds do not report as expenses

Proprietary funds use full accrual. The crosswalk therefore excludes:

  • Capital outlay objects (6000-6999). Capitalize them to capital asset codes.
  • Principal payments (7000-7009, 7030, 7050, 7060). They reduce the liability.
  • Debt proceeds and asset sale proceeds (8020-8499). They are balance sheet entries; report the gain or loss instead.

Validation rules flag these postings so they can be reclassified before year end.

Internal service funds: form 03

All internal service funds (700-799) report together on one operating statement with the same line structure as the enterprise forms, and on form 38 in the internal service column.

Fiduciary funds: form 30.5

Custodial and trust funds report additions and deductions by fund category: contributions, investment income, taxes collected for other governments, and other additions; benefit payments, administrative expenses, and other deductions. Pension and OPEB trust contributions by source and benefit payments need local detail codes that declare their lines.

FTR guide

How the crosswalk works

The crosswalk is a table of rules (FTR_XWALK). Each rule says: amounts in this slice of the chart go to this FTR line.

A rule

Part Meaning
Fund category or fund range Which funds the rule covers (for example, all governmental funds, or enterprise funds 510-519)
Object range Which object codes (for example, 3000, or 4000-4999)
Function range Optional. Which function codes (for example, 2100-2199)
Target LGRS form and row (for example, form 24, R13)
Column rule How the column is chosen: General or Functional by function code, the current expenditures column, the fund type's column, and so on
Sign role How the balance is signed on the form
Priority Lower wins when more than one rule matches

Resolving an amount

  1. Find the effective function. Use the function code; if it is 0000 and the line is an expenditure, use the department's default function.
  2. For each axis, find the matching rules and keep the one with the lowest priority. The axes are:
    • Primary: revenue, other financing, balance sheet, and proprietary and fiduciary statement lines.
    • Function: governmental expenditures by function (forms 24-28).
    • Object: governmental expenditures by major object (form 29).
    • Segment: net position lines on each enterprise form (the same balances also report in total on form 38).
  3. Pick the column using the rule's column rule, the fund category, and the effective function.
  4. Sign the amount. Ledger balances are debit-positive. Asset, deferred outflow, and expense rules report the balance as is; every other role reverses the sign, so revenues and liabilities report as positive amounts and uses report as negative.

A single governmental expenditure resolves on two axes (function and object) and appears on both form 24-28 and form 29. A revenue resolves on one. An exclusion rule reports nothing and says why.

Specificity

By convention a rule for a single code (priority 45) beats a rule for the range that contains it (priority 50), and rules that refine a parent code by function (priority 40) beat the parent's default. Local-detail ranges sit at 60 and exclusions at 5 or lower. Where two rules at the same priority point to different lines, the build stops: conflicts cannot ship.

Coverage

Each release runs every posting code through every fund category and every function and checks that each required axis resolves to exactly one line, with the target column present on that line. The release notes publish the counts. For 2026.10: 162,800 combinations, no gaps, and no conflicts.

The coverage report also lists FTR lines that no universal code feeds: customer-class and activity detail on the enterprise forms, investment types in trusts, and lines that come from schedules. Those are the places for local detail codes.

Field IDs and software

Every target resolves to an LGRS field ID, the identifier the State Controller's system uses for each input box. The downloadable rules list those targets as canonical keys (cities_ftr:<form>:<field>), the format used by the GovGlider Navigator reporting engine. Any reporting tool, ERP, or spreadsheet can apply the same rules: filter the trial balance by each rule's ranges, pick the winner by priority, and sum into the target field. The mapping workbench does exactly that with a pasted trial balance, in your browser, and every FTR form has a spreadsheet view that shows where each LGRS field sits.

FTR guide

Review and submission

The FTR is due seven months after year end with no extensions, and it must use audited numbers when an audit is available. In practice the audit and the FTR run side by side. A routine that works:

Before the audit is final

  1. Clear suspense and clearing accounts (1080, 2180, 4980, 5980). Anything left will land on an "other" line and draw questions.
  2. Check coding. Look for expenditures with no function and no department default, revenue coded to a function it does not belong to, and capital outlay or principal posted in proprietary funds. The CACOA validation rules list these.
  3. Balance interfund activity. Transfers in equal transfers out; due to and due from agree; advances agree.
  4. Post the conversion entries for governmental activities to the government-wide ledger (fund 980): capital assets and depreciation, debt, compensated absences, and the GASB 68 and GASB 75 pension and OPEB entries.

When the audit is final

  1. Post audit adjustments as journal entries to the ledger, not as overrides in the report. The report then matches the audited statements by construction, and next year starts from the right balances.
  2. Run the crosswalk against the post-closing trial balance and review each form against the audited statements: total revenues, total expenditures by function, fund balance by classification, and net position for each enterprise.
  3. Tie the debt forms (31-35) to the debt schedules and the audited long-term debt note.
  4. Explain differences. Where the FTR and the audited statements differ by design (fund 980 activity, classification differences), keep a short reconciliation with the working papers.

Filing

  1. Enter or upload the report in LGRS. Compare each form with the prior year and look into large swings.
  2. Sign the cover page electronically in LGRS, or print, sign, and mail it.
  3. Send the audited financial statements to the State Controller.
  4. Save the filed report with the trial balance, crosswalk version, and reconciliation, so next year's preparer can see exactly how each number was built.

After filing

Note what took longest and fix it in the ledger, not in next year's report: a new code, a better department default, a local detail code that declares an FTR line. That is how the report gets faster every year.

FTR guide

Other State Controller reports

The Cities FTR is one of several annual financial reports the State Controller collects from local agencies. The CACOA maps every code to a line on each of them, so an agency that files more than one report, or a county that files the road report as well as its FTR, keeps one chart.

Which reports the chart produces

Report Filed by
Cities Financial Transactions Report Cities, and the consolidated city and county
Counties Financial Transactions Report Counties
Special Districts Financial Transactions Report Independent and dependent special districts, joint powers authorities, nonprofit corporations
Special districts transportation form Districts and authorities that run transportation services
Transit Operators Financial Transactions Report Transit operators
Transportation Planning Agencies Financial Transactions Report Regional transportation planning agencies
Public Retirement Systems Financial Transactions Report Retirement systems
Annual Street Report Cities
Annual Road Report Counties

Two other reports, the counties' property tax report and Government Compensation in California, draw on tax rolls and payroll records rather than the ledger, so no chart of accounts produces them. State Controller reports shows who files what, the due dates, and each report's lines.

How the rules work across reports

Each report has its own lines and its own rules. The rules follow the same pattern as the Cities FTR crosswalk: a fund category, an object range, and sometimes a function range decide the line, and the lowest priority number wins.

  • Shared forms. The counties and special districts reports use the Cities FTR's internal service, enterprise, conduit, and fiduciary forms, with the same field IDs. Those forms take the Cities FTR rules unchanged.
  • Columns. A county revenue line has a column for each governmental fund type; a special district's enterprise lines have a column for each enterprise form; the street and road reports split spending by who did the work (the agency's own staff, a private contractor, or another government); the retirement report splits contributions and benefits by safety and miscellaneous members. The rule names the column; the posting's fund, object, or function fills it in.
  • Fallback lines. Where a report has no cell for a specific line in a given column, the amount reports on that section's "other" line, as the instructions direct.
  • Exclusions. Balance sheet accounts and transfers are excluded from the operating reports that do not carry them, with the reason recorded.

What only a person can supply

The street and road reports ask for spending by grant program (for example, which state or federal program paid for a project). A ledger coded by fund, function, and object does not carry the program, so those lines are marked as needing local detail: add a local object or fund code per program, or keep a project schedule. The assurance results show how much of statewide filings this leaves to a person.

Testing

Every release proves, for every report, that each valid posting lands on exactly one line or a documented exclusion, and measures how much of what agencies filed statewide the chart can produce. The report finder shows the answer for any account on any report.