Watchdogs and newsrooms
For people who can already find the data. What costs them is the assembly, so that is what this session is about. Reusable for Citizens Union, CBC, NYPIRG, and investigative newsrooms.
What the session covers
Every other script here demos to someone who wants to see their own data. This audience wants to see what nobody has assembled yet, which inverts the whole design. Coverage gaps stop being caveats to manage and become the content.
- One vendor across the whole city. 54 discretionary awards, 41 separate sponsors, $6,455,750, and no single line item anywhere that says so.
- Allocation to disbursement, and the point where the join stops working — the budget code gets you to a real check but not to whose allocation it discharges.
- What got taken back. 1,291 FY2026 rescissions worth $212,600,875, of which 345 rows carry no council member at all.
- A report the law requires annually whose most recent published version is from 2019–2020.
- The reform graveyard, the act built for this organization specifically: the same bill across four sessions and three sponsors over fourteen years, none of it becoming law, indexed nowhere.
What it is honest about
Two acts are about BetaNYC being wrong.
We published a rescission table that was truncated at a silent row limit, then published a
correction telling presenters to pass limit: 500 — which is itself the cap. The real figure was
$90,314,887 higher than what we had shown. Both breaks are on a slide.
And when we reported that a public API was blocking us, the office answered in two days, fixed two catalog entries, corrected one of our findings, and the residual block turned out to be ours for exceeding an undocumented rate limit. That is on a slide too.
Scope note for whoever presents this. The session carries no ask and does not critique another office’s published product. Report the finding, say what we did about it, and stop.