Below you will find the current summary data and graphics from the 2026 VA April 21 Special Election Daily Absentee List files. We pull the DAL file everyday and track the count of each specific ballot category in each daily file.
It should be noted that EPEC strongly encourages voters to make their voices heard and recommends that voters vote NO on this special election referendum.
Note: Page may take a moment to load the graphics objects.
Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The logarithmic plot is the same underlying data as the linear scale plot, except with a logarithmic y-scale in order to be able to compress the dynamic range and see the shape of all of the data curves in a single graphic. Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The underlying data for the graphics above is provided in the summary data table.
Additional Data:
Additional CSV datasets stratified by Locality, City, Congressional District, State House District, State Senate District, and Precinct are available here. Please note that you need to give the page time to load before trying to drill down into any of the listed subdirectories, and mobile browsers have shown some issues.
A direct link to a zip file with ALL of the metrics data stratified by Locality, etc is here.
Data column descriptions:
“ISSUED” := Number of DAL file records where BALLOT_STATUS= “ISSUED”
“NOT_ISSUED” := Number of DAL file records where BALLOT_STATUS= “NOT ISSUED”
“PROVISIONAL” := Number of DAL file records where BALLOT_STATUS= “PROVISIONAL” and APP_STATUS=”APPROVED”
“DELETED” := Number of DAL file records where BALLOT_STATUS= “DELETED”
“MARKED” := Number of DAL file records where BALLOT_STATUS= “MARKED” and APP_STATUS=”APPROVED”
“ON_MACHINE” := Number of DAL file records where BALLOT_STATUS= “ON_MACHINE” and APP_STATUS=”APPROVED”
“PRE_PROCESSED” := Number of DAL file records where BALLOT_STATUS= “PRE-PROCESSED” and APP_STATUS=”APPROVED”
“FWAB” := Number of DAL file records where BALLOT_STATUS= “FWAB” and APP_STATUS=”APPROVED”
“MAIL_IN” := The sum of “MARKED” + “PRE_PROCESSED”
“COUNTABLE” := The sum of “PROVISIONAL” + “MARKED” + “PRE_PROCESSED” + “ON_MACHINE” + “FWAB”
“MILITARY” := Number of DAL file records where VOTER_TYPE= “MILITARY”
“OVERSEAS” := Number of DAL file records where VOTER_TYPE= “OVERSEAS”
“TEMPORARY” := Number of DAL file records where VOTER_TYPE= “TEMPORARY”
“MILITARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “MILITARY” and where COUNTABLE is True
“OVERSEAS_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “OVERSEAS” and where COUNTABLE is True
“TEMPORARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “TEMPORARY” and where COUNTABLE is True
“MILITARY_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “MILITARY” and where BALLOT_STATUS==”ISSUED”
“OVERSEAS_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “OVERSEAS” and where BALLOT_STATUS==”ISSUED”
“TEMPORARY_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “TEMPORARY” and where BALLOT_STATUS==”ISSUED”
“COUNTABLE_HIGH_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has voted in 75% or more of the November General elections on record. (i.e. They have a high November General propensity score)
“COUNTABLE_MED_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has voted in < 75% and > 0% of the November General elections on record.
“COUNTABLE_ZERO_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has never voted in any of the November General elections on record.
All data purchased by Electoral Process Education Corp. (EPEC) from the VA Dept of Elections (ELECT). All processing performed by EPEC.
If you like the work that EPEC is doing, please support us with a donation.
Using the data provided by the VA Department of Elections (ELECT), we have identified at least 7,343 unique registrations that were self-identified as “Declared Non-Citizen” and removed by ELECT from the voter rolls since May of 2023. Of those 7,343 removals there were 1,225 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 3,515 associated ballots cast identified since Feb of 2019. There were an additional 10 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data, that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 3,525 by 1,235 registrants when combining unique VHL and DAL identifications.
After our initial March 2024 post on this topic, we submitted all of the relevant information that we had at the time to the VA AG’s office. We have not heard any response or update on the matter since that time, besides this being considered an active investigation. We subsequently sent our July results as well to the same contact at the AG’s office, but have had no response. The outgoing VA AG declined to take any action on these cases that we are aware of.
The Arlington County VA Electoral Board undertook their own investigation into this matter after our previous results were posted, and they (as of Sept 10 2024) voted 3-0 to send the information to the AG’s office as well. The Arlington County Commonwealths Attorney also is reported to have an ongoing investigation into the matter. Similar efforts are underway in multiple other counties, including Loudoun and Fairfax counties, to name a few.
In October 2024 the League of Women Voters along with the US DOJ sued VA over this issue and attempted to get an injunction to place ~1,600 of these removed registrations back on the Voter roll. After two lower courts granted the injunction, it was stayed by the US Supreme Court. It is EPEC’s opinion that the State of VA is correctly applying the law in this matter, as I detailed in a X.com post on Oct 12.
Background:
The VA Department of Elections continuously tries to identify and remove invalid or out of date registration records from the voter rolls. One category used for removal is if a registrant has been determined to be a non-citizen. It is required by the VA Constitution that only citizens are allowed to vote in VA elections.
In elections by the people, the qualifications of voters shall be as follows: Each voter shall be a citizen of the United States, shall be eighteen years of age, shall fulfill the residence requirements set forth in this section, and shall be registered to vote pursuant to this article. …VA Constitution, Article II, Section 1. https://law.lis.virginia.gov/constitution/article2/section1/
Additionally, according to VA Code Section 24.2-1004, the act of knowingly casting a ballot by someone who is not eligible to vote is a Class 6 felony.
A. Any person who wrongfully deposits a ballot in the ballot container or casts a vote on any voting equipment, is guilty of a Class 1 misdemeanor.
B. Any person who intentionally (i) votes more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (ii) procures, assists, or induces another to vote more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (iii) votes knowing that he is not qualified to vote where and when the vote is to be given, or (iv) procures, assists, or induces another to vote knowing that such person is not qualified to vote where and when the vote is to be given is guilty of a Class 6 felony.https://law.lis.virginia.gov/vacode/title24.2/chapter10/section24.2-1004/
ELECT makes available for purchase by qualifying parties various different data sets, including the registered voter list (RVL) and the voter history list information file (VHL). Additionally, ELECT makes available a Monthly Update Service (MUS) subscription that is published at the beginning of each month and contains (almost) all of the Voter List changes and transactions for the previous period.
In the MUS data there is a “NVRAReasonCode” field that is associated with each transaction that gives the reason for the update or change in the voter record. This is in accordance with the disclosure and transparency requirements in the NVRA. One of the possible reason codes given for records that are removed is “Declared Non-Citizen.”
EPEC has been consistently purchasing and archiving all of these official records as part of our ongoing work to document and educate the public as to the ongoing operations of our elections. (If your interested in supporting this work, please head on over to our donation page, or to our give-send-go campaign to make a tax-deductible donation, as these data purchases are not cheap!)
EPEC looked at the number of records associated with unique voter identification numbers that had been identified for removal from the voter record due to non-citizenship status, per the entries in the MUS, and correlated those results with our accumulated voter history list information in order to determine how many non-citizen registrations had corresponding records of ballots cast in previous elections. We only considered those records that are currently in a non-active state as of the latest MUS transaction log, as some determinations of non-citizenship status in the historical MUS transaction log might have been due to error and subsequently corrected and reinstated to active status. That is, and we emphasize here that we are not considering those records that had a “Declared Non-Citizen” disqualification, but were then subsequently reinstated and reactivated by ELECT.
Note that while EPEC has periodically purchased full copies of the Voter History List for our archive, there is a known issue with the way ELECT handles removals from the voter record that can cause sampling issues depending on the time the VHL file is purchased, and records of legitimately cast ballots to not be present in the VHL: Namely, when ELECT removes a voter from the voter list, they also remove all instances of that voter ID from voter history information and other data files provided to qualified organizations. (IMO … thats a terrible way to manage the data, but that is the way it is done.) In light of that, EPEC also used its archived versions of the Daily Absentee List (DAL) for recent elections in order to attempt to find records of votes cast that might otherwise be missing from the VHL.
Results:
There were 7,343 unique voter records marked for removal with the reason of “Declared Non-Citizen” and not subsequently reinstated in the accumulated MUS record that EPEC began collecting in mid-2023. Of those 7,343 there were 1,225 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 3,515 associated ballots cast identified since Feb of 2019. Figure 1 below shows the distribution of non-citizen voters in the cumulative MUS file history. The blue trace represent the total identified and CANCELED non-citizen registrations, and the yellow trace represents the number of those records that also had corresponding records (at least 1) in the accumulated voter history data.
Figure 1: Distribution if the number of identified non-citizen records and ballots in the cumulative ELECT MUS file history. The x-axis is the date that a record was marked as CANCELED for the reason of “Declared Non-Citizen”.
Note that the data contained in the MUS updates often covers more than a single month period. In other words, the individual MUS files are oversampled. Subsequent MUS files can therefore also have repeated entries from previous versions, as their data may overlap. Our analysis used the first unique entry for a given voter ID marked as “Declared Non-Citizen” in the cumulative MUS record, that had not been subsequently reinstated, in order to build Figure 1. This data oversampling in the MUS may help explain the relative spike in the first (May 2023) bin compared to subsequent months.
As VHL information can be incomplete depending on the time the VHL data was purchased in relation to the time that registrants were removed from voter records, EPEC also checked these non-citizen removals against the archived history of Daily Absentee List (DAL) files that EPEC has accumulated. There were an additional 10 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 3,525 by 1,235 registrants when combining unique VHL and DAL identifications.
These identifications represent only the individuals who declared themselves as non-citizen status through official interactions with ELECT, DMV, or other agencies. Each removed registrant was then contacted by the registrar to confirm their non-citizen status prior to removal, as is the current policy. (Again … we are only considering those records that we’re flagged as “Declared Non-Citizen”, removed and never reinstated.)
The distribution of identified unique voter ID’s for the 1,225 identified non-citizen voters per VA locality is given below in Table 1. It should be noted that each ballot record has a specific locality associated with where the ballot was cast, whereas unique individuals might move between localities over time. The assignment of unique identified individuals to each locality in table 1 is therefore based on the locality listed in the specific MUS “Declared Non-Citizen” record for that individual, while the assignment of ballot cast to Localities is based on the individual VHL/DAL records. A person could have lived and voted multiple times in one county, then moved to another county and voted again before finally being determined as a non-citizen. The same person would have generated multiple VHL/DAL records for each ballot cast, and associated with potentially different localities. This should be kept in mind when attempting to interpret Table 1.
LOCALITY_NAME
REMOVED
VOTED_VHL
VOTES_VHL
VOTED_DAL_NOT_IN_VHL
ACCOMACK COUNTY
18
0
1
0
ALBEMARLE COUNTY
74
16
59
0
ALEXANDRIA CITY
270
31
71
0
ALLEGHANY COUNTY
0
0
0
0
AMELIA COUNTY
4
2
9
0
AMHERST COUNTY
1
0
0
0
APPOMATTOX COUNTY
2
0
0
0
ARLINGTON COUNTY
219
34
75
0
AUGUSTA COUNTY
32
6
10
0
BATH COUNTY
3
1
1
0
BEDFORD COUNTY
19
4
10
0
BLAND COUNTY
1
1
3
0
BOTETOURT COUNTY
5
0
0
0
BRISTOL CITY
2
0
0
0
BRUNSWICK COUNTY
3
2
6
0
BUCHANAN COUNTY
0
0
0
0
BUCKINGHAM COUNTY
4
0
0
0
BUENA VISTA CITY
0
0
0
0
CAMPBELL COUNTY
0
0
6
0
CAROLINE COUNTY
15
2
6
0
CARROLL COUNTY
14
5
16
0
CHARLES CITY COUNTY
7
3
14
0
CHARLOTTE COUNTY
1
0
0
0
CHARLOTTESVILLE CITY
38
8
18
0
CHESAPEAKE CITY
153
44
136
0
CHESTERFIELD COUNTY
438
51
148
0
CLARKE COUNTY
13
4
6
0
COLONIAL HEIGHTS CITY
23
2
4
0
COVINGTON CITY
4
0
1
0
CRAIG COUNTY
3
2
3
0
CULPEPER COUNTY
45
7
22
0
CUMBERLAND COUNTY
1
0
0
0
DANVILLE CITY
37
5
13
0
DICKENSON COUNTY
3
1
1
0
DINWIDDIE COUNTY
18
6
25
0
EMPORIA CITY
4
0
0
0
ESSEX COUNTY
8
2
4
0
FAIRFAX CITY
28
7
22
0
FAIRFAX COUNTY
1261
224
537
2
FALLS CHURCH CITY
8
2
5
0
FAUQUIER COUNTY
41
5
11
0
FLOYD COUNTY
0
0
0
0
FLUVANNA COUNTY
4
2
10
0
FRANKLIN CITY
1
0
0
0
FRANKLIN COUNTY
10
5
16
0
FREDERICK COUNTY
37
4
5
0
FREDERICKSBURG CITY
43
3
10
0
GALAX CITY
4
0
0
0
GILES COUNTY
3
0
0
0
GLOUCESTER COUNTY
6
2
2
1
GOOCHLAND COUNTY
9
0
0
0
GRAYSON COUNTY
3
0
0
1
GREENE COUNTY
15
2
8
0
GREENSVILLE COUNTY
1
0
0
0
HALIFAX COUNTY
8
1
2
0
HAMPTON CITY
121
29
83
0
HANOVER COUNTY
28
3
9
0
HARRISONBURG CITY
143
8
17
0
HENRICO COUNTY
302
14
71
0
HENRY COUNTY
1
0
2
0
HIGHLAND COUNTY
0
0
0
0
HOPEWELL CITY
0
0
0
0
ISLE OF WIGHT COUNTY
3
0
2
0
JAMES CITY COUNTY
58
9
32
0
KING AND QUEEN COUNTY
3
2
7
0
KING GEORGE COUNTY
10
1
1
0
KING WILLIAM COUNTY
3
1
12
0
LANCASTER COUNTY
1
1
0
0
LEE COUNTY
0
0
0
0
LEXINGTON CITY
0
0
0
0
LOUDOUN COUNTY
418
99
228
0
LOUISA COUNTY
13
2
11
0
LUNENBURG COUNTY
2
0
0
0
LYNCHBURG CITY
43
7
20
0
MADISON COUNTY
1
0
0
0
MANASSAS CITY
90
10
32
0
MANASSAS PARK CITY
43
3
9
0
MARTINSVILLE CITY
16
4
3
0
MATHEWS COUNTY
0
0
0
0
MECKLENBURG COUNTY
14
7
18
0
MIDDLESEX COUNTY
3
1
1
0
MONTGOMERY COUNTY
26
4
17
1
NELSON COUNTY
3
0
0
0
NEW KENT COUNTY
9
5
22
0
NEWPORT NEWS CITY
211
47
161
0
NORFOLK CITY
199
33
123
0
NORTHAMPTON COUNTY
6
1
4
0
NORTHUMBERLAND COUNTY
3
2
7
0
NORTON CITY
1
0
0
0
NOTTOWAY COUNTY
7
1
6
0
ORANGE COUNTY
9
5
14
0
PAGE COUNTY
0
0
0
0
PATRICK COUNTY
5
1
2
0
PETERSBURG CITY
44
7
26
0
PITTSYLVANIA COUNTY
15
3
9
0
POQUOSON CITY
1
0
0
0
PORTSMOUTH CITY
96
33
93
0
POWHATAN COUNTY
5
1
8
0
PRINCE EDWARD COUNTY
14
3
11
0
PRINCE GEORGE COUNTY
30
3
5
0
PRINCE WILLIAM COUNTY
827
126
348
1
PULASKI COUNTY
13
4
7
0
RADFORD CITY
1
0
1
0
RAPPAHANNOCK COUNTY
3
0
0
0
RICHMOND CITY
310
54
176
1
RICHMOND COUNTY
0
0
0
0
ROANOKE CITY
159
9
18
0
ROANOKE COUNTY
30
3
4
0
ROCKBRIDGE COUNTY
0
0
1
0
ROCKINGHAM COUNTY
69
14
34
0
RUSSELL COUNTY
6
3
9
0
SALEM CITY
10
2
1
0
SCOTT COUNTY
6
4
17
0
SHENANDOAH COUNTY
35
3
10
0
SMYTH COUNTY
8
3
14
0
SOUTHAMPTON COUNTY
0
0
0
0
SPOTSYLVANIA COUNTY
123
4
11
0
STAFFORD COUNTY
210
30
69
2
STAUNTON CITY
7
0
0
0
SUFFOLK CITY
67
25
81
1
SURRY COUNTY
2
0
0
0
SUSSEX COUNTY
2
1
3
0
TAZEWELL COUNTY
8
2
9
0
VIRGINIA BEACH CITY
336
65
260
0
WARREN COUNTY
26
4
12
0
WASHINGTON COUNTY
14
3
8
0
WAYNESBORO CITY
3
0
0
0
WESTMORELAND COUNTY
7
0
0
0
WILLIAMSBURG CITY
17
3
5
0
WINCHESTER CITY
40
3
4
0
WISE COUNTY
2
1
2
0
WYTHE COUNTY
3
0
0
0
YORK COUNTY
35
13
49
0
7,343
1,225
3,515
10
The distribution of the 3,515 ballots that were identified as being cast by non-citizen voters (the yellow trace in Figure 1) in previous elections is shown in Figure 2. The most significant spikes are in the 2019, 2020, 2021 and 2022 November General elections, as well as the 2020 March Democratic presidential primary. Figure 3, which shows this distribution as a percentage of votes cast. Please note the scale of the Y-axis on the percent plot in Figure 3 is in percent of total ballots cast in each election. These graphs were only produced for the VHL data, and do not include the DAL identified records.
Figure 2: Distribution of identified non-citizen ballots cast in previous elections.Figure 3: Distribution of identified non-citizen ballots cast in previous elections as percent of total ballots cast, according to entries in the VHL/DAL data files.
Figures 4 and 5 show the distribution of the registration dates of the identified non-citizen records. The same data is plotted in figure 4 and 5, with the only difference being the scale of the Y-axis in order to better observe the dynamic range of the values. When we look at the registration date of these identified records, we see that there is a distinct relative increase starting around 1996, and then again around 2012.
Figure 4: Registration dates of the identified non-citizen records. Absolute count on y-axis.Figure 5: Registration dates of the identified non-citizen records. Logarithmic Y-axis scale.
EPEC made a FOIA request to the VA Attorney General’s office on March 11, 2024 inquiring for any records regarding how many prosecutions for non-citizen voting had occurred since June of 2023. We received a response that the AG had no such relevant records.
EPEC subsequently submitted our March analysis dataset to the VA AG’s office upon their request. We have heard no updates or status as to any action taken by the AG’s office since that time, except that it is being considered an ongoing investigation.
Discussion
It appears from the MUS data, that the VA Department of Elections (ELECT) is doing routine identification, cleanup and removal of non-citizen registrations, which is a good thing and we commend them for their continued efforts to maintain clean voter registration lists.
Given the current court cases filed by LWV and DOJ against the state of VA on the matter, it is important to note that the records identified in the MUS are only those resulting from individuals self-identifying as a non-citizen via interactions with DMV, ELECT, or other official avenues, and that the data presented here specifically excludes those individuals that were subsequently reinstated onto the voter rolls.
The fact that a small number of these identified non-citizen registrations are also associated with (presumably … if the data from ELECT is accurate) illegally cast ballots in previous elections does raise a number of questions that citizens should be (politely) asking and discussing with their legislators, elected and appointed government officials. Each act of non-citizen voting is a de-facto disenfranchisement of legal voters rights, and is a punishable offense under VA law.
Q: How did these registrants get placed onto the voter rolls in the first place?
Q: What method and/or data sources are used by the state to identify non-citizen registrations for removal? If that process is exhaustive, and covers all registrations, then these numbers might be considered to represent a statistical complete picture of the problem. If that process is not exhaustive, in that it only uses serendipitous corroborating data sources, then these results likely under-represent the scale of the issues.
Q: As noted above, we are only considering here those individuals who have not had their records re-instated or reactivated after a determination of non-citizen status. We do not have enough information to determine how or why some records were first determined to be non-citizen, canceled and then subsequently re-instated. One potential area of concern is determining whether or not registrants might be falsely or errantly claiming to not be a citizen on official documents in order to be excused from jury duty, for example, and then work to re-instate their voting status once those documents percolate through the system to ELECT and are flagged for removal. This is a wholly separate but serious issue, as making false claims on official documents is itself a punishable offense.
Q: What procedures, processes and technical solutions are in place to prevent current or future registration and casting of ballots by non-citizens? This is especially pertinent given the recent state of the flow of illegal immigrants crossing our national borders. According to a recent report by Yahoo Finance, VA is one of the top 30 destinations for illegal migrants, with both Loudoun County and Fairfax making the list.
Q: Why have none of the identified non-citizens who also cast ballots been investigated or prosecuted under VA Code 24.2-1004? As the identification of these ballots comes directly from looking at the official records produced by ELECT, it seems prudent for these to be forwarded by ELECT to the AG’s office with a recommendation to investigate and prosecute. Yet our FOIA request to the VA AG’s office inquiring as to any records associated with these types of investigations or prosecutions produced a “no relevant records exist” response. And since we submitted this information to the AG’s office, there has been no follow up.
Additionally, this evidence which is derived from only official state records, directly contradicts multiple news media reports and attestations that non-citizen voting is a “Myth”, and that non-citizen voting happens “almost never”. If the data from ELECT is accurate, then there are at least 3,515 ballots that have been cast by non-citizen voters just since 2019. Now, that is still very infrequent, but it is not “almost never.” It is a legitimate concern … and these discoveries are only the registrations that have been found and removed from the voter roles by ELECT and that we can observe in the data. We do not know how many exist that we do not know about.
It should be reiterated that these are only the records that we can observe given our data repository, and how often we can realistically purchase and acquire voter history and voter registration information. It is therefore likely that this represents a significant undercount of the occurrences of non-citizen voters and non-citizen voting.
Due to the infrequent nature of these data purchases, it is very likely that some individuals have had their voter history or voter registration information completely removed from the record in between our purchases. Additionally, we know that the MUS data does not entirely encompass all transactions performed on the RVL by the department of elections, so there may be yet other unknown transactions that we are missing.
For information that is supposed to be publicly available (according to federal NVRA laws), the state has put up significant hurdles in order for citizens and organizations to acquire it for use it for ensuring transparency and integrity of our electoral process. If we are to have elections that are transparent and accountable to the public, then we must insist that the data be made available and accessible.
Below you will find the current summary data and graphics from the 2024 VA November General Election Daily Absentee List files. We pull the DAL file everyday and track the count of each specific ballot category in each daily file.
Note: Page may take a moment to load the graphics objects.
Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The logarithmic plot is the same underlying data as the linear scale plot, except with a logarithmic y-scale in order to be able to compress the dynamic range and see the shape of all of the data curves in a single graphic. Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The underlying data for the graphics above is provided in the summary data table.
Additional Data:
Additional CSV datasets stratified by Locality, City, Congressional District, State House District, State Senate District, and Precinct are available here. Please note that you need to give the page time to load before trying to drill down into any of the listed subdirectories, and mobile browsers have shown some issues.
A direct link to a zip file with ALL of the metrics data stratified by Locality, etc is here.
Data column descriptions:
“ISSUED” := Number of DAL file records where BALLOT_STATUS= “ISSUED”
“NOT_ISSUED” := Number of DAL file records where BALLOT_STATUS= “NOT ISSUED”
“PROVISIONAL” := Number of DAL file records where BALLOT_STATUS= “PROVISIONAL” and APP_STATUS=”APPROVED”
“DELETED” := Number of DAL file records where BALLOT_STATUS= “DELETED”
“MARKED” := Number of DAL file records where BALLOT_STATUS= “MARKED” and APP_STATUS=”APPROVED”
“ON_MACHINE” := Number of DAL file records where BALLOT_STATUS= “ON_MACHINE” and APP_STATUS=”APPROVED”
“PRE_PROCESSED” := Number of DAL file records where BALLOT_STATUS= “PRE-PROCESSED” and APP_STATUS=”APPROVED”
“FWAB” := Number of DAL file records where BALLOT_STATUS= “FWAB” and APP_STATUS=”APPROVED”
“MAIL_IN” := The sum of “MARKED” + “PRE_PROCESSED”
“COUNTABLE” := The sum of “PROVISIONAL” + “MARKED” + “PRE_PROCESSED” + “ON_MACHINE” + “FWAB”
“MILITARY” := Number of DAL file records where VOTER_TYPE= “MILITARY”
“OVERSEAS” := Number of DAL file records where VOTER_TYPE= “OVERSEAS”
“TEMPORARY” := Number of DAL file records where VOTER_TYPE= “TEMPORARY”
“MILITARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “MILITARY” and where COUNTABLE is True
“OVERSEAS_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “OVERSEAS” and where COUNTABLE is True
“TEMPORARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “TEMPORARY” and where COUNTABLE is True
“MILITARY_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “MILITARY” and where BALLOT_STATUS==”ISSUED”
“OVERSEAS_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “OVERSEAS” and where BALLOT_STATUS==”ISSUED”
“TEMPORARY_ISSUED” := Number of DAL file records where APP_STATUS==”Approved”, VOTER_TYPE= “TEMPORARY” and where BALLOT_STATUS==”ISSUED”
“COUNTABLE_HIGH_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has voted in 75% or more of the November General elections on record. (i.e. They have a high November General propensity score)
“COUNTABLE_MED_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has voted in < 75% and > 0% of the November General elections on record.
“COUNTABLE_ZERO_PROP_NG” := Number of DAL file records where COUNTABLE is True and the registrant has never voted in any of the November General elections on record.
All data purchased by Electoral Process Education Corp. (EPEC) from the VA Dept of Elections (ELECT). All processing performed by EPEC.
If you like the work that EPEC is doing, please support us with a donation.
I previously had put together analysis that utilized the full name and date of birth information from the Virginia Registered Voter List (“RVL”) in order to look for duplicate registrations, either exact matches or by using a string distance measure (the Levenshtein distance) to accommodate for typos, abbreviations, and mis-spellings.
Just prior to the start of early voting in the 2024 November General Election, we were notified that the department of elections (“ELECT”) was removing the full date of birth from the data we purchase. This removal of the full date of birth increased the number of false positive in our duplication detection scripts. Our organization, as well as others, were ready to go to court to compel ELECT to reinstate the data. (Link to our notice of violation letter is here).
Happily, we ended up not having to go to court as ELECT decided to reinstate the data earlier this year (~May timeframe), which means we can resume our computation and detections of potentially duplicate entries again with much more reliable results. The results below mirror our previous analysis, but with the new updated data.
Using the latest Registered Voter List (RVL) and Voter History List (VHL) data purchased directly from the VA Department of Elections (ELECT) I wrote up an analysis script to check for potentially duplicated registrant records in the RVL and cross reference duplicate pairings with the VHL to identify potential duplicate votes. The details are summarized below.
Please note that I will not publish voter Personally Identifiable Information (PII) on this blog. I have substituted fictitious, but representative, PII information for all examples given below, and cryptographically hashed all voter information in the downloadable results file. I will make available the detailed information to those that have the authorization to receive and process voter data upon request (contact us).
Summary of Results:
As a baseline, there were 5,514 (as compared to 6,464 in the previous May 27, 2023 posting) records for STATUS=’Active’ registrants that adhered to the definition of a “duplicate” when Social Security Number (SSN) is not available, as defined by the MOU between DMV and ELECT (section 7.3) of having the same First Name + Last Name + Full Date of Birth (DOB). It should be noted that most records held by DMV and ELECT have a SSN associated with them (or at least they should). SSN information is not distributed as part of the data purchased by us from ELECT, however, so this is the appropriate standard baseline for this work.
Upgrading our definition of a potential duplicate to [First + Middle + Last + Suffix + DOB] and using a LevenshteinDistance=0 (meaning an exact match) drops the number of potential duplicates to 1,062 (1,982 previously), with each identified registrant in a pair having an exactly matching string result and unique voter ID numbers.
According to my derivations and simulations that are described in detail here, we should only expect to see an average of 11 (+/- 3) potential duplicate pairs (a.k.a. “collisions”) at a distance of 0. This is over two orders of magnitude different than what we observe in the compiled results. Such a discrepancy deserves further investigation and verification.
Allowing for a single string difference by setting LevenshteinDistance<=1 increases the pool of potential duplicates to 4,572 (5,568 previously). While this relaxation of the filter does allow us to find certain issues (described below) it also increases our chances of finding false positives as well. The LD metric results should not be viewed as a final determination, but as simply a useful tool to make an initial pass through the data and find candidate matches that still require further review, verification and validation.
Increasing to LevenshteinDistance<=2 brings the number of potential duplicates up to 27,178 (32,610 previously). When we increase to LD <= 3 we get an explosion of 158,940 (183,130 previously) potential duplicates.
It should be noted that compared to our last full analysis (May 2023) the dept of elections has reduced the number of exact duplicates by about 45%, and by approximately 13-15% for the other inexact categories.
Method:
For every entry in the latest RVL, I performed a string distance comparison, based on Levenshtein distance, between every possible pair of strings of (FIRST NAME + MIDDLE NAME + LAST NAME + SUFFIX + FULL DOB). For the ~6M+ different RVL entries, we therefore need to compute ~3.8 x 10^13 different string comparisons, and each string comparison can require upwards of 75 x 75 individual character comparisons, meaning the total number of character operations is on the order of 202.5 Quadrillion, not including logging and I/O.
A distance of 0 indicates the strings being compared are identical, a distance of 1 indicates that there a single character can be changed, inserted or removed that would convert one string into the other. A distance of 2 indicates that 2 modifications are required, etc.
Example: The string pair of “ALISHA” –> “ALISHIA” has an LD of 1, corresponding to the addition of an “I” before the final “A”.
I aggregated all of the Levenshtein distance pairings that were less than or equal to 3 characters different in order to identify potential (key word) duplicated registrants, and additionally for each pairing looked at the voter history information for each registrant in the pair to determine if there was a potential (again … key word) for multiple ballots to be cast by the same person in any given election. As we allow for more characters to be different, we potentially are including many more likely false positive matches, even if we are catching more true positives.
For example: At a distance of 4 the strings of “Dave Joseph Smith M 10/01/1981” and “Tony Joseph Smith M 10/01/1981” at the same address would produce a potential match, but so would “Davey Joseph Smith M 10/01/1981” and “David Josiph Smith M 10/02/1981”. The first pair is more likely to be a false positive due to twins, while the second is more likely to be due to typo’s, mistakes, or use of nicknames and might warrant further investigation. A much stronger potential match would be something like “David Josiph Smith M 10/01/1981” and “David Joseph Smith M 10/01/1981”, with a distance of 1 at the same address. In an attempt to limit false positives, I have clamped the distance checks to <= 3 in this analysis.
Note that the Levenshtein distance measure is importantly able to identify potential insertions or deletions as well as character changes, which is an improvement over the Hamming distance measure. This is exampled by the following pairing: “David Joseph Smith M 10/01/1981” and “Dave Joseph Smith M 10/01/1981”. The change from “id” to “e” in the first name adds/subtracts a character making the rest of the characters in the remainder of the string shift position. A Levenshtein metric would correctly return a small distance of 2, whereas the hamming distance returns 27.
Also note that with the official records obtained from ELECT, and in accordance with the laws of VA, I do not have access to the social security number or drivers license numbers for each registration record, which would help in identifying and discriminating potential duplicate errors vs things like twins, etc. I only have the first name, middle name, last name, suffix, month of birth, day of birth, year of birth, gender, and address information that I can work with. I can therefore only take things so far before someone else (with investigative authority and ability to access those other fields) would need to step in and confirm and validate these findings.
Results:
The summary totals are as follows, with detailed examples.
DMV_ELECT MOU Standard
LD <= 0
LD <= 1
LD <= 2
LD <= 3
Number of Potential Duplicate Registrant Pairs
6,108
1,250
5,116
29,480
170,772
Number of Potential Duplicate Registrant Pairs (Active Only)
5,514
1,062
4,572
27,178
158,940
Number of Potential Duplicate Ballots
2,856
58
1,580
16,984
109,428
Number of Potential Duplicate Ballots (Active Only)
2,770
54
1,552
16,410
105,932
Examples of Types of Issues Observed:
NOTE THE BELOW INFORMATION HAS HAD THE VOTER PERSONALLY IDENTIFIABLE INFORMATION (“PII”) FICTIONALIZED. WHILE THESE ARE BASED ON REAL DATA TO ILLUSTRATE THE DIFFERENT TYPES OF OBSERVATIONS, THEY DO NOT REPRESENT REAL VOTER INFORMATION.
Example #1: The following set of records has the exact match (distance = 0) of full name and full birthdate (including year), but different address and different voter ID numbers AND there was a vote cast from each of those unique voter ID’s in the 2020 General Election. While it’s remotely possible that two individuals share the exact same name, month, day and year of birth … it is probabilistically unlikely (see here), and should warrant further scrutiny.
Voter Record A:
AMY BETH McVOTER 12/05/1970 F 12345 CITIZEN CT
Voter Record B:
AMY BETH McVOTER 12/05/1970 F 5678 McPUBLIC DR
Example #2: This set of records has a single character different (distance of 1) in their first name, but middle name, last name, birthdate and address are identical AND both records are associated with votes that were cast in the 2020, 2021, and 2022 November General Elections. While it is possible that this is a pair of 23 year old twins (with same middle names) that live together, it at least bears looking into.
Voter Record A:
TAYLOR DAVID VOTER 02/16/2000 M 6543 OVERLOOK AVE NW
Voter Record B:
DAYLOR DAVID VOTER 02/16/2000 M 6543 OVERLOOK AVE NW
Example #3: This set of records has two characters different (distance of 2) in their birthdate, but name and address are identical AND the birth years are too close together for a child/parent relationship, AND both records are associated with votes that were cast in the 2020 and 2022 November General Elections.
Voter Record A:
REGINA DESEREE MACGUFFIN 02/05/1973 F 123 POPE AVE
Voter Record B:
REGINA DESEREE MACGUFFIN 03/07/1973 F 123 POPE AVE
Example #4: This set of records has again a single character different (distance of 1) in the first name (but not the first letter this time) and the last name, birthdate and address are identical. There were also multiple votes cast in the 2019 and 2022 November General from these registrants.
Voter Record A:
EDGARD JOHNSON 10/19/1981 M 5498 PAGELAND BLVD
Voter Record B:
EDUARD JOHNSON 10/19/1981 M 5498 PAGELAND BLVD
Example #5: This set of records has two characters different (distance of 2) in the first and middle names and the last name, birthdate, gender and address are identical. There were also multiple votes cast in the 2021 and 2022 November General from these registrants. Again it is possible that these records represent a set of twins given the information that ELECT provides.
Voter Record A:
ALANA JAVETTE THOMPSON 01/01/2003 F 123 CHARITY LN
Voter Record B:
ALAYA YAVETTE THOMPSON 01/01/2003 F 123 CHARITY LN
Example #6: The following set of records has the exact match (Distance = 0) of full name and full birthdate (including year), and same address but different voter ID numbers. There was no duplicated votes in the same election detected between the two ID numbers.
Voter Record A:
JAMES TIBERIUS KIRK 03/22/2223 M 1701 Enterprise Bridge
Voter Record B:
JAMES TIBERIUS KIRK 03/22/2223 M 1701 Enterprise Bridge
Example #7: The following set of records has the exact match (distance = 0) of full name and full birthdate (including year), same address but different gender and voter ID numbers. There was no duplicated votes in the same election detected between the two ID numbers.
Voter Record A:
MAXWELL QUAID CLINGER 11/03/2004 M 4077 MASH DR
Voter Record B:
MAXWELL QUAID CLINGER 11/03/2004 U 4077 MASH DR
Example #8: The following set of records has a single punctuation character different, with the same address but different voter ID numbers. There was no duplicated votes in the same election detected between the two ID numbers.
Voter Record A:
JOHN JACOB JINGLHIEMER-SCHMIDT 06/29/1997 M 12345 JACOBS RD
Voter Record B:
JOHN JACOB JINGLHIEMER SCHMIDT 06/29/1997 M 12345 JACOBS RD
Results Dataset:
A full version of the aggregated excel data is provided below, however all voter information (ID, first name, middle name, last name, dob, gender, address) have been removed and replaced by a one-way hash number, with randomized salt, based on the voter [First Name, Middle Name, Last Name, Suffix, and DOB]. The full file with specific voter information can be provided to parties authorized by ELECT to receive and process voter information, Election Officials, or Law Enforcement upon request.
Using the data provided by the VA Department of Elections (ELECT), we have identified at least 6,086 unique registrations that were self-identified as “Declared Non-Citizen” and removed by ELECT from the voter rolls since May of 2023. Of those 6,086 removals there were 1,003 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 2,839 associated ballots cast identified since Feb of 2019. There were an additional 8 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data, that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 2,847 by 1,011 registrants when combining unique VHL and DAL identifications.
After our initial March 2024 post on this topic, we submitted all of the relevant information that we had at the time to the VA AG’s office. We have not heard any response or update on the matter since that time, besides this being considered an active investigation. We subsequently sent our July results as well to the same contact at the AG’s office, but have had no response.
The Arlington County VA Electoral Board undertook their own investigation into this matter after our previous results were posted, and they (as of Sept 10 2024) voted 3-0 to send the information to the AG’s office as well. The Arlington County Commonwealths Attorney also is reported to have an ongoing investigation into the matter. Similar efforts are underway in multiple other counties, including Loudoun and Fairfax counties, to name a few.
In October 2024 the League of Women Voters along with the US DOJ sued VA over this issue and attempted to get an injunction to place ~1,600 of these removed registrations back on the Voter roll. After two lower courts granted the injunction, it was stayed by the US Supreme Court. It is EPEC’s opinion that the State of VA is correctly applying the law in this matter, as I detailed in a X.com post on Oct 12.
Background:
The VA Department of Elections continuously tries to identify and remove invalid or out of date registration records from the voter rolls. One category used for removal is if a registrant has been determined to be a non-citizen. It is required by the VA Constitution that only citizens are allowed to vote in VA elections.
In elections by the people, the qualifications of voters shall be as follows: Each voter shall be a citizen of the United States, shall be eighteen years of age, shall fulfill the residence requirements set forth in this section, and shall be registered to vote pursuant to this article. …VA Constitution, Article II, Section 1. https://law.lis.virginia.gov/constitution/article2/section1/
Additionally, according to VA Code Section 24.2-1004, the act of knowingly casting a ballot by someone who is not eligible to vote is a Class 6 felony.
A. Any person who wrongfully deposits a ballot in the ballot container or casts a vote on any voting equipment, is guilty of a Class 1 misdemeanor.
B. Any person who intentionally (i) votes more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (ii) procures, assists, or induces another to vote more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (iii) votes knowing that he is not qualified to vote where and when the vote is to be given, or (iv) procures, assists, or induces another to vote knowing that such person is not qualified to vote where and when the vote is to be given is guilty of a Class 6 felony.https://law.lis.virginia.gov/vacode/title24.2/chapter10/section24.2-1004/
ELECT makes available for purchase by qualifying parties various different data sets, including the registered voter list (RVL) and the voter history list information file (VHL). Additionally, ELECT makes available a Monthly Update Service (MUS) subscription that is published at the beginning of each month and contains (almost) all of the Voter List changes and transactions for the previous period.
In the MUS data there is a “NVRAReasonCode” field that is associated with each transaction that gives the reason for the update or change in the voter record. This is in accordance with the disclosure and transparency requirements in the NVRA. One of the possible reason codes given for records that are removed is “Declared Non-Citizen.”
EPEC has been consistently purchasing and archiving all of these official records as part of our ongoing work to document and educate the public as to the ongoing operations of our elections. (If your interested in supporting this work, please head on over to our donation page, or to our give-send-go campaign to make a tax-deductible donation, as these data purchases are not cheap!)
EPEC looked at the number of records associated with unique voter identification numbers that had been identified for removal from the voter record due to non-citizenship status, per the entries in the MUS, and correlated those results with our accumulated voter history list information in order to determine how many non-citizen registrations had corresponding records of ballots cast in previous elections. We only considered those records that are currently in a non-active state as of the latest MUS transaction log, as some determinations of non-citizenship status in the historical MUS transaction log might have been due to error and subsequently corrected and reinstated to active status. That is, and we emphasize here that we are not considering those records that had a “Declared Non-Citizen” disqualification, but were then subsequently reinstated and reactivated by ELECT.
Note that while EPEC has periodically purchased full copies of the Voter History List for our archive, there is a known issue with the way ELECT handles removals from the voter record that can cause sampling issues depending on the time the VHL file is purchased, and records of legitimately cast ballots to not be present in the VHL: Namely, when ELECT removes a voter from the voter list, they also remove all instances of that voter ID from voter history information and other data files provided to qualified organizations. (IMO … thats a terrible way to manage the data, but that is the way it is done.) In light of that, EPEC also used its archived versions of the Daily Absentee List (DAL) for recent elections in order to attempt to find records of votes cast that might otherwise be missing from the VHL.
Results:
There were 6,086 unique voter records marked for removal with the reason of “Declared Non-Citizen” and not subsequently reinstated in the accumulated MUS record that EPEC began collecting in mid-2023. Of those 6,086 there were 1,003 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 2,834 associated ballots cast identified since Feb of 2019. Figure 1 below shows the distribution of non-citizen voters in the cumulative MUS file history. The blue trace represent the total identified and CANCELED non-citizen registrations, and the yellow trace represents the number of those records that also had corresponding records (at least 1) in the accumulated voter history data.
Figure 1: Distribution if the number of identified non-citizen records and ballots in the cumulative ELECT MUS file history. The x-axis is the date that a record was marked as CANCELED for the reason of “Declared Non-Citizen”.
Note that the data contained in the MUS updates often covers more than a single month period. In other words, the individual MUS files are oversampled. Subsequent MUS files can therefore also have repeated entries from previous versions, as their data may overlap. Our analysis used the first unique entry for a given voter ID marked as “Declared Non-Citizen” in the cumulative MUS record, that had not been subsequently reinstated, in order to build Figure 1. This data oversampling in the MUS may help explain the small relative increase in the first (May 2023) bin compared to subsequent months.
As VHL information can be incomplete depending on the time the VHL data was purchased in relation to the time that registrants were removed from voter records, EPEC also checked these non-citizen removals against the archived history of Daily Absentee List (DAL) files that EPEC has accumulated. There were an additional 8 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 2,847 by 1,011 registrants when combining unique VHL and DAL identifications.
These identifications represent only the individuals who declared themselves as non-citizen status through official interactions with ELECT, DMV, or other agencies. Each removed registrant was then contacted by the registrar to confirm their non-citizen status.
The distribution of identified unique voter ID’s for the 1,003 identified non-citizen voters per VA locality is given below in Table 1. It should be noted that each ballot record has a specific locality associated with where the ballot was cast, whereas unique individuals might move between localities over time. The assignment of unique identified individuals to each locality in table 1 is therefore based on the locality listed in the specific MUS “Declared Non-Citizen” record for that individual, while the assignment of ballot cast to Localities is based on the individual VHL/DAL records. A person could have lived and voted multiple times in one county, then moved to another county and voted again before finally being determined as a non-citizen. The same person would have generated multiple VHL/DAL records for each ballot cast, and associated with potentially different localities. This should be kept in mind when attempting to interpret Table 1.
LOCALITY_NAME
REMOVED
VOTED_VHL
VOTES_VHL
VOTED_DAL_NOT_IN_VHL
ACCOMACK COUNTY
12
0
1
0
ALBEMARLE COUNTY
71
18
66
0
ALEXANDRIA CITY
225
29
75
0
AMELIA COUNTY
3
2
9
0
AMHERST COUNTY
1
0
0
0
APPOMATTOX COUNTY
1
0
0
0
ARLINGTON COUNTY
188
30
82
0
AUGUSTA COUNTY
31
8
18
0
BATH COUNTY
2
1
1
0
BEDFORD COUNTY
18
3
5
0
BLAND COUNTY
1
1
3
0
BOTETOURT COUNTY
4
0
0
0
BRISTOL CITY
2
0
0
0
BRUNSWICK COUNTY
3
2
6
0
BUCKINGHAM COUNTY
4
0
0
0
CAMPBELL COUNTY
0
0
0
0
CAROLINE COUNTY
15
3
10
0
CARROLL COUNTY
13
5
16
0
CHARLES CITY COUNTY
7
4
22
0
CHARLOTTE COUNTY
1
0
0
0
CHARLOTTESVILLE CITY
34
7
17
0
CHESAPEAKE CITY
133
34
82
0
CHESTERFIELD COUNTY
376
41
119
0
CLARKE COUNTY
8
3
4
0
COLONIAL HEIGHTS CITY
20
2
4
0
COVINGTON CITY
3
0
1
0
CRAIG COUNTY
2
1
1
0
CULPEPER COUNTY
42
6
27
0
CUMBERLAND COUNTY
1
0
0
0
DANVILLE CITY
33
5
13
0
DICKENSON COUNTY
2
0
0
0
DINWIDDIE COUNTY
15
5
21
0
EMPORIA CITY
3
0
0
0
ESSEX COUNTY
5
2
4
0
FAIRFAX CITY
24
6
20
0
FAIRFAX COUNTY
1078
187
448
2
FALLS CHURCH CITY
5
1
2
0
FAUQUIER COUNTY
38
7
12
0
FLUVANNA COUNTY
3
2
10
0
FRANKLIN CITY
1
0
0
0
FRANKLIN COUNTY
4
1
1
0
FREDERICK COUNTY
37
5
5
0
FREDERICKSBURG CITY
35
3
10
0
GALAX CITY
4
0
0
0
GILES COUNTY
3
0
0
0
GLOUCESTER COUNTY
2
1
1
0
GOOCHLAND COUNTY
9
0
0
0
GRAYSON COUNTY
3
0
0
1
GREENE COUNTY
12
2
8
0
GREENSVILLE COUNTY
1
0
0
0
HALIFAX COUNTY
6
1
2
0
HAMPTON CITY
107
25
67
0
HANOVER COUNTY
23
3
9
0
HARRISONBURG CITY
125
7
14
0
HENRICO COUNTY
190
4
27
0
HENRY COUNTY
1
0
2
0
ISLE OF WIGHT COUNTY
3
0
2
0
JAMES CITY COUNTY
49
8
24
0
KING AND QUEEN COUNTY
2
1
4
0
KING GEORGE COUNTY
9
1
1
0
KING WILLIAM COUNTY
2
0
2
0
LANCASTER COUNTY
1
1
0
0
LOUDOUN COUNTY
350
81
198
0
LOUISA COUNTY
13
3
17
0
LUNENBURG COUNTY
1
0
0
0
LYNCHBURG CITY
35
5
10
0
MADISON COUNTY
1
0
0
0
MANASSAS CITY
79
9
22
0
MANASSAS PARK CITY
38
3
9
0
MARTINSVILLE CITY
9
2
1
0
MECKLENBURG COUNTY
13
6
17
0
MIDDLESEX COUNTY
3
1
1
0
MONTGOMERY COUNTY
20
4
17
1
NELSON COUNTY
2
0
0
0
NEW KENT COUNTY
6
3
6
0
NEWPORT NEWS CITY
179
40
131
0
NORFOLK CITY
164
26
91
0
NORTHAMPTON COUNTY
4
0
1
0
NORTHUMBERLAND COUNTY
2
1
1
0
NORTON CITY
1
0
0
0
NOTTOWAY COUNTY
7
1
6
0
ORANGE COUNTY
6
3
7
0
PATRICK COUNTY
5
1
2
0
PETERSBURG CITY
41
9
39
0
PITTSYLVANIA COUNTY
13
2
4
0
POQUOSON CITY
1
0
0
0
PORTSMOUTH CITY
74
23
75
0
POWHATAN COUNTY
5
1
8
0
PRINCE EDWARD COUNTY
11
3
11
0
PRINCE GEORGE COUNTY
23
1
2
0
PRINCE WILLIAM COUNTY
679
100
255
1
PULASKI COUNTY
8
1
2
0
RAPPAHANNOCK COUNTY
3
0
0
0
RICHMOND CITY
265
44
149
1
RICHMOND COUNTY
0
0
0
0
ROANOKE CITY
128
7
9
0
ROANOKE COUNTY
23
3
4
0
ROCKBRIDGE COUNTY
0
0
1
0
ROCKINGHAM COUNTY
21
5
13
0
RUSSELL COUNTY
5
2
3
0
SALEM CITY
7
2
1
0
SCOTT COUNTY
2
1
4
0
SHENANDOAH COUNTY
30
1
5
0
SMYTH COUNTY
2
0
0
0
SPOTSYLVANIA COUNTY
100
4
11
0
STAFFORD COUNTY
171
23
48
2
STAUNTON CITY
5
1
9
0
SUFFOLK CITY
61
26
87
0
SURRY COUNTY
2
0
0
0
SUSSEX COUNTY
2
1
3
0
TAZEWELL COUNTY
7
2
9
0
VIRGINIA BEACH CITY
277
52
208
0
WARREN COUNTY
22
3
4
0
WASHINGTON COUNTY
10
3
6
0
WAYNESBORO CITY
3
0
0
0
WESTMORELAND COUNTY
6
0
0
0
WILLIAMSBURG CITY
15
2
4
0
WINCHESTER CITY
34
2
2
0
WISE COUNTY
1
0
0
0
WYTHE COUNTY
3
0
0
0
YORK COUNTY
32
12
48
0
6086
1003
2839
8
The distribution of the 2,839 ballots that were identified as being cast by non-citizen voters (the yellow trace in Figure 1) in previous elections is shown in Figure 2. The most significant spikes are in the 2019, 2020, 2021 and 2022 November General elections, as well as the 2020 March Democratic presidential primary. Figure 3, which shows this distribution as a percentage of votes cast. Please note the scale of the Y-axis on the percent plot in Figure 3 is in percent of total ballots cast in each election. These graphs were only produced for the VHL data, and do not include the DAL identified records.
Figure 2: Distribution of identified non-citizen ballots cast in previous elections.Figure 3: Distribution of identified non-citizen ballots cast in previous elections as percent of total ballots cast, according to entries in the VHL/DAL data files.
Figures 4 and 5 show the distribution of the registration dates of the identified non-citizen records. The same data is plotted in figure 4 and 5, with the only difference being the scale of the Y-axis in order to better observe the dynamic range of the values. When we look at the registration date of these identified records, we see that there is a distinct relative increase starting around 1996, and then again around 2012.
Figure 4: Registration dates of the identified non-citizen records. Absolute count on y-axis.Figure 5: Registration dates of the identified non-citizen records. Logarithmic Y-axis scale.
EPEC made a FOIA request to the VA Attorney General’s office on March 11, 2024 inquiring for any records regarding how many prosecutions for non-citizen voting had occurred since June of 2023. We received a response that the AG had no such relevant records.
EPEC subsequently submitted our March analysis dataset to the VA AG’s office upon their request. We have heard no updates or status as to any action taken by the AG’s office since that time, except that it is being considered an ongoing investigation.
Discussion
It appears from the MUS data, that the VA Department of Elections (ELECT) is doing routine identification, cleanup and removal of non-citizen registrations, which is a good thing and we commend them for their continued efforts to maintain clean voter registration lists.
Given the current court cases filed by LWV and DOJ against the state of VA on the matter, it is important to note that the records identified in the MUS are only those resulting from individuals self-identifying as a non-citizen via interactions with DMV, ELECT, or other official avenues, and that the data presented here specifically excludes those individuals that were subsequently reinstated onto the voter rolls.
The fact that a small number of these identified non-citizen registrations are also associated with (presumably … if the data from ELECT is accurate) illegally cast ballots in previous elections does raise a number of questions that citizens should be (politely) asking and discussing with their legislators, elected and appointed government officials. Each act of non-citizen voting is a de-facto disenfranchisement of legal voters rights, and is a punishable offense under VA law.
Q: How did these registrants get placed onto the voter rolls in the first place?
Q: What method and/or data sources are used by the state to identify non-citizen registrations for removal? If that process is exhaustive, and covers all registrations, then these numbers might be considered to represent a statistical complete picture of the problem. If that process is not exhaustive, in that it only uses serendipitous corroborating data sources, then these results likely under-represent the scale of the issues.
Q: As noted above, we are only considering here those individuals who have not had their records re-instated or reactivated after a determination of non-citizen status. We do not have enough information to determine how or why some records were first determined to be non-citizen, canceled and then subsequently re-instated. One potential area of concern is determining whether or not registrants might be falsely or errantly claiming to not be a citizen on official documents in order to be excused from jury duty, for example, and then work to re-instate their voting status once those documents percolate through the system to ELECT and are flagged for removal. This is a wholly separate but serious issue, as making false claims on official documents is itself a punishable offense.
Q: What procedures, processes and technical solutions are in place to prevent current or future registration and casting of ballots by non-citizens? This is especially pertinent given the recent state of the flow of illegal immigrants crossing our national borders. According to a recent report by Yahoo Finance, VA is one of the top 30 destinations for illegal migrants, with both Loudoun County and Fairfax making the list.
Q: Why have none of the identified non-citizens who also cast ballots been investigated or prosecuted under VA Code 24.2-1004? As the identification of these ballots comes directly from looking at the official records produced by ELECT, it seems prudent for these to be forwarded by ELECT to the AG’s office with a recommendation to investigate and prosecute. Yet our FOIA request to the VA AG’s office inquiring as to any records associated with these types of investigations or prosecutions produced a “no relevant records exist” response. And since we submitted this information to the AG’s office, there has been no follow up.
Additionally, this evidence which is derived from only official state records, directly contradicts multiple news media reports and attestations that non-citizen voting is a “Myth”, and that non-citizen voting happens “almost never”. If the data from ELECT is accurate, then there are at least 2,839 ballots that have been cast by non-citizen voters just since 2019. Now, that is still very infrequent, but it is not “almost never.” It is a legitimate concern … and these discoveries are only the registrations that have been found and removed from the voter roles by ELECT and that we can observe in the data. We do not know how many exist that we do not know about.
It should be reiterated that these are only the records that we can observe given our data repository, and how often we can realistically purchase and acquire voter history and voter registration information. It is therefore likely that this represents a significant undercount of the occurrences of non-citizen voters and non-citizen voting.
It costs us (EPEC) approximately ~$5K for each purchase of the statewide voter history list, and approximately $15K/year to maintain RVL records using a single baseline full purchase + 2 purchases of the 6mo MUS subscription. Due to the infrequent nature of these data purchases, it is very likely that some individuals have had their voter history or voter registration information completely removed from the record in between our purchases. Additionally, we know that the MUS data does not entirely encompass all transactions performed on the RVL by the department of elections, so there may be yet other unknown transactions that we are missing.
For information that is supposed to be publicly available (according to federal NVRA laws), the state has put up significant hurdles in order for citizens and organizations to acquire it for use it for ensuring transparency and integrity of our electoral process. If we are to have elections that are transparent and accountable to the public, then we must insist that the data be made available and accessible.
Recently I was made aware of the work Ed Solomon had been doing with data from the 2020 Colorado Cast Vote Records (CVRs), and I’ve taken some time to replicate and validate some of his data observations. I don’t always agree with Ed, but I wanted to take some time and verify the facts of the matter for myself.
For background, CVRs are machine logs of the way the tabulators process the “cast” ballots. You can think of them as equivalent to your bank statement showing all of the recorded transactions for each ballot scanned. They are required to be producible by ballot electronic tabulation systems, and are used as part of official forensic audits and documentation. They do not have any personal information and simply operate on the content of individual ballots as they are processed.
There are 2 specific items that need to be validated here:
Odd statistics associated with statewide ballot measures in Arapahoe County as compared to other counties. Specifically, there were two statewide ballot measures (one dealing with taxes, and another on abortion) that one would expect to show a significant partisan split, and we in fact do see such a split in neighboring El Paso and Adams counties. However, the ballot measures do not show the partisan split in Arapahoe County.
The difference is not just that the partisan split is muted or reduced, it is a night and day difference. In Arapahoe county there is almost no statistical difference between Trump and Biden voters on the ballot measures, but there is an obvious and clear difference on the same ballot measures in neighboring Adams and El Paso counties.
Why is this important? It raises questions as to the veracity of the election counts, data handling practices, and the ability to use CVRs for their intended forensic purpose.
The fact that the Arapahoe County CVR data was changed on the official county website without any notification or explanation around Feb 2025. The internal composition of ballots was changed in the data and “scrambled” by Arapahoe county … with the new version of the CVR files no longer showing the inconsistency from #1.
As CVRs are official records that are used for legal purposes such as audits etc., they should never be “quietly” changed or modified retroactively. A full and transparent explanation of the issues and steps made to remedy should accompany any updates for official documents such as CVRs.
This change took place years after the CVR was originally produced, and after Ed Solomon had used this particular CVR as part of his supporting documentation in an election case (Thompson vs Secretary of State NV) in Nevada.
The county was fully aware of the use of these records in the Nevada case.
The county CVRs had already been used in a previous audit of the 2020 election, where ballots from a specific tabulator and batch were pulled and compared to the cast vote record for accuracy. (see here, and here)
After Ed and Mark noticed the retroactive modifications and started asking questions, the County released a statement explaining that they were contacted by a researcher about potential issues with their CVR regarding “redaction” and privacy concerns.
However, the county statement gives an incompatible date for when the documents were “corrected”, according to the file timestamps and internet archive logs. The statement claims April 2nd 2025, whereas the contents of the uploaded file show Feb 20th 2025 as the file modification date.
The counties explanation does not comport with the observation of the scrambling of internal contents of official ballots. Its not just that the ordering of ballots was randomized to assuage privacy concerns, but that the actual records of votes cast were being swapped between ballots.
At BEST this shows a woeful lack of transparency and procedural safeguards by the county.
At WORST this has the appearance of being intentional tampering with official records.
I can independently replicate and validate both of these data observations. There does seem to be an issue with the ballot measures in the original Arapahoe County CVR data, and that data has been retroactively modified by the county in such a way as to scramble the information associated with votes cast.
Note that Ed Solomon, Draza Smith, Jeff O’Donnell (a.k.a. “The Lone Raccoon”), Mark Cook, MadLiberals, and others all provided data and pointers to the original documents and URLs in question, as well as their own analysis on the X.com platform.
The original data is also still available on the Arapahoe County website, but one needs to do some creative sleuthing via the wayback machine and looking at the URL links in order to get to it, as was done by Mark Cook. (see: here and here)
The original data from the 2020 CVR data had also been collected and collated by Jeff O’Donnell on his https://votedatabase.com (formerly ordros.com) site, which I archived and versioned in Sept of 2022. I can confirm that the original file matches the files in the votedatabase archive, as well as the current votedatabase site. I used additional files from votedatabase archive for neighboring Adams and El Paso counties as a source for the rest of this work, as I could not find corresponding links to CVR downloads on the Adams or El Paso county websites.
Ed’s original observation was that the two ballot measures that *should* be partisan split were not when looking at the original 2020 CVR Arapahoe County data. He used this observation as supporting evidence showing inconsistencies and irregularities in 2020 election data in an court case (Thompson vs Secretary of State NV) he was providing analysis for in Nevada. All of his analysis and the original file have therefore been previously submitted to the court.
Amendment B was a repeal of the “Gallagher Amendment” dealing with property tax rates and was expected to have a highly partisan split. Likewise Proposition 115 dealt with abortion and was also expected to have highly partisan split.
If we look at the plots of the ballots cast for these two ballot measures, but we condition them on if the person voted for Trump or Biden at the top of the ticket we do see in neighboring counties such as El Paso and Adams counties this partisan split, as shown below. Note the significant spread between the Biden/No (Yellow) & Trump/No (Purple), as well as between the Biden/Yes (Blue) & Trump/Yes (Red).
As can be seen in the plots above from Adams and El Paso counties, there is a significant partisan split in these two down-ballot races when conditioned on how the top of the ticket votes. However this seems to vanish when looking at Arapahoe County, with the Biden/No (Yellow) & Trump/No (Purple) and the Biden/Yes (Blue) & Trump/Yes (Red) stacking almost completely on top of one another.
It can be clearly seen in the plots that the partisan split that was present in the other counties results seems to have completely vanished in Arapahoe.
I will note that the partisan split seems to be missing from almost all down-ballot races that I looked at, not just these two, although these were the ones specifically called out by Ed. This is an important point that I will come back to in a minute.
… And now to item # 2:
Ed’s original observation was submitted as part of his case in Nevada. At one point he and Mark Cook attempted to make a live stream video showing how people could recreate the observations starting from the source documents on the Arapahoe County website, which is when he and Mark realized that the original CVR file on the county website had been quietly replaced with a new file that had its contents scrambled and the results no longer showed the observed pattern.
Note that a CVR file is a legally required forensic record. It is the equivalent of a bank transaction log, and should almost never have its contents manipulated. If an error is discovered, and a correction does need to be issued, then a new file with the corrections should be published along side the original with a clear and prominent explanation and notification of the change. In this case, however, the County simply replaced the link to the original file with the new file with no explanation and no notice.
It was only after this was discovered, and after Ed started making phone calls to the County and bringing up the issue with the Judge in his Nevada case, that Arapahoe County belabouredly published an admission that they had adjusted the file. Their excuse for the modification was that they were made aware of a mistake with their “redaction” of data in the original publication, and were worried about individual privacy.
The (new) altered file did have 16 specific ballots that had their down-ballot races zeroed out, and was missing the “CountingGroup” metadata column. However, the file didn’t just have a small number of ballots (16) down-ballot information omitted, the internal contents on ALL ballots were also completely scrambled, with the top-of-the-ticket entries for President and Senate and metadata columns being completely reordered from all of the down-ballot information. This split-scrambling also also “fixed” the observed issues with Amendment B and Proposition 115, as can be seen below, where there is now a distinct partisan split between the data trends.
This kicked off multiple efforts to reverse engineer the actual changes that were performed on the CVR data by Arapahoe county, by myself and multiple others. Jeff O’Donnell and MadLiberals on X made the observation of the split reordering. I was able to verify this and remove the split-shuffling, exposing the fact that there were 16 ballots that also had all of their down ballot information zeroed out. There were a total of 432 down ballot votes that were removed from 16 specific ballots, followed by ALL of the President and Senate votes for ALL ballots being scrambled in relation to their down-ballot races.
Back to the point I made before above … the “scrambling” of the new file does seem to have “fixed” the expected partisan nature of most of the down-ballot races, so it is not unreasonable to think that this was actually a “fix” for a processing error on the original CVR file. That being said, the original (assumed incorrect) CVR was used in an audit process of two down-ballot races (linked above). Why did they not catch this issue years earlier during the audit? And why did they make the change to files, under the pretense of privacy issues, without announcing and documenting the errors?
Conclusion:
I can verify the two main data issues documented by Ed Solomon on the Arapahoe County 2020 CVR data.
The original data file had significant issues with down-ballot races not showing the expected partisan splits.
Arapahoe county did “quietly” revise the data without explanation until it was discovered by Ed and Mark, and then when pushed, only acknowledged that there was an issue with redactions and data privacy concerns.
The fact that the modification did correct the expected partisan split for ALL down-ballot races lends some credence to the assertion that they were correcting an error/issue with the original CVR file, however it does not excuse the fact that they performed this correction without notice or explanation. It also does not explain how their 2020 audit was able to use the incorrect original CVR files and not catch any of these issues.
The CVR files are intended to be official forensic records. If they are subject to manipulation and “adjustments” without transparency then that brings into question the validity of those files as forensic devices in the first place.
Corrections:
(5/28/2025) Typo correction in that the original posting of this article had “April 2 2024” as the data the Arapahoe county statement said they changed the CVR. That was corrected to be “April 2 2025”.
(5/28/2025) I had the wrong reference for the associated case in NV. I had originally posted that the case was the “Gilbert” case. It is actually “Thompson vs State”. Links have been updated accordingly.
Below you will find the current summary data and graphics from the 2025 VA June Republican Primary Election Daily Absentee List files. We pull the DAL file everyday and track the count of each specific ballot category in each daily file.
Note: Page may take a moment to load the graphics objects.
Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The logarithmic plot is the same underlying data as the linear scale plot, except with a logarithmic y-scale in order to be able to compress the dynamic range and see the shape of all of the data curves in a single graphic. Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The underlying data for the graphics above is provided in the summary data table.
Additional Data:
Additional CSV datasets stratified by Locality, City, Congressional District, State House District, State Senate District, and Precinct are available here.
Data column descriptions:
“ISSUED” := Number of DAL file records where BALLOT_STATUS= “ISSUED”
“NOT_ISSUED” := Number of DAL file records where BALLOT_STATUS= “NOT ISSUED”
“PROVISIONAL” := Number of DAL file records where BALLOT_STATUS= “PROVISIONAL” and APP_STATUS=”APPROVED”
“DELETED” := Number of DAL file records where BALLOT_STATUS= “DELETED”
“MARKED” := Number of DAL file records where BALLOT_STATUS= “MARKED” and APP_STATUS=”APPROVED”
“ON_MACHINE” := Number of DAL file records where BALLOT_STATUS= “ON_MACHINE” and APP_STATUS=”APPROVED”
“PRE_PROCESSED” := Number of DAL file records where BALLOT_STATUS= “PRE-PROCESSED” and APP_STATUS=”APPROVED”
“FWAB” := Number of DAL file records where BALLOT_STATUS= “FWAB” and APP_STATUS=”APPROVED”
“MAIL_IN” := The sum of “MARKED” + “PRE_PROCESSED”
“COUNTABLE” := The sum of “PROVISIONAL” + “MARKED” + “PRE_PROCESSED” + “ON_MACHINE” + “FWAB”
“MILITARY” := Number of DAL file records where VOTER_TYPE= “MILITARY”
“OVERSEAS” := Number of DAL file records where VOTER_TYPE= “OVERSEAS”
“TEMPORARY” := Number of DAL file records where VOTER_TYPE= “TEMPORARY”
“MILITARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “MILITARY” and where COUNTABLE is True
“OVERSEAS_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “OVERSEAS” and where COUNTABLE is True
“TEMPORARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “TEMPORARY” and where COUNTABLE is True
All data purchased by Electoral Process Education Corp. (EPEC) from the VA Dept of Elections (ELECT). All processing performed by EPEC.
If you like the work that EPEC is doing, please support us with a donation.
Below you will find the current summary data and graphics from the 2025 VA June Democratic Primary Election Daily Absentee List files. We pull the DAL file everyday and track the count of each specific ballot category in each daily file.
Note: Page may take a moment to load the graphics objects.
Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The logarithmic plot is the same underlying data as the linear scale plot, except with a logarithmic y-scale in order to be able to compress the dynamic range and see the shape of all of the data curves in a single graphic. Place your cursor over the series name in the legend at right to see the series highlighted in the graphic. Place your cursor over a specific data point to see that data points value.
The underlying data for the graphics above is provided in the summary data table.
Additional Data:
Additional CSV datasets stratified by Locality, City, Congressional District, State House District, State Senate District, and Precinct are available here.
Data column descriptions:
“ISSUED” := Number of DAL file records where BALLOT_STATUS= “ISSUED”
“NOT_ISSUED” := Number of DAL file records where BALLOT_STATUS= “NOT ISSUED”
“PROVISIONAL” := Number of DAL file records where BALLOT_STATUS= “PROVISIONAL” and APP_STATUS=”APPROVED”
“DELETED” := Number of DAL file records where BALLOT_STATUS= “DELETED”
“MARKED” := Number of DAL file records where BALLOT_STATUS= “MARKED” and APP_STATUS=”APPROVED”
“ON_MACHINE” := Number of DAL file records where BALLOT_STATUS= “ON_MACHINE” and APP_STATUS=”APPROVED”
“PRE_PROCESSED” := Number of DAL file records where BALLOT_STATUS= “PRE-PROCESSED” and APP_STATUS=”APPROVED”
“FWAB” := Number of DAL file records where BALLOT_STATUS= “FWAB” and APP_STATUS=”APPROVED”
“MAIL_IN” := The sum of “MARKED” + “PRE_PROCESSED”
“COUNTABLE” := The sum of “PROVISIONAL” + “MARKED” + “PRE_PROCESSED” + “ON_MACHINE” + “FWAB”
“MILITARY” := Number of DAL file records where VOTER_TYPE= “MILITARY”
“OVERSEAS” := Number of DAL file records where VOTER_TYPE= “OVERSEAS”
“TEMPORARY” := Number of DAL file records where VOTER_TYPE= “TEMPORARY”
“MILITARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “MILITARY” and where COUNTABLE is True
“OVERSEAS_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “OVERSEAS” and where COUNTABLE is True
“TEMPORARY_COUNTABLE” := Number of DAL file records where VOTER_TYPE= “TEMPORARY” and where COUNTABLE is True
All data purchased by Electoral Process Education Corp. (EPEC) from the VA Dept of Elections (ELECT). All processing performed by EPEC.
If you like the work that EPEC is doing, please support us with a donation.
We have updated our previous analysis (see March 24, July 24, Sept 24, Oct 24, Nov 24 and Dec 24 posts) with the latest information from the VA Department of Elections data.
Abstract:
Using the data provided by the VA Department of Elections (ELECT), we have identified at least 4,400 unique registrations that were self-identified as “Declared Non-Citizen” and removed by ELECT from the voter rolls since May of 2023. Of those 4,400 removals there were 683 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 1,775 associated ballots cast identified since Feb of 2019. There were an additional 9 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data, that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 1,784 by 692 registrants when combining unique VHL and DAL identifications.
After our March 2024 post on this topic, we submitted all of the relevant information that we had at the time to the VA AG’s office. We have not heard any response or update on the matter since that time, besides this being considered an active investigation. We subsequently sent our July results as well to the same contact at the AG’s office, but have had no response.
The Arlington County VA Electoral Board undertook their own investigation into this matter after our previous results were posted, and they recently (as of Sept 10 2024) voted 3-0 to send the information to the AG’s office as well. The Arlington County Commonwealths Attorney also is reported to have an ongoing investigation into the matter. Similar efforts are underway in multiple other counties, including Loudoun and Fairfax counties, to name a few.
In October the League of Women Voters along with the US DOJ sued VA over this issue and attempted to get an injunction to place ~1,600 of these removed registrations back on the Voter roll. After two lower courts granted the injunction, it was stayed by the US Supreme Court. It is EPEC’s opinion that the State of VA is correctly applying the law in this matter, as I detailed in a X.com post on Oct 12.
Background:
The VA Department of Elections continuously tries to identify and remove invalid or out of date registration records from the voter rolls. One category used for removal is if a registrant has been determined to be a non-citizen. It is required by the VA Constitution that only citizens are allowed to vote in VA elections.
In elections by the people, the qualifications of voters shall be as follows: Each voter shall be a citizen of the United States, shall be eighteen years of age, shall fulfill the residence requirements set forth in this section, and shall be registered to vote pursuant to this article. …VA Constitution, Article II, Section 1. https://law.lis.virginia.gov/constitution/article2/section1/
Additionally, according to VA Code Section 24.2-1004, the act of knowingly casting a ballot by someone who is not eligible to vote is a Class 6 felony.
A. Any person who wrongfully deposits a ballot in the ballot container or casts a vote on any voting equipment, is guilty of a Class 1 misdemeanor.
B. Any person who intentionally (i) votes more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (ii) procures, assists, or induces another to vote more than once in the same election, whether those votes are cast in Virginia or in Virginia and any other state or territory of the United States, (iii) votes knowing that he is not qualified to vote where and when the vote is to be given, or (iv) procures, assists, or induces another to vote knowing that such person is not qualified to vote where and when the vote is to be given is guilty of a Class 6 felony.https://law.lis.virginia.gov/vacode/title24.2/chapter10/section24.2-1004/
ELECT makes available for purchase by qualifying parties various different data sets, including the registered voter list (RVL) and the voter history list information file (VHL). Additionally, ELECT makes available a Monthly Update Service (MUS) subscription that is published at the beginning of each month and contains (almost) all of the Voter List changes and transactions for the previous period.
In the MUS data there is a “NVRAReasonCode” field that is associated with each transaction that gives the reason for the update or change in the voter record. This is in accordance with the disclosure and transparency requirements in the NVRA. One of the possible reason codes given for records that are removed is “Declared Non-Citizen.”
EPEC has been consistently purchasing and archiving all of these official records as part of our ongoing work to document and educate the public as to the ongoing operations of our elections. (If your interested in supporting this work, please head on over to our donation page, or to our give-send-go campaign to make a tax-deductible donation, as these data purchases are not cheap!)
EPEC looked at the number of records associated with unique voter identification numbers that had been identified for removal from the voter record due to non-citizenship status, per the entries in the MUS, and correlated those results with our accumulated voter history list information in order to determine how many non-citizen registrations had corresponding records of ballots cast in previous elections. We only considered those records that are currently in a non-active state as of the latest MUS transaction log, as some determinations of non-citizenship status in the historical MUS transaction log might have been due to error and subsequently corrected and reinstated to active status. That is, and we emphasize here that we are not considering those records that had a “Declared Non-Citizen” disqualification, but were then subsequently reinstated and reactivated by ELECT.
Note that while EPEC has periodically purchased full copies of the Voter History List for our archive, there is a known issue with the way ELECT handles removals from the voter record that can cause sampling issues depending on the time the VHL file is purchased, and records of legitimately cast ballots to not be present in the VHL: Namely, when ELECT removes a voter from the voter list, they also remove all instances of that voter ID from voter history information and other data files provided to qualified organizations. (IMO … thats a terrible way to manage the data, but that is the way it is done.) In light of that, EPEC also used its archived versions of the Daily Absentee List (DAL) for recent elections in order to attempt to find records of votes cast that might otherwise be missing from the VHL.
Results:
There were 4,400 unique voter records marked for removal with the reason of “Declared Non-Citizen” and not subsequently reinstated in the accumulated MUS record that EPEC began collecting in mid-2023. Of those 4,400 there were 683 that also had corresponding records of recent ballots cast at some point in the official Voter History record that we could observe. There were 1,775 associated ballots cast identified since Feb of 2019. Figure 1 shows the distribution of non-citizen voters in the cumulative MUS file history. The blue trace represent the total identified and CANCELED non-citizen registrations, and the yellow trace represents the number of those records that also had corresponding records in the accumulated voter history data.
Figure 1: Distribution if the number of identified non-citizen records and ballots in the cumulative ELECT MUS file history. The x-axis is the date that a record was marked as CANCELED for the reason of “Declared Non-Citizen”.
Note that the data contained in the MUS updates often covers more than a single month period. In other words, the individual MUS files are oversampled. Subsequent MUS files can therefore also have repeated entries from previous versions, as their data may overlap. Our analysis used the first unique entry for a given voter ID marked as “Declared Non-Citizen” in the cumulative MUS record, that had not been subsequently reinstated, in order to build Figure 1. This data oversampling in the MUS may help explain the small relative increase in the May 2023 bin compared to subsequent months.
As VHL information can be incomplete depending on the time the VHL data was purchased in relation to the time that registrants were removed from voter records, EPEC also checked these non-citizen removals against the archived history of Daily Absentee List (DAL) files that EPEC has accumulated. There were an additional 9 non-citizen registrations and ballots as per the Daily Absentee List (DAL) data that were not contained in the Voter History data. The total number of identified non-citizen ballots cast is therefore 1,784 by 692 registrants when combining unique VHL and DAL identifications.
These identifications represent only the individuals who declared themselves as non-citizen status through official interactions with ELECT, DMV, or other agencies. Each removed registrant was then contacted by the registrar to confirm their non-citizen status.
The distribution of identified unique voter ID’s for the 683 identified non-citizen voters per VA locality is given below in Table 1. It should be noted that each ballot record has a specific locality associated with where the ballot was cast, whereas unique individuals might move between localities over time. The assignment of unique identified individuals to each locality in table 1 is therefore based on the locality listed in the specific MUS “Declared Non-Citizen” record for that individual, while the assignment of ballot cast to Localities is based on the individual VHL/DAL records. A person could have lived and voted multiple times in one county, then moved to another county and voted again before finally being determined as a non-citizen. The same person would have generated multiple VHL/DAL records for each ballot cast, and associated with potentially different localities. This should be kept in mind when attempting to interpret Table 1.
LOCALITY_NAME
REMOVED
VOTED_VHL
VOTES_VHL
VOTED_DAL_NOT_IN_VHL
ACCOMACK COUNTY
7
0
0
0
ALBEMARLE COUNTY
58
13
39
0
ALEXANDRIA CITY
196
27
56
0
AMELIA COUNTY
3
2
8
0
AMHERST COUNTY
1
0
0
0
APPOMATTOX COUNTY
1
0
0
0
ARLINGTON COUNTY
107
14
39
0
AUGUSTA COUNTY
20
5
10
0
BEDFORD COUNTY
14
3
5
0
BOTETOURT COUNTY
3
0
0
0
BRISTOL CITY
1
0
0
0
BRUNSWICK COUNTY
3
2
5
0
BUCKINGHAM COUNTY
3
0
0
0
CAMPBELL COUNTY
0
0
0
0
CAROLINE COUNTY
11
3
10
0
CARROLL COUNTY
11
4
14
0
CHARLES CITY COUNTY
4
2
4
0
CHARLOTTE COUNTY
1
0
0
0
CHARLOTTESVILLE CITY
28
3
9
0
CHESAPEAKE CITY
104
24
58
0
CHESTERFIELD COUNTY
275
28
70
0
CLARKE COUNTY
8
3
4
0
COLONIAL HEIGHTS CITY
15
1
3
0
COVINGTON CITY
2
0
0
0
CRAIG COUNTY
1
0
0
0
CULPEPER COUNTY
32
4
12
0
CUMBERLAND COUNTY
1
0
0
0
DANVILLE CITY
25
4
12
0
DICKENSON COUNTY
1
0
0
0
DINWIDDIE COUNTY
9
1
1
0
EMPORIA CITY
2
0
0
0
ESSEX COUNTY
3
1
3
0
FAIRFAX CITY
9
3
13
0
FAIRFAX COUNTY
778
116
269
2
FALLS CHURCH CITY
1
1
2
0
FAUQUIER COUNTY
30
4
11
0
FLUVANNA COUNTY
2
1
1
0
FRANKLIN CITY
1
0
0
0
FRANKLIN COUNTY
2
1
4
0
FREDERICK COUNTY
33
4
3
0
FREDERICKSBURG CITY
25
2
4
0
GALAX CITY
2
0
0
0
GILES COUNTY
2
0
0
0
GLOUCESTER COUNTY
2
1
1
0
GOOCHLAND COUNTY
5
0
0
0
GRAYSON COUNTY
2
0
0
1
GREENE COUNTY
8
1
2
0
HALIFAX COUNTY
3
0
0
0
HAMPTON CITY
69
16
36
0
HANOVER COUNTY
17
2
8
0
HARRISONBURG CITY
100
5
6
0
HENRICO COUNTY
108
2
18
0
HENRY COUNTY
1
0
2
0
ISLE OF WIGHT COUNTY
1
0
2
0
JAMES CITY COUNTY
37
5
14
0
KING AND QUEEN COUNTY
1
1
4
0
KING GEORGE COUNTY
6
0
0
0
KING WILLIAM COUNTY
1
0
0
0
LANCASTER COUNTY
1
1
0
0
LOUDOUN COUNTY
268
58
132
0
LOUISA COUNTY
9
0
2
0
LUNENBURG COUNTY
1
0
0
0
LYNCHBURG CITY
26
5
9
0
MADISON COUNTY
0
0
0
0
MANASSAS CITY
56
5
13
0
MANASSAS PARK CITY
24
1
5
0
MARTINSVILLE CITY
7
1
0
0
MECKLENBURG COUNTY
10
4
13
0
MIDDLESEX COUNTY
2
0
0
0
MONTGOMERY COUNTY
9
3
15
1
NELSON COUNTY
2
0
0
0
NEW KENT COUNTY
4
1
0
0
NEWPORT NEWS CITY
125
26
65
0
NORFOLK CITY
113
18
54
0
NORTHAMPTON COUNTY
1
0
1
0
NORTHUMBERLAND COUNTY
2
1
1
0
NORTON CITY
1
0
0
0
NOTTOWAY COUNTY
4
0
0
0
ORANGE COUNTY
3
1
4
0
PATRICK COUNTY
3
1
2
0
PETERSBURG CITY
30
4
10
0
PITTSYLVANIA COUNTY
9
2
4
0
PORTSMOUTH CITY
50
14
44
0
POWHATAN COUNTY
4
0
1
0
PRINCE EDWARD COUNTY
11
3
11
0
PRINCE GEORGE COUNTY
17
0
0
0
PRINCE WILLIAM COUNTY
483
77
186
1
PULASKI COUNTY
8
1
2
0
RAPPAHANNOCK COUNTY
3
0
0
0
RICHMOND CITY
201
30
98
1
RICHMOND COUNTY
0
0
0
0
ROANOKE CITY
92
6
7
0
ROANOKE COUNTY
19
2
3
0
ROCKBRIDGE COUNTY
0
0
1
0
ROCKINGHAM COUNTY
21
5
13
0
RUSSELL COUNTY
3
1
1
0
SALEM CITY
4
1
1
0
SCOTT COUNTY
2
1
4
0
SHENANDOAH COUNTY
22
2
6
0
SMYTH COUNTY
2
0
0
0
SPOTSYLVANIA COUNTY
74
4
10
0
STAFFORD COUNTY
124
20
41
3
STAUNTON CITY
4
0
0
0
SUFFOLK CITY
44
16
44
0
SURRY COUNTY
1
0
0
0
SUSSEX COUNTY
2
1
3
0
TAZEWELL COUNTY
7
2
8
0
VIRGINIA BEACH CITY
199
34
133
0
WARREN COUNTY
18
3
5
0
WASHINGTON COUNTY
5
2
6
0
WAYNESBORO CITY
3
0
0
0
WESTMORELAND COUNTY
3
0
0
0
WILLIAMSBURG CITY
13
2
3
0
WINCHESTER CITY
25
2
2
0
WISE COUNTY
2
1
2
0
WYTHE COUNTY
3
0
0
0
YORK COUNTY
25
12
48
0
4400
683
1775
9
The distribution of the 1,775 ballots that were identified as being cast by non-citizen voters (the yellow trace in Figure 1) in previous elections is shown in Figure 2. The most significant spikes are in the 2019, 2020, 2021 and 2022 November General elections, as well as the 2020 March Democratic presidential primary. Figure 3, which shows this distribution as a percentage of votes cast. Please note the scale of the Y-axis on the percent plot in Figure 3 is in percent of total ballots cast in each election. These graphs were only produced for the VHL data, and do not include the DAL identified records.
Figure 2: Distribution of identified non-citizen ballots cast in previous elections.Figure 3: Distribution of identified non-citizen ballots cast in previous elections as percent of total ballots cast, according to entries in the VHL/DAL data files.
Figures 4 and 5 show the distribution of the registration dates of the identified non-citizen records. The same data is plotted in figure 4 and 5, with the only difference being the scale of the Y-axis in order to better observe the dynamic range of the values. When we look at the registration date of these identified records, we see that there is a distinct relative increase starting around 1996, and then again around 2012.
Figure 4: Registration dates of the identified non-citizen records. Absolute count on y-axis.Figure 5: Registration dates of the identified non-citizen records. Logarithmic Y-axis scale.
EPEC made a FOIA request to the VA Attorney General’s office on March 11, 2024 inquiring for any records regarding how many prosecutions for non-citizen voting had occurred since June of 2023. We received a response that the AG had no such relevant records.
EPEC subsequently submitted our March analysis dataset to the VA AG’s office upon their request. We have heard no updates or status as to any action taken by the AG’s office since that time, except that it is being considered an ongoing investigation.
Discussion
It appears from the MUS data, that the VA Department of Elections (ELECT) is doing routine identification, cleanup and removal of non-citizen registrations, which is a good thing and we commend them for their continued efforts to maintain clean voter registration lists.
Given the current court cases filed by LWV and DOJ against the state of VA on the matter, it is important to note that the records identified in the MUS are only those resulting from individuals self-identifying as a non-citizen via interactions with DMV, ELECT, or other official avenues, and that the data presented here specifically excludes those individuals that were subsequently reinstated onto the voter rolls.
The fact that a small number of these identified non-citizen registrations are also associated with (presumably … if the data from ELECT is accurate) illegally cast ballots in previous elections does raise a number of questions that citizens should be (politely) asking and discussing with their legislators, elected and appointed government officials. Each act of non-citizen voting is a de-facto disenfranchisement of legal voters rights, and is a punishable offense under VA law.
Q: How did these registrants get placed onto the voter rolls in the first place?
Q: What method and/or data sources are used by the state to identify non-citizen registrations for removal? If that process is exhaustive, and covers all registrations, then these numbers might be considered to represent a statistical complete picture of the problem. If that process is not exhaustive, in that it only uses serendipitous corroborating data sources, then these results likely under-represent the scale of the issues.
Q: As noted above, we are only considering here those individuals who have not had their records re-instated or reactivated after a determination of non-citizen status. We do not have enough information to determine how or why some records were first determined to be non-citizen, canceled and then subsequently re-instated. One potential area of concern is determining whether or not registrants might be falsely or errantly claiming to not be a citizen on official documents in order to be excused from jury duty, for example, and then work to re-instate their voting status once those documents percolate through the system to ELECT and are flagged for removal. This is a wholly separate but serious issue, as making false claims on official documents is itself a punishable offense.
Q: What procedures, processes and technical solutions are in place to prevent current or future registration and casting of ballots by non-citizens? This is especially pertinent given the recent state of the flow of illegal immigrants crossing our national borders. According to a recent report by Yahoo Finance, VA is one of the top 30 destinations for illegal migrants, with both Loudoun County and Fairfax making the list.
Q: Why have none of the identified non-citizens who also cast ballots been investigated or prosecuted under VA Code 24.2-1004? As the identification of these ballots comes directly from looking at the official records produced by ELECT, it seems prudent for these to be forwarded by ELECT to the AG’s office with a recommendation to investigate and prosecute. Yet our FOIA request to the VA AG’s office inquiring as to any records associated with these types of investigations or prosecutions produced a “no relevant records exist” response. And since we submitted this information to the AG’s office, there has been no follow up.
Additionally, this evidence which is derived from only official state records, directly contradicts multiple news media reports and attestations that non-citizen voting is a “Myth”, and that non-citizen voting happens “almost never”. If the data from ELECT is accurate, then there are at least 1,775 ballots that have been cast by non-citizen voters just since 2019. Now, that is still very infrequent, but it is not “almost never.” It is a legitimate concern … and these discoveries are only the registrations that have been found and removed from the voter roles by ELECT and that we can observe in the data. We do not know how many exist that we do not know about.
It should be reiterated that these are only the records that we can observe given our data repository, and how often we can realistically purchase and acquire voter history and voter registration information. It is therefore likely that this represents a significant undercount of the occurrences of non-citizen voters and non-citizen voting.
It costs us (EPEC) approximately ~$5K for each purchase of the statewide voter history list, and approximately $15K/year to maintain RVL records using a single baseline full purchase + 2 purchases of the 6mo MUS subscription. Due to the infrequent nature of these data purchases, it is very likely that some individuals have had their voter history or voter registration information completely removed from the record in between our purchases. Additionally, we know that the MUS data does not entirely encompass all transactions performed on the RVL by the department of elections, so there may be yet other unknown transactions that we are missing.
For information that is supposed to be publicly available (according to federal NVRA laws), the state has put up significant hurdles in order for citizens and organizations to acquire it for use it for ensuring transparency and integrity of our electoral process. If we are to have elections that are transparent and accountable to the public, then we must insist that the data be made available and accessible.
The following presentation is adapted from a presentation and discussion EPEC staff had with select VA legislators on 2025-02-18. Our team was very thankful for being invited to present and explain our methods, data and observations and look forward to further interactions with legislative teams.
Corrections: On slide 5, bullets 1 and 4 had typos in the dates of the RVL files mentioned. The slides were corrected and re-uploaded on 2025-02-21 at 8:40pm.