Utah city spending, salaries, and council meetings — searchable.
What’s indexed so far
Fresh from the data desk
Recap of the St. George City Council meeting on August 6, 2026: 27 agenda items as published, each linked to the source.
View full reportRecap of the Layton City Council meeting on August 6, 2026: 8 agenda items as published, each linked to the source.
View full reportRecap of the Kaysville City Council meeting on August 6, 2026: 2 agenda items as published, each linked to the source.
View full reportRecap of the Hurricane City Council meeting on August 6, 2026: 6 agenda items as published, each linked to the source.
View full reportEvery city, side by side
One row per city, color-graded so the outliers jump out. Click any column to re-rank — sort by money, by how many meetings we’ve indexed, or by the council transparency score. Each city links to its full portal.
| City | Spending | Meetings | Scored | Avg score | Vendors |
|---|---|---|---|---|---|
| Salt Lake City | $15.2B | 157 | 64 | 6.3 | 15,153 |
| Provo City | $3.7B | 142 | 65 | 6.6 | 9,555 |
| St. George | $3.5B | 119 | 61 | 6.2 | 10,998 |
| Ogden | $3.2B | 164 | 62 | 6.1 | 8,182 |
| Sandy | $2.2B | 118 | 93 | 6.1 | 9,668 |
| Lehi City | $2.2B | 80 | 52 | 6.1 | 6,070 |
| West Valley City | $2.1B | 76 | 6 | 5.5 | 9,539 |
| Spanish Fork City | $2.0B | 106 | 26 | 6.6 | 4,123 |
| Park City | $2.0B | 71 | 11 | 6.1 | 7,699 |
| West Jordan | $1.9B | 116 | 55 | 7.1 | 3,559 |
| Murray City | $1.8B | 73 | 12 | 7.2 | 5,171 |
| Orem | $1.7B | 49 | 46 | 6.1 | 67,009 |
| South Jordan | $1.7B | 48 | 48 | 6.8 | 10,772 |
| Logan City | $1.7B | 65 | 11 | 7.2 | 6,049 |
| Draper City | $1.6B | 63 | 13 | 7.4 | 3,828 |
| Layton | $1.5B | 56 | 56 | 6.1 | 3,377 |
| Springville | $1.1B | 60 | 59 | 6.3 | 6,397 |
| Herriman City | $1.0B | 56 | 11 | 5.6 | 2,902 |
| Bountiful City | $948M | 55 | 11 | 5.9 | 4,075 |
| Eagle Mountain City | $930M | 62 | 13 | 6.4 | 2,122 |
| American Fork City | $914M | 121 | 12 | 5.7 | 3,698 |
| Saratoga Springs | $898M | 81 | 13 | 6.2 | 5,371 |
| South Salt Lake City | $855M | 64 | 11 | 6.5 | 3,310 |
| Kaysville City | $833M | 52 | 12 | 6.0 | 3,984 |
| Midvale City | $812M | 64 | 12 | 7.2 | 1,684 |
| Washington City | $812M | 87 | 12 | 6.7 | 3,247 |
| Pleasant Grove City | $753M | 57 | 12 | 7.3 | 8,162 |
| Brigham City | $698M | 7 | 1 | 7.0 | 2,728 |
| Payson City | $693M | 41 | 14 | 6.4 | 2,227 |
| Riverton City | $657M | 52 | 12 | 7.2 | 10,832 |
| Clearfield City | $655M | 86 | 11 | 6.7 | 3,093 |
| Tooele City | $622M | 35 | 10 | 7.7 | 3,398 |
| Cedar City | $609M | 126 | 12 | 5.8 | 2,365 |
| Bluffdale City | $585M | 100 | 12 | 6.8 | 4,280 |
| Hurricane City | $532M | 63 | 13 | 5.8 | 1,405 |
| Millcreek | $508M | 62 | 56 | 7.1 | 2,104 |
| Syracuse City | $505M | 69 | 11 | 6.3 | 2,498 |
| Taylorsville | $494M | 66 | 56 | 6.4 | 4,707 |
| Farmington City | $451M | 70 | 12 | 7.1 | 2,361 |
| Roy City | $446M | 68 | 12 | 6.1 | 3,637 |
| Heber City | $405M | 59 | 13 | 6.0 | 2,448 |
| Salem City | $402M | 19 | 18 | 7.1 | 1,721 |
| Vineyard City | $397M | 46 | 28 | 6.1 | 3,242 |
| Nephi City | $346M | 95 | 78 | 6.1 | 1,716 |
| Santaquin City | $342M | 108 | 36 | 6.1 | 2,467 |
| Lindon City | $311M | 70 | 10 | 7.3 | 2,289 |
| North Ogden City | $295M | 74 | 13 | 6.3 | 2,624 |
| Clinton City | $293M | 83 | 12 | 5.8 | 2,432 |
| Highland City | $289M | 58 | 13 | 5.5 | 1,611 |
| Mapleton | $275M | 60 | 45 | 6.4 | 3,624 |
| Centerville City | $274M | 58 | 13 | 7.2 | 2,200 |
| Santa Clara City | $233M | 60 | 10 | 7.5 | 1,503 |
| Grantsville City | $229M | 85 | 12 | 6.7 | 1,789 |
| Woods Cross City | $226M | 76 | 13 | 5.9 | 1,723 |
| Ivins City | $217M | 7 | 2 | 7.0 | 1,345 |
| Smithfield City | $203M | 35 | 11 | 6.5 | 3,411 |
| Roosevelt City | $199M | 59 | 11 | 6.5 | 1,875 |
| West Point City | $158M | 68 | 12 | 7.1 | 1,450 |
| Alpine City | $151M | 81 | 12 | 5.7 | 1,174 |
| Midway City | $125M | 5 | 2 | 7.0 | 1,043 |
| Pleasant View City | $117M | 44 | 11 | 6.0 | 725 |
| Mona City | $24M | 94 | 11 | 6.7 | 996 |
What’s on each city’s dashboard
Every dataset is extracted from public documents and links straight back to the source PDF.
Council-Approved Payments
Searchable by vendor, fund, department, or date — each row linked to the exact packet PDF that approved it.
Employee Compensation
Back to FY2016, with per-employee year-over-year change and inflation-adjusted comparisons against the BLS CPI.
Grant Activity
Federal, state, and county grants the council has discussed or accepted, with source citations on every line.
Meeting Scorecard
Was the agenda focused, were major items given separate scrutiny, or was the night a kitchen-sink of stacked decisions? Tracked over time.
GRAMA Request Library
Pre-drafted public-records requests residents can copy and file — each tied to a specific gap in what’s currently public.
Built to be checked, not taken on faith
The watchdog gap is local.
Local government affects your daily life more directly than state or federal — your water rates, your road work, your fire department, your library — but it’s also the layer with the least independent scrutiny.
Big-dollar decisions routinely get bundled into “consent agenda” items and approved without discussion. The local newspaper that used to send a reporter to every meeting either downsized or vanished a decade ago. The void left behind is what this project fills.
- Make local spending genuinely auditable by any resident with a browser.
- Surface vendor concentrations and sole-source patterns while they’re still small.
- Catch procedural drift when councils start bundling more decisions.
- Hand residents specific, well-formed records requests instead of vague concerns.
A dataset, not an investigation.
Numbers here are extracted from public documents and should be verified against the source packet before you cite them in a meeting, an article, or a complaint. Every meeting page links directly to the city’s official PDF — use that as the citation, not this site.
More: how the data is built · who runs this · terms
The pattern is repeatable.
Pull every council packet, extract the check register, layer on the state’s salary data, score the meetings, draft the records requests. The work scales to any Utah city — new cities are added as time allows.