Skip to content
Project Curia

Data

Take the whole thing.

Every position this site records, as a spreadsheet or as JSON. Free to republish, including commercially, under CC BY 4.0. Credit Project Curia and it is yours. Nothing to sign up for, no key to request, and no need to ask. It rebuilds every morning.

2,311

recorded yes votes

1,973

recorded no votes

12 of 38

measures Congress ever voted on

The files.

  • votes.csvStart here

    Every member's position on every tracked measure. One row per member per bill their chamber can act on, carrying the 16 roll calls, the question that was actually put in each, and a link to the official record. This is the one with a real no in it.

  • The same positions as structured JSON, plus each bill's status, sponsor, cosponsor count, and every roll call held on it.

  • Cosponsorship on the 7 reforms, by member and by reform. Read the caveat below before using this one.

  • The roster: every sitting member, party, state, district, chamber, and contact details.

The data allows cross-origin requests, so you can pull any of it straight into a notebook or a chart without a proxy.

Your state, as a spreadsheet.

One state's whole delegation, every member scored on all 7 reforms, one row each, with the bill number every position came from. Pick a state and it downloads.

Two things to get right.

No position is not opposition. On the 7 reforms the only signal is cosponsorship, which can record a yes and cannot record a no. A member who has not cosponsored a bill has not been recorded opposing it, and Congress rarely votes on these reforms, so there is usually nothing to record a no with. There is no opposes value anywhere in the reform data. If you publish these members oppose X on our numbers, the correction lands on us, and the site stops being useful to every other reporter.

A cloture vote is not a vote on the bill. Some of these roll calls are cloture or motion-to-proceed votes, which decide whether debate ends, not whether the measure passes. A senator who votes against cloture has not voted against the bill. votes.csv carries the verbatim question and a vote_is_on_passage column so you can tell them apart. Check it before you report a no as opposition.

Where it comes from

Bills, sponsors, and cosponsors come from api.congress.gov. Roll-call votes come from the Clerk of the House and the Senate's own records. Discharge-petition signatures come from clerk.house.gov. The roster comes from unitedstates/congress-legislators. Every row carries the bill number it came from, so any cell can be checked against the original record rather than taken on our word.

A roll-call vote and a cosponsorship are public records, and they were never ours to own. What the license gives away is the work of compiling them, so that nobody has to wonder whether they are allowed to use it.

Rebuilt every morning (last: July 14, 2026). If a number looks wrong, it might be. Write to [email protected] and we will fix it or show you the record it came from.

How every position is sourced