community_notes — X Community Notes ratings (2021-2026)
- Description
The ratings of the Community Notes of X (formerly Twitter; the program was called Birdwatch until 2022), the crowd-sourced fact-checking system in which enrolled contributors write notes that add context to posts, and rate the notes of others as helpful or not; a note is shown to all users when its ratings come from contributors with diverse perspectives, as determined by a matrix-factorization ("bridging") algorithm. X publishes all notes, ratings, note statuses and contributor enrollments every day, with pseudonymous contributor ids.
The entry contains two bipartite networks of contributors and notes, which have the same nodes (all contributors and notes of the data):
ratings: an edge connects a contributor to each note they rated, with the rating (helpful, somewhat helpful, or not helpful) and the reasons given.authorship: an edge connects each note to its author.
The data are published as cumulative snapshots, which are kept online for only a few days (deleted notes and ratings disappear from them); the networks are built from the most recent snapshot at the time of the download, whose date is stored as the network property
snapshot_date(the snapshot of 2026-10-30 had five files of notes and nine files of ratings, the first of 5.6 GB uncompressed). Left out are the ids of the posts on which ratings were made (for notes matching several posts), the source buckets of the ratings and the suggestions of the raters. Notes and contributors that are referenced but missing from the files of notes and of enrollments (e.g. deleted notes) are included without attributes (has_recordfalse).The networks have the following properties:
- (Node)
is_note: whether the node is a note (otherwise a contributor). - (Node)
has_record: whether the note (or contributor) is in the file of notes (or of enrollments). - (Node)
participant_id(contributors): the pseudonymous id of the contributor (empty for notes). - (Node)
enrollment_state(contributors): the enrollment state (e.g.newUser,earnedIn,atRisk,earnedOutNoAcknowledge). - (Node)
successful_rating_needed_to_earn_in(contributors): the number of successful ratings needed to earn in. - (Node)
time_last_state_changeandtime_last_earn_out(contributors): the times of the last state change and of the last earn-out (Unix time; small values such as 1 or 0, as in the data, mean never; -1 if unknown). - (Node)
modeling_population(contributors): the modeling population (e.g.CORE,EXPANSION). - (Node)
modeling_group(contributors): the modeling group (NaN if none). - (Node)
number_of_times_earned_out(contributors): the number of times the contributor earned out. - (Node)
note_id(notes): the id of the note (-1 for contributors). - (Node)
author_id(notes): the participant id of its author. - (Node)
created(notes): its time of creation (Unix time). - (Node)
tweet_id(notes): the id of the post it is about. - (Node)
classification(notes):MISINFORMED_OR_POTENTIALLY_MISLEADINGorNOT_MISLEADING. - (Node)
believable,harmfulandvalidation_difficulty(notes): answers of the author in the first version of the form. - (Node)
summary(notes): the text of the note, as in the data (line breaks replaced by spaces, some characters HTML-escaped, e.g.&). - (Node)
misleading_other,misleading_factual_error,misleading_manipulated_media,misleading_outdated_information,misleading_missing_important_context,misleading_unverified_claim_as_fact,misleading_satire,not_misleading_other,not_misleading_factually_correct,not_misleading_outdated_but_not_when_written,not_misleading_clearly_satireandnot_misleading_personal_opinion(notes): the reasons checked by the author, one property each (1 if checked, 0 if not, -1 if unknown). - (Node)
trustworthy_sources(notes): whether the author considers the sources trustworthy. - (Node)
is_media_noteandis_collaborative_note(notes): whether the note is a media note, and whether it is a collaborative note. - (Node)
current_statusandtime_current_status(notes, from the status history): the current status (CURRENTLY_RATED_HELPFUL,CURRENTLY_RATED_NOT_HELPFULorNEEDS_MORE_RATINGS) and its time (Unix time, -1 if none). - (Node)
first_non_nmr_statusandtime_first_non_nmr_status(notes, from the status history): the first status other than "needs more ratings", and its time (Unix time, -1 if none). - (Node)
locked_statusandtime_status_lock(notes, from the status history): the locked status and the time of the lock (Unix time, -1 if none). - (Node)
current_decided_by(notes, from the status history): the scoring model that decided the status. - (Edge)
time(ratings): the time of the rating (Unix time). - (Edge)
version(ratings): the version of the rating form (1 or 2). - (Edge)
helpfulness(ratings): the rating, 2 (helpful), 1 (somewhat helpful) or 0 (not helpful), from thehelpfulandnotHelpfulanswers in version 1. - (Edge)
reasons(ratings): the reasons given, as a bit mask (bits 0 to 23:agree,disagree,helpfulOther,helpfulInformative,helpfulClear,helpfulEmpathetic,helpfulGoodSources,helpfulUniqueContext,helpfulAddressesClaim,helpfulImportantContext,helpfulUnbiasedLanguage,notHelpfulOther,notHelpfulIncorrect,notHelpfulSourcesMissingOrUnreliable,notHelpfulOpinionSpeculationOrBias,notHelpfulMissingKeyPoints,notHelpfulOutdated,notHelpfulHardToUnderstand,notHelpfulArgumentativeOrBiased,notHelpfulOffTopic,notHelpfulSpamHarassmentOrAbuse,notHelpfulIrrelevantSources,notHelpfulOpinionSpeculation,notHelpfulNoteNotNeeded). - (Edge)
time(authorship): the time of creation of the note (Unix time).
- Tags
- Social Online Informational Bipartite Unweighted Timestamps Metadata
- Added
- 2026-10-31
- Citation
-
- S. Wojcik, S. Hilgard, N. Judd, D. Mocanu, S. Ragain, M. B. F. Hunzaker, K. Coleman, J. Baxter, "Birdwatch: Crowd Wisdom and Bridging Algorithms can Inform Understanding and Reduce the Spread of Misinformation." arXiv:2210.15723 (2022) arXiv:2210.15723
- Upstream URL OK
-
https://communitynotes.x.com/guide/en/under-the-hood/download-data
https://ton.twimg.com/birdwatch-public-data/ - Networks
-
Tip: click on a column header to sort the list, or hover over it for a description.
Column legend
- $\left<k\right>$
- Mean degree
- $\sigma_k$
- Standard deviation of the degrees
- $\lambda_h$
- Largest eigenvalue of the Hashimoto (non-backtracking) matrix
- $\tau$
- Random walk mixing time
- $r$
- Degree assortativity
- $c$
- Global clustering coefficient
- $\oslash$
- (Pseudo-) diameter
- $S$
- Relative size of the largest component
- NPs
- Node properties
- EPs
- Edge properties
Name Nodes Edges $\left<k\right>$ $\sigma_k$ $\lambda_h$ $\tau$ $r$ $c$ $\oslash$ $S$ Kind Mode NPs EPs gt GraphML GML csv ratings 5,265,675 240,984,916 91.53 373.58 1239.50 39.32 -0.04 0.00 12 0.92 Undirected Bipartite is_note has_record participant_id enrollment_state successful_rating_needed_to_earn_in time_last_state_change time_last_earn_out modeling_population modeling_group number_of_times_earned_out note_id author_id created tweet_id classification believable harmful validation_difficulty summary trustworthy_sources is_media_note is_collaborative_note current_status time_current_status first_non_nmr_status time_first_non_nmr_status locked_status time_status_lock current_decided_by misleading_other misleading_factual_error misleading_manipulated_media misleading_outdated_information misleading_missing_important_context misleading_unverified_claim_as_fact misleading_satire not_misleading_other not_misleading_factually_correct not_misleading_outdated_but_not_when_written not_misleading_clearly_satire not_misleading_personal_opinion time version helpfulness reasons 1.880 GiB 2.955 GiB 2.892 GiB 3.006 GiB authorship 5,264,085 3,259,253 1.24 67.32 1.00 0.01 -0.07 0.00 2 0.01 Undirected Bipartite is_note has_record participant_id enrollment_state successful_rating_needed_to_earn_in time_last_state_change time_last_earn_out modeling_population modeling_group number_of_times_earned_out note_id author_id created tweet_id classification believable harmful validation_difficulty summary trustworthy_sources is_media_note is_collaborative_note current_status time_current_status first_non_nmr_status time_first_non_nmr_status locked_status time_status_lock current_decided_by misleading_other misleading_factual_error misleading_manipulated_media misleading_outdated_information misleading_missing_important_context misleading_unverified_claim_as_fact misleading_satire not_misleading_other not_misleading_factually_correct not_misleading_outdated_but_not_when_written not_misleading_clearly_satire not_misleading_personal_opinion time 418.6 MiB 551.0 MiB 553.0 MiB 667.5 MiB