Categories
Election Data Analysis Election Forensics Election Integrity technical

Non-citizen registrations with previous voting history in VA election data

Abstract:

Using the data provided by the VA Department of Elections (ELECT), we have identified at least 1,481 unique registrations that were identified as “Determined Non-Citizen” and removed by ELECT from the voter rolls since May of 2023. Of those 1,481 there were 335 that also had corresponding records of recent ballots cast in the official Voter History record. There were 838 associated ballots cast since Feb of 2019.

We submitted a FOIA request to the VA Attorney General’s office requesting any and all documents regarding any prosecutions for non-citizen voters in the same time period as our data covers. We received a response that no relevant records were identified.

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 “Determined 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, we are not considering those records that had a “Determined Non-Citizen” disqualification, but were then subsequently reinstated and reactivated by ELECT.

Results:

There were 1,481 unique voter records marked for removal with the reason of “Determined Non-Citizen” and not subsequently reinstated in the accumulated MUS record that EPEC began collecting in mid-2023. Of those 1,481 records there were 335 unique voter ID’s that also had a record of casting one or more ballots in the accumulated vote history data that EPEC has been gathering, for a total of 838 ballots cast that can be 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 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 “Determined 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 “Determined Non-Citizen” in the cumulative MUS record in order to build Figure 1. This data oversampling in the MUS helps explain the relative increase in the May 2023 bin, and similar decrease in Feb 2024 that can be observed in Figure 1.

The distribution of identified unique voter ID’s for the 335 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 “Determined Non-Citizen” record for that individual, while the assignment of ballot cast to Localities is based on the individual VHL 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 records for each ballot cast, and associated with potentially different localities. This should be kept in mind when attempting to interpret Table 1.

Locality NameIndividualsBallots
FAIRFAX COUNTY58135
LOUDOUN COUNTY36103
PRINCE WILLIAM COUNTY3174
RICHMOND CITY2167
CHESTERFIELD COUNTY2048
ALEXANDRIA CITY1633
NORFOLK CITY1320
VIRGINIA BEACH CITY1222
ARLINGTON COUNTY1032
CHESAPEAKE CITY924
POWHATAN COUNTY91
YORK COUNTY828
NORTHUMBERLAND COUNTY84
HARRISONBURG CITY83
SUFFOLK CITY718
STAFFORD COUNTY412
WARREN COUNTY411
RUSSELL COUNTY41
CLARKE COUNTY34
HENRY COUNTY32
NEWPORT NEWS CITY233
PORTSMOUTH CITY231
JAMES CITY COUNTY29
HENRICO COUNTY27
CHARLOTTESVILLE CITY26
FAIRFAX CITY26
WASHINGTON COUNTY26
CAROLINE COUNTY25
SPOTSYLVANIA COUNTY25
NEW KENT COUNTY24
ALBEMARLE COUNTY23
PRINCE EDWARD COUNTY23
LYNCHBURG CITY22
HAMPTON CITY114
MECKLENBURG COUNTY19
ROCKINGHAM COUNTY19
MANASSAS CITY14
PETERSBURG CITY14
AMELIA COUNTY13
ORANGE COUNTY13
SOUTHAMPTON COUNTY13
SUSSEX COUNTY13
BRUNSWICK COUNTY12
FAUQUIER COUNTY12
GREENE COUNTY12
AUGUSTA COUNTY11
BEDFORD COUNTY11
CULPEPER COUNTY11
DANVILLE CITY11
DINWIDDIE COUNTY11
FRANKLIN COUNTY11
FREDERICK COUNTY11
FREDERICKSBURG CITY11
LOUISA COUNTY11
PRINCE GEORGE COUNTY11
SHENANDOAH COUNTY11
WINCHESTER CITY11
FRANKLIN CITY10
CAMPBELL COUNTY06

335838
Table 1: Distribution of unique individuals determined to be non-citizens that voted in each locality, and the number of total non-citizen identified ballots cast.

The distribution of the 838 ballots that were identified as being cast by non-citizen voters (yellow trace in Figure 1) in previous elections is shown in Figure 2a. 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 2b, which shows this distribution as a percentage of votes cast, was added on 3/24/2024 per feedback on X/Twitter after the initial posting of this article.

Figure 2a: Distribution of identified non-citizen ballots cast in previous elections.
Figure 2b (added 3/24/2024 per feedback on X/twitter): Distribution of identified non-citizen ballots cast in previous elections as percent of total ballots cast, according to entries in the VHL data files.

Figures 3 and 4 show the distribution of the registration dates of the identified non-citizen records. The same data is plotted in figure 3 and 4, 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 3: Registration dates of the identified non-citizen records. Absolute count on y-axis.
Figure 4: 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.

It should be noted for completeness that if we consider records that have been “Determined Non-Citizen” at any point in the MUS logs, regardless of their current status, we find 1,532 individual records that have been determined non-citizens. Of the 1,532 there was 379 with corresponding vote histories, accounting for 1,019 ballots cast. Omitting the reinstated and reactivated records results in a percent difference of (1532-1481)/1532*100 = 3.33% diff in total determined non-citizen records, (379-335)/379*100 = 11.6% diff in number of determined non-citizen voters, and (1019-838)/1019*100 = 17.76% diff in number of determined non-citizen ballots.

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.

However, 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 current 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.

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 838 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.

Categories
Election Data Analysis Election Forensics Election Integrity technical

Potential Double Voters in VA 2024 DEM and REP March Primary

EPEC has identified at least 28 individual voter IDs in the 2024 VA March Primaries who, according to the Daily Absentee List (DAL) files purchased from the VA Department of Elections (a.k.a. “ELECT”), have a record showing they voted in both the Republican and Democratic primaries.

All of the records identified have the same voter ID and voter information appearing in both the Democratic and Republican DAL files and are recorded as having voted In-Person Early (a.k.a. an “On Machine” ballot). 26 of the individual voter IDs identified have nearly identical timestamps associated with their duplicated ballots, while 2 have significantly differing timestamps.

The number of identified records fall into a small handful of localities:

  • Hanover County had 1 identified record (different timestamps)
  • Northampton County had 1 identified record (different timestamps)
  • Bath County had 12 identified records
  • Norfolk County had 11 identified records
  • Franklin County had 1 identified record
  • Harrisonburg City had 1 identified record
  • Staunton City had 1 identified record

Note that the localities with identified records utilize differing poll-book or poll-pad vendors and optical scanners, so it is unlikely that these errors are due to being associated with a particular vendor.

It is not clear at this point if these records are simply errant due to technology, policy, and/or procedural issues, or if these records truly reflect individuals that cast ballots in both primaries, which is a felony according to VA law. Section 24.2-1004 of the VA code states:

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/

The VA Department of Elections (“ELECT”) also states:

Virginia will have a dual presidential primary election, which means both the Democratic Party and the Republican Party will have primaries on the same day.

In a dual primary, officers of election will ask voters if they want to cast their ballot in the Democratic Party Primary or the Republican Party Primary. All qualified voters may vote in either primary, but voters may not vote in both primaries.

https://www.elections.virginia.gov/news-releases/early-voting-for-presidential-primaries-begins-jan-19.html
Categories
Election Data Analysis Election Forensics Election Integrity mathematics technical Uncategorized

VA 2024 March Primary Election Fingerprints

Abstract

Examining the Election Night Reporting data from the VA 2024 March Democratic and Republican primaries provides supporting evidence that the Republican primary was impacted and skewed by a large number of Democratic “crossover” voters, resulting in an irregular election fingerprint when the data is plotted.

Background

The US National Academy of Sciences (NAS) published a paper in 2012 titled “Statistical detection of systematic election irregularities.” [1] The paper asked the question, “How can it be distinguished whether an election outcome represents the will of the people or the will of the counters?” The study reviewed the results from elections in Russia and other countries, where widespread fraud was suspected. The study was published in the proceedings of the National Academy of Sciences as well as referenced in multiple election guides by USAID [2][3], among other citations.

The study authors’ thesis was that with a large sample sample of the voting data, they would be able to see whether or not voting patterns deviated from the voting patterns of elections where there was no suspected fraud. The results of their study proved that there were indeed significant deviations from the expected, normal voting patterns in the elections where fraud was suspected, as well as provided a number of interesting insights into the associated “signatures” of various electoral mechanism as they present themselves in the data.

Statistical results are often graphed, to provide a visual representation of how normal data should look. A particularly useful visual representation of election data, as utilized in [1], is a two-dimensional histogram of the percent voter turnout vs the percent vote share for the winner, or what I call an “election fingerprint”. Under the assumptions of a truly free and fair election, the expected shape of the fingerprint is of that of a 2D Gaussian (a.k.a. a “Normal”) distribution [4]. The obvious caveat here is that no election is ever perfect, but with a large enough sample size of data points we should be able to identify large scale statistical properties.

In many situations, the results of an experiment follow what is called a ‘normal distribution’. For example, if you flip a coin 100 times and count how many times it comes up heads, the average result will be 50. But if you do this test 100 times, most of the results will be close to 50, but not exactly. You’ll get almost as many cases with 49, or 51. You’ll get quite a few 45s or 55s, but almost no 20s or 80s. If you plot your 100 tests on a graph, you’ll get a well-known shape called a bell curve that’s highest in the middle and tapers off on either side. That is a normal distribution.

https://news.mit.edu/2012/explained-sigma-0209

In a free and fair election, the plotted graphs of both the Turnout percentage and the percentage of Vote Share for Election Winner should (again … ideally) both resemble Gaussian “Normal” distributions; and their combined distribution should also follow a 2-dimensional Gaussian (or “normal”) distribution. Computing this 2 Dimensional joint distribution of the % Turnout vs. % Vote Share is what I refer to as an “Election Fingerprint”.

Figure 1 is reprinted examples from the referenced National Academy of Sciences paper. The actual election results in Russia, Uganda and Switzerland appear in the left column, the right column is the modeled expected appearance in a fair election with little fraud, and the middle column is the researchers’ model of the as-collected data, with any possible fraud mechanisms included.

Figure 1: NAS Paper Results (reprinted from [1])

As you can see, the election in Switzerland (assumed fair) shows a range of voter turnout, from approximately 30 – 70% across voting districts, and a similar range of votes for the winner. The Switzerland data is consistent across models, and does not show any significant irregularities.

What do the clusters mean in the Russia 2011 and 2012 elections? Of particular concern are the top right corners, showing nearly 100% turnout of voters, and nearly 100% of them voted for the winner.

Both of those events (more than 90% of registered voters turning out to vote and more than 90% of the voters voting for the winner) are statistically improbable, even for very contested elections. Election results that show a strong linear streak away from the main fingerprint lobe indicates ‘ballot stuffing,’ where ballots are added at a specific rate. Voter turnout over 100% indicates ‘extreme fraud’. [1][5]

Note that election results with ‘outliers’ – results that fall outside of expected normal voting patterns – while evidentiary indicators, are not in and of themselves definitive proof of outright fraud or malfeasance. For example, in rare but extreme cases, where the electorate is very split and the split closely follows the geographic boundaries between voting precincts, we could see multiple overlapping Gaussian lobes in the 2D image. Even in that rare case, there should not be distinct structures visible in the election fingerprint, linear streaks, overly skewed or smeared distributions, or exceedingly high turnout or vote share percentages. Additional reviews of voting patterns and election results should be conducted whenever deviations from normal patterns occur in an election.

Additionally it should be noted that “the absence of evidence is not the evidence of absence”: Election Fingerprints that look otherwise normal might still have underlying issues that are not readily apparent with this view of the data.

Results on 2024 VA March Primaries:

Figure 2 and Figure 3 are the computed election fingerprints for the Democratic and Republican VA 2024 March Primaries, respectively. They were computed according to the NAS paper and using official state reported voter turnout and votes for the statewide winner and reported per voting Locality with combined In-Person Early, Election Day, Absentee and Provisional votes. Figures 4 and 5 perform the same process, except each data point is generated per individual precinct in a locality. The color scale moves from precincts with low counts as deep blue, to precincts with high numbers represented as bright yellow. Note that a small blurring filter was applied to the computed image for ease of viewing small isolated Locality or Precinct results.

The upper right inset in each graphic image was computed per the NAS paper; the bottom left inset shows what an idealized model of the data could or should look like, based on the reported voter turnout and vote share for the winner. This ideal model is allowed to have up to 3 Gaussian lobes based on the peak locations and standard deviations in the reported results. The top-left and bottom-right inset plots show the sum of the rows and columns of the fingerprint image. The top-left graph corresponds to the sum of the rows in the upper right image and is the histogram of the vote share for the winner across precincts. The bottom right graph shows the sum of the columns of the upper right image, and is the histogram of the percentage turnout across voting localities.

Figure 2 Democratic primary, accumulated per Locality:
Figure 3 Republican primary, accumulated per Locality:
Figure 4 Democratic primary, accumulated per Precinct:
Figure 5 Republican primary, accumulated per Precinct:

Analysis:

As can be seen in Figure 2 and 4, the Democratic primary fingerprint looks to fall within expected normal distribution. Even though the total vote share for the winner (Biden) is up around 90%, this was not unexpected given the current set of contestants and the fact that Biden is the incumbent.

The Republican primary results, as shown in Figure 3 and 5, show significant “smearing” of the percent of total vote share for the winner. The percent of voter turnout (x-axis) does however show a near Gaussian distribution, which is what one would expect. The republican primary data does not show the linear streaking pattern that the authors in [1] correlate with extreme fraud, but significant smearing of the distribution is observed.

A consideration that might partially explain this smearing of the histogram, is that there was at least 17% of “crossover voters” who historically lean Democrat but voted in the Republican primary (see here for more information). Multiple news reports and exit polling suggest that this was due in part to loosely organized efforts by the opposing party to cast “Protest Votes” and artificially inflate the challenger (Haley) and dilute the expected (Trump) margin of victory for the winner, with no intention of supporting a Republican candidate in the General Election. (This is completely legal in VA, by the way, as VA does not require by-party voter registration.)

If we categorize each locality as being either Democratic or Republican leaning based on the average results of the last four presidential elections, and then split the computation of the per precinct results into separate parts accordingly, we can see this phenomenon much clearer.

Figure 6 shows the per-precinct results for only those locality precincts that belong to historic Republican leaning localities. It depicts a much tighter distribution and has much less smearing or blurring of the distribution tails. We can see from the data that Republican base in historically Republican leaning localities seems solidly behind candidate Trump.

Figure 7 shows the per-precinct results for only those locality precincts that belong to historic Democratic leaning localities. It can clearly be seen by comparing the two plots that the major contributor to the spread of the total republican primary distribution is the votes from historically Democratic leaning localities.

Figure 6 Republican primary, accumulated per Precinct in Republican leaning localities:
Figure 7 Republican primary, accumulated per Precinct in Democratic leaning localities:

References:

Categories
Election Data Analysis Election Forensics Election Integrity

2024 VA Republican Primary Election DAL File Metrics

Below you will find the current summary data and graphics from the VA 2024 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.

Linear Scale Plot:

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.

Logarithmic Scale Plot:

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.

Summary Data Table:
Print  CSV  Copy  

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.

Categories
Election Data Analysis Election Forensics Election Integrity technical

2024 VA Democratic Primary Election DAL File Metrics

Below you will find the current summary data and graphics from the VA 2024 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.

Linear Scale Plot:

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.

Logarithmic Scale Plot:

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.

Summary Data Table:
Print  CSV  Copy  

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.

Categories
Election Data Analysis Election Forensics Election Integrity programming technical Uncategorized

Records of Early Ballots Cast Do Not Have Corresponding Registration Records in VA 2023 General Election Data

Update (2023-12-14 12:00:00 EST) : Special thank you to Rick Michael of the Chesterfield Electoral board for checking their records on issues #1 and #2 below. There were 3 x Issue #1 records and 9 x Issue #2 records identified in Chesterfield County.

According to Rick, the records in question were populated and visible when looking via the electronic VERIS (the states election database) login available to the Registrar. The 3 x Issue #1 records can be found and are Active records in the electronic system, and the 9 x Issue #2 records had an update that moved the records from Inactive to Active that were not reflected in the data supplied to us.

That implies that the data that we purchased (for approximately $12,000) directly from the department of elections is inaccurate and incomplete. Our initial purchase and download of the June 30 Registered Voter List (RVL) database does not show the registrants identified in Issue #1, even though the Registrar can see them in their electronic terminal. And our Monthly Update Subscription (MUS) we receive is missing the updates showing the registrant records identified in Issue #2 being moved from Inactive to Active status.

The department of elections is required by federal law (NVRA, HAVA) to keep and maintain accurate election records AND to make those records accessible for inspection and verification, and for use by candidates and political parties. Additionally, we have paid (twice!) for this data; once as taxpayers, and once again as a 501c3 entity. If the data we, and other campaigns and candidates are receiving is not representative of the actual records in the database, incomplete and inaccurate … that needs to be addressed and fixed.

Summary:
  • Issue #1: There are 99 records of ballots cast, according to the VA Department of Elections (ELECT) Daily Absentee List (DAL) data file that do not have corresponding voter ID listed in Registered Voter List (RVL) data.
  • Issue #2: There are 380 records of ballots cast in the DAL where the corresponding RVL record has been listed as “Inactive” since June-30-2023 and no modification to the RVL record has taken place.
  • Issue #3: There are 18 records of ballots cast in the DAL where the corresponding RVL record is listed as “Inactive” as of Dec-01-2023, but there has been previous modifications to the RVL record since June-30-2023.
  • We are currently reaching out in attempts to contact the VA AG’s office and to provide them the details of this analysis in order to have these anomalies further investigated.
Data files utilized for this analysis:

Our 501c3 EPEC purchased and downloaded the full statewide VA RVL on June-30-2023 from ELECT. We additionally purchased the Monthly Update Service (MUS) package from ELECT, where on the 1st of each month we are provided a list of all of the changes that have occurred to the RVL in the previous month. By applying these changes to our baseline data file, we are able to update our copy of the RVL to reflect the latest state as per ELECT. We can also create a cumulative record of all entries associated with a particular voter ID by simply concatenating all of these datafiles.

Additionally, during the VA 2023 General Election, we purchased access to the Daily Absentee List (DAL) file generated by ELECT that documents all of the transactions associated with early mail-in or in-person voting during the 45 day early voting period. The DAL file we utilized for this analysis was downloaded from ELECT on Nov-13-2023 at 6am EST.

Identification of ballots cast via the DAL file can be performed by checking for rows of the DAL data table that have the APP_STATUS field set to “Approved” and have the BALLOT_STATUS field set to any of the following: “Marked” | “Pre-Processed” | “On Machine” | “FWAB” | “Provisional”.

Once cast ballots are identified in the DAL, the Voter Identification Number can be used to lookup all of the corresponding records in our cumulative RVL data. The data issues summarized above can be directly observed using this process. Due to VA law, we cannot publish the full specific records here in this blog but have summarized, captured and described our process and results.

For Issue #1: If there does not exist a corresponding registration record for cast ballots, then the voter should not have been able to have their mail-in ballot approved or issued, or been able to check-in to an early voting precinct to vote on-machine. If the voter record actually does exists, then why is it not reflected in the data that we purchased from ELECT. Note that all provisional and Same Day Registration (SDR) ballots were required to be entered into the states database (“VERIS”) by the Friday after the election (Fri Nov-10-2023). We specifically waited until we received the Dec-01-2023 MUS data update from ELECT to attempt to perform this or similar analysis in order to ensure that we would not be missing any last minute registrations or RVL updates.

For Issue #2: There are 380 records of ballots being cast in the DAL where the baseline June-30-2023 RVL data file shows the registrant as inactive, and there has been no modifications or adjustments to the record presented in the MUS data files. Therefore these registrants should still have been listed as “Inactive” during the early voting period which started in September through Election Day (Nov 7).

For issue #3: There are 18 records that show the cast ballot is from a registrant that is currently listed as “Inactive” but there has been adjustments to the registration record over the last 6 months. An example of such is below. Note that I have captured the MUS data file generation dates in the 5th column to note when the file was generated and received by us.

In the example given below, the first invalidation operation on the registration record appears in the MUS file dated Sep-01, with the earliest transaction date listed as Aug-29-2023. The ballot application was not received until Sept 26 according to the DAL, so the application should never have been approved or the ballot issued as the registrant status should have been “Invalid” according to the states own data.

(Also … yes … I know there is a typo in the spelling of “APP_RECIEPT_DATE” in the tables below … but this is the data as it comes from ELECT).

APP_RECIEPT_DATEAPP_STATUSBALLOT_RECEIPT_DATEBALLOT_STATUS
“2023-09-26 00:00:00”Approved“2023-10-19 00:00:00”Pre-Processed
Example Extract of a DAL data record for a mail-in ballot cast during early voting.
TRANSACTIONDATETRANSACTIONTIMETrans_TypeNVRAReasonCodeFile Source
30-June-202312:12:00BASELINEBASELINEBaseline RVL
28-Jul-202309:34:03MODIFYChange OutMUS 08/01/2023
28-Jul-202309:34:04MODIFYAddress ChangeMUS 08/01/2023
28-Jul-202309:34:04MODIFYChange InMUS 09/01/2023
28-Jul-202309:34:03MODIFYChange OutMUS 09/01/2023
28-Jul-202309:34:04MODIFYAddress ChangeMUS 09/01/2023
28-Jul-202309:34:04MODIFYChange InMUS 09/01/2023
29-Aug-202311:55:49MODIFYInactivateMUS 09/01/2023
29-Aug-202311:55:49MODIFYInactivateMUS 10/01/2023
Extract of RVL Cumulative Data Records for Voter ID in above DAL entry
Categories
Election Data Analysis Election Forensics Election Integrity technical

2023 VA General Election DAL File Metrics

Below you will find the current summary data and graphics from the VA 2023 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.

Linear Scale Plot:

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.

Logarithmic Scale Plot:

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.

Summary Data Table:
Print  CSV  Copy  

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
Editorial Note:

When we first started receiving DAL data files on Sept-14-2023 after our purchase from ELECT, we noticed that there were a dozen or so records that were marked as being in a countable state, including records that should correspond to In-Person-Early votes. This is problematic as in person early voting facilities were not opened until Sept-22-2023. We respectfully raised this issue with the dept of elections and they acknowledged the error and directed registrars to correct the issues before the official start of early voting. (This can be observed in the logarithmic plot with the Overseas_Countable, On-Machine, Provisional, and Pre-Processed counts being reset to 0 on 9-21-2023.) We’d like to take a moment to thank the folks at ELECT and the registrars for listening to our concerns and correcting these errors before the start of early voting. Credit where credit is due.


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.

Categories
Election Data Analysis Election Forensics Election Integrity Interesting mathematics technical

VA voter registrations greater than census determined eligible voters

One of our volunteers brought to our attention the following press release: https://www.honestelections.org/honest-elections-project-supports-new-pre-litigation-notices-against-arizona-and-virginia/. They claim that “… 43 counties and independent cities in Virginia and four counties in Arizona claim to have more voters than voting-age adult citizens.”

Attempt to directly validate the claim

After reading through the press release we decided to independently try to verify the claims in the release. Note that an analysis like this has been on our list of things-to-do, but there are only so many hours in the day! The fact this press release was issued gave us a well deserved prod to complete this analysis.

EPEC has purchased the entire statewide registered voter list data from the VA Department of Elections (ELECT) and has current records as of 2023-08-01. Eligible parties can purchase data from ELECT via their website here.

The necessary data from the US Census office can be downloaded here and included the estimates of the eligible voting age citizens in each county. From the documentation on the census site, the “cvap_est” field in the census data represents “The rounded estimate of the total number of United States citizens 18 years of age or older for that geographic area and group.”

It is therefore a straightforward process to accumulate the number of registrant records in each county, as well as accumulating the number of eligible voting age citizens and compute the registration percent “REG_PCT” as (# Registered / # Eligible * 100). The below table has the results of this direct computation for each county.

The results are only slightly different than the results presented by Honest Elections Project, but still show significant issues with 38 counties being over 100%.

Adjusting for population growth since 2020 census

As the census redistricting data is circa 2020, and the eligible voter data was estimated for 2021, we can attempt to account for population shifts since the 2020 census data was collected and the voter eligibility data was computed. The US Census bureau also makes available the estimates of population growth by county year-over-year since the date of the last census here, which we can use to find the recent rates of growth or decline for each county. We can then use these rates to adjust the number of eligible voter estimates to scale with the most recent rates of population change. This is admittedly an approximation and assumes a linear relationship, but it is arguably better than taking the 2020 census and 2021 eligible voter estimates and applying them directly to the latest (2023) RVL.

The REG_PCT_ADJ column in the table below represents this adjusted estimate.

Active vs inactive registrations

An additional consideration that can be made with this data, is to attempt to consider only “Active” voter registrations vs registrations with any status assigned. Note that “Inactive” voter registrations can be immediately returned to “Active” status by simply having any type of interaction with the department of elections (or through DMV, etc), and the registrant will then be allowed to vote. Because of this easy ability to change “Inactive” records to “Active”, it is most appropriate (IMO) to include them in this analysis. However, for completeness, and in order to bound the scope of the issue, the corresponding REG_PCT_ACTIVE and REG_PCT_ADJ_ACTIVE columns have also been computed which only consider “Active” voters.

Results

Even the most forgiving analysis we could compute with the official data from US Census and VA ELECT, which only considers active voters and attempts to adjust for population change since the census, still results in multiple (6) counties in VA having more than 100% registered voters than eligible voters, and many counties that had over 90%.

The most appropriate metric to consider, in my opinion, is the Adjusted and either Active or Inactive status results, as inactive status registrations can still be converted to active status and voted. There were 36 localities with over 100% in this category and 59 between 90% and 100%. There are 133 voting localities in total in VA.

The summary tabulated data and graphics for each of the methods of analyzing the data is presented below.

Tabulated Data Results:
LOCALITY_NAMEN_REGN_REG_ACTIVEN_ELIGIBLEN_ELIGIBLE_ADJREG_PCTREG_PCT_ADJREG_PCT_ACTIVEREG_PCT_ADJ_ACTIVE
GOOCHLAND COUNTY22032213081984020314.622534217111.048387096774108.453897988458107.399193548387104.889962705976
LOUDOUN COUNTY291468272527259775261988.121593707112.200173226831111.252372140753104.908863439515104.022655050994
FAIRFAX CITY17867165781589016179.2525931696112.441787287602110.431553603056104.32976714915102.464560118177
SURRY COUNTY5635544953255327.44865113427105.821596244131105.772957545076102.328638497653102.281605264085
NEW KENT COUNTY19258186861754518281.8036615372109.763465374751105.339715689632106.503277286976102.210921558649
KING WILLIAM COUNTY14025135921338013590.9343586927104.820627802691103.193788078519101.584454409567100.007840824473
MATHEWS COUNTY7353709271457099.01111761264102.911126662001103.57780651670299.2582225332499.9012381091326
NORTHAMPTON COUNTY9801930694359326.0652878146103.879173290938105.09255186971498.632750397456399.7848472298299
HANOVER COUNTY86583838008328084111.898838322103.96613832853102.937873470706100.62439961575499.6291858314583
RAPPAHANNOCK COUNTY6194595259455996.95979561651104.188393608074103.285668256898100.11774600504699.250290194552
JAMES CITY COUNTY63840604186010061066.3951247591106.222961730449104.541949577299100.52911813643998.9382128690675
FAUQUIER COUNTY56031528055296553424.3705925266105.788728405551104.87910176304199.697913716605398.840659074394
FALLS CHURCH CITY11130102531034510373.4476832119107.588206863219107.29316173264799.110681488641998.8388847479627
ACCOMACK COUNTY25327241922465024522.1840906366102.74645030426103.2819911407198.141987829614698.6535290273647
CRAIG COUNTY3917374738303807.2210828548102.271540469974102.88343951549397.832898172323898.4182404555912
CHARLES CITY COUNTY5728558457005677.65042979943100.491228070175100.88680292707597.964912280701898.3505425182942
ISLE OF WIGHT COUNTY31039296652971030281.6797400553104.473241332885102.5009189267199.848535846516397.9635220194221
SPOTSYLVANIA COUNTY105580100062100440102345.441485999105.117483074472103.16043242086599.623655913978597.7688879418126
LANCASTER COUNTY9201873690658943.53432452276101.50027578599102.87879115945696.370656370656497.6795043548532
CLARKE COUNTY12213114891161011882.4255832663105.193798449612102.78204491513398.957795004306696.6890128576076
POWHATAN COUNTY24346236242419524441.048216348100.6240958875899.611112356938897.640008266170796.6570655680737
LOUISA COUNTY29799287752900529810.5293092847102.73745905878399.961324707907599.207033270125896.5262968042565
FAIRFAX COUNTY784080721354749510747334.300776511104.612346733199104.91690254084596.243412362743796.523603861148
HENRICO COUNTY239597227831236070236137.172406976101.494048375482101.46517702306596.509933494302596.4824799406588
BEDFORD COUNTY62932605996243562871.2603534819100.796027868984100.09660955765397.05934171538496.3858520718266
NELSON COUNTY11827113841195511835.4598.929318276871699.928604320072395.223755750731996.1856118694262
FREDERICK COUNTY68222638686571566439.8543302061103.814958533059102.68234433648397.18937837632296.1290488124432
NORTHUMBERLAND COUNTY1039599041009010304.4313465051103.022794846383100.87892917570598.156590683845496.1139888942937
POQUOSON CITY9547910995009479.6573875803100.494736842105100.71039078382795.884210526315896.0899706347414
ORANGE COUNTY28633273512786528465.9231224287102.756145702494100.58693644626598.155392068903796.0833059316801
PRINCE WILLIAM COUNTY317403289258300255301330.510742882105.711145526303105.33384064477796.337446503805195.9935982874356
CHESTERFIELD COUNTY268258253920259725264714.168974025103.285398017134101.3387387005897.764943690441895.9223304835323
STAFFORD COUNTY111503103640106940108128.634023171104.266878623527103.12069601850996.914157471479395.8488016946475
AMELIA COUNTY1018099031028010370.952987928399.027237354085698.158771058449696.332684824902795.4878496848553
BOTETOURT COUNTY26424256712691027035.137004444298.193979933110497.739471398485295.395763656633294.9542071703948
GREENE COUNTY14956144321521515272.161166064398.297732500821697.929820392631694.853762734143994.4987408335423
ALBEMARLE COUNTY84004791078326583844.7847760722100.887527772774100.18989281724995.006305170239694.3493387349904
CULPEPER COUNTY37104354793720037612.219020172999.74193548387198.64879277688995.373655913978594.3283882851241
EMPORIA CITY3987371040353933.8020277481398.8104089219331101.35232967690391.945477075588694.3107958618791
KING AND QUEEN COUNTY5385515754305470.7168566286799.17127071823298.43316956671294.972375690607794.2655256184836
GLOUCESTER COUNTY30265290683058030862.894891518298.969914977109298.062738788374295.055591890124394.1842950966615
WESTMORELAND COUNTY14199136041447014454.550501815198.127159640635898.232041170820394.01520387007694.1156904069188
WARREN COUNTY30580288713036030718.0311057939100.72463768115999.550651194672995.095520421607493.9871435788555
MADISON COUNTY10409100651077010808.602150537696.648096564531196.302924791086493.454038997214593.1202745722244
FLUVANNA COUNTY20994201972141521693.887289995398.034088255895496.773804156721694.312397851972993.0999582048827
KING GEORGE COUNTY19822185771974519984.620303757100.38997214484799.186272737308894.08457837427292.9564821229435
APPOMATTOX COUNTY12256117451241512679.986583729798.719291180024296.656253688203794.603302456705692.6262809699701
ROANOKE COUNTY73141691367480074926.018335727897.782085561497397.617625525315592.42780748663192.2723528297154
SUFFOLK CITY71421654886949571088.6638879661102.77142240449100.46749522899794.234117562414692.1215794732158
HIGHLAND COUNTY1879181519201971.4056224899697.864583333333395.312703715775794.5312592.0662891134289
ARLINGTON COUNTY175053155984169220169528.629042616103.446992081314103.25866550598792.17822952369792.0104178750769
YORK COUNTY50591474655159051709.59579071698.063578212831997.836773284317992.004264392324191.7914736601402
FLOYD COUNTY11879114771242512513.126249274695.605633802816994.932311585113592.370221327967891.7196851639319
SHENANDOAH COUNTY32321309583366033764.368600682696.021984551396395.725172243696591.972667855020891.6883723375006
CUMBERLAND COUNTY7381713477507789.964933993495.238709677419494.75010558508792.051612903225891.579359604933
CAROLINE COUNTY23033218052340023813.572383924698.431623931623996.722153352969893.183760683760791.565430202818
ESSEX COUNTY8291790186108673.6448066717296.295005807200995.588419687449191.765389082462391.0920400374546
MIDDLESEX COUNTY8708830889959137.7910323059896.809338521400895.296554377458692.362423568649290.9191288203865
DINWIDDIE COUNTY20876199322184021966.364513018395.586080586080695.036208598049491.263736263736390.7387291519602
FRANKLIN CITY5877556460606148.7229330708796.98019801980295.580823269667891.815181518151890.4903353194541
CHESAPEAKE CITY176334164440181540182080.13664946697.132312438030296.844171607511290.580588300099290.3118830125735
CHARLOTTE COUNTY8391809990058968.2672279118293.181565796779693.563224497646589.938922820655290.3073001080252
CAMPBELL COUNTY40938390804350543321.159458239394.099528789794394.498855783080889.82875531548190.2099585715667
MECKLENBURG COUNTY22837219072412524290.610561056194.661139896373194.015751240989490.806217616580390.1871113734884
BATH COUNTY3353320735903556.6209933936993.398328690807894.274875119617589.331476323119890.1698552068635
HALIFAX COUNTY25042241782703026938.720303335592.64520902700792.959129899349289.4487606363389.7518505992518
WYTHE COUNTY20849201882258022508.736879432692.33392382639592.626254914600789.40655447298589.6896174500436
VIRGINIA BEACH CITY328860303604342075339791.41743699396.136812102609196.782903606145488.753635898560389.3501084547837
RUSSELL COUNTY19126185892093520829.412362669691.358968235013191.822081521020688.793885837114989.2439963083892
ALEXANDRIA CITY11121697404109245109471.650837935101.804201565289101.59342546560189.161060002746188.976460347894
SCOTT COUNTY15973155351747017465.120566055391.431024613623491.456568762798388.923869490555288.9487131866319
PITTSYLVANIA COUNTY44900432604884548732.824762855791.923431262155892.135024428591988.56587163476388.7697362312001
PAGE COUNTY17104165491878518744.748119826991.051370774554291.24689161284988.096885813148888.286062283737
CARROLL COUNTY21244206452333023390.991365966191.058722674667890.821289562399888.491213030432988.2604746288714
FRANKLIN COUNTY39895385634375043800.899836393491.188571428571491.082603665717388.14488.0415702509351
GILES COUNTY12058115491325513150.296369995290.969445492267191.693750929542187.129385137683987.8231157310733
COLONIAL HEIGHTS CITY12913119651358513641.672521681995.053367684946694.658481058508788.075082811924987.7091865457335
SOUTHAMPTON COUNTY13173126671454514460.328214226390.567205225163391.097517323570787.088346510828587.5982883122804
HOPEWELL CITY15555144901678016647.325988334492.69964243146693.438429756827986.352800953516187.0410059258396
AMHERST COUNTY22734218972503025187.877735656790.827007590890990.257703481770887.483020375549386.9346763939621
PATRICK COUNTY12896125271447514454.518055241189.091537132987989.21777917959786.542314335060486.664944151893
MANASSAS CITY23663216292505524982.937215012394.444222710037994.716645190065586.326082618239986.5750884848044
PORTSMOUTH CITY68285630857350073041.556566091192.904761904761993.487876231406585.829931972789186.3686413130011
AUGUSTA COUNTY54910530036118561409.98534289989.744218354171889.415425998549686.62744136634886.310067823732
ROCKINGHAM COUNTY56871542636224062923.041079673391.373714652956390.381836326044487.183483290488486.2370906887544
ALLEGHANY COUNTY10965103951226512110.707867412189.400733795352690.539711799216684.753363228699685.8331330736759
WASHINGTON COUNTY39282378314407544210.191846522889.12535450935988.852815062121585.833238797504385.5707664226648
WAYNESBORO CITY15564142921655016705.275269959394.042296072507693.168174414871186.35649546827885.5538132059456
HAMPTON CITY9992989709105410105555.29079341694.800303576510894.669816405103685.104828763874484.9876868565225
ROCKBRIDGE COUNTY16203156511845518417.501435575887.797344892982987.976102820884484.80628555946984.9789536042499
HENRY COUNTY36321342474065040334.796007634889.350553505535190.048800527279184.248462484624884.9068382384221
FREDERICKSBURG CITY19199175492057020786.123058542493.334953816237292.364506579353985.313563441905784.4265183583041
BUCHANAN COUNTY14607140091703016593.553194703285.772166764533288.028162676229582.260716382853884.4243534559663
CHARLOTTESVILLE CITY33751304393656536279.548327137592.304115957883293.030375394044983.246273759059283.9012650475344
MARTINSVILLE CITY9035826997809907.0411100450292.382413087934691.1977642935184.550102249488883.4658896450509
STAUNTON CITY18003168792005020246.177834951189.790523690773188.920487347104884.184538653366683.3688221925113
DICKENSON COUNTY1007194531147011364.83901241787.802964254577188.615421555876382.414995640802183.1775970576605
LUNENBURG COUNTY8036776493209346.4132699841686.223175965665285.979506446686683.304721030042983.069299160288
PULASKI COUNTY23605228212764527561.594001419885.386145776813285.644538551667482.550189907759182.8000006052786
LEE COUNTY15524149131814018075.041022619185.578831312017685.886388753271882.210584343991282.5060368125189
BRISTOL CITY12449110901354513449.919567124991.908453303802192.558174328630281.8752307124482.4540246850758
SMYTH COUNTY20124194292373523613.919425675784.786180745734285.220922614476981.858015588792982.277743265587
GRAYSON COUNTY10885104881274012750.80365296885.439560439560485.367168189953882.323390894819582.253638950504
BLAND COUNTY4624431952855258.485191778687.492904446546887.934069059078281.721854304635882.1339196077333
MANASSAS PARK CITY89388188102109983.4697342231687.541625857002989.527992150471480.195886385896282.0155739234795
NEWPORT NEWS CITY122432110842136045135707.76650213289.993752067330790.217386341021481.474512109963681.6769760913118
PETERSBURG CITY23678206262531525335.484460694793.533478174995193.457853694228381.477384949634681.411508163576
BRUNSWICK COUNTY11073107061320013152.087114337683.886363636363684.191960589501681.106060606060681.4015289507093
COVINGTON CITY3797357644354394.7592043273485.614430665163586.398362764932580.631341600901981.369645838135
WISE COUNTY24615235812921528980.998543702984.25466370015484.934961653860780.715385931884381.3671066731541
DANVILLE CITY28416260103213532023.52546252688.42694880970988.73476480049880.939785280846481.2215383045099
WINCHESTER CITY18077158671973019604.384847945991.621895590471492.208963148843980.420679168778580.9359749008522
ROANOKE CITY65501589027354072871.955561856989.068534131085189.885058655246180.095186293173880.8294487856874
NORTON CITY2600244330553036.4899476728285.106382978723485.625180547449379.967266775777480.4547369528534
SALEM CITY17727162712009020223.912203202688.237929318068787.653663751530580.990542558486880.4542654087636
RICHMOND CITY158141142368177060178454.84090649589.314921495538288.616817115575780.406641816333479.778166440773
LYNCHBURG CITY55508490296146061591.281629970490.315652456882590.123144917623779.773836641718279.6037989508931
GALAX CITY4016376547304780.4324973719884.904862579281284.009135202887679.598308668076178.7585642527071
TAZEWELL COUNTY27315253713249532303.55231295484.059086013232884.557263967054278.076627173411378.5393499581963
BUCKINGHAM COUNTY11026104361362013653.768595041380.954478707782780.754261530434576.622613803230576.4331102241624
SUSSEX COUNTY7121683691859072.8634850166577.528579205225978.486797599897274.425694066412675.3455621953234
RICHMOND COUNTY5629544272007224.6657089181178.180555555555677.913639561918775.583333333333375.3252845080764
BUENA VISTA CITY4380390052255206.0430839002383.827751196172284.132995624742774.641148325358974.9129413097024
NOTTOWAY COUNTY965192721243512415.051655544177.611580217129177.736285500593874.563731403297174.6835394427009
PRINCE EDWARD COUNTY13443127101788017855.570433119375.184563758389375.287429490717171.085011185682371.182268007663
PRINCE GEORGE COUNTY24912227513244032542.605702590876.794081381011176.551952316518770.13255240443969.9114269088438
NORFOLK CITY138210126445184395182802.31049888374.953225412836675.606265381883468.572900566718269.170351104929
MONTGOMERY COUNTY60377545937903079093.969241665476.397570542831876.335782081593169.078830823737869.02296157776
WILLIAMSBURG CITY1012787211298513178.84306220177.989988448209576.842860577389167.162110127069766.174245788033
GREENSVILLE COUNTY6395615495959438.6146161934866.649296508598267.753587364700164.13757165190265.2002465429811
HARRISONBURG CITY25205228333872038443.460777083465.095557851239765.563816291547358.969524793388459.3937162223725
RADFORD CITY917184181431514484.613106033164.065665385958863.31546402285458.805448829898758.1168439804149
LEXINGTON CITY4087341064706490.8906228978963.168469860896562.965165143629252.704791344667752.5351634792698
Categories
Election Data Analysis Election Forensics Election Integrity mathematics programming technical

Voter ID Number distribution patterns in VA Registered Voter List

One thing that I have been asked about repeatedly is if there is any sort of patterns in the assignment of voter ID numbers in the VA data. Specifically, I’ve been asked repeatedly if I’ve found any similar pattern to what AuditNY has found in the NY data. It’s not something that I have looked at in depth previously due mostly to lack of time, and because VA is setup very differently than NY, so a direct comparison or attempt to replicate the AuditNY findings in VA isn’t as straightforward as one would hope.

The NY data uses a different Voter ID number for counties vs at the state level, which is the “Rosetta Stone” that was needed for the NY team to understand the algorithms that were used to assign voter ID numbers, and in turn discover some very (ahem) “interesting” patterns in the data. VA doesn’t have such a system and only uses a single voter ID number throughout the state and local jurisdictions.

Well … while my other machine is busy crunching on the string distance computations, I figured I’d take a crack at looking at the distribution of the Voter ID numbers in the VA Registered Voter List (RVL) and just see what I find.

To start with, here is a simple scatter plot of the Voter ID numbers vs the Registration date for each record in the 2023-07-01 RVL. From the zoomed out plot it is readily apparent that there must have been a change in the algorithm that was used to assign voter identification numbers sometime around 2007, which coincides nicely with the introduction of the current Virginia Election and Registration Information System (VERIS) system.

From a high level, it appears that the previous assignment algorithm broke the universe of possible ID numbers up into discrete ranges and assigned IDs within those ranges, but favoring the bottom of each range. This would be a logical explanation for the banded structure we see pre-2007. The new assignment algorithm post-2007 looks to be using a much more randomized approach. Nothing strange about that. As computing systems have gotten better and security has become more of a concern over the years there have been many systems that migrated to more randomized assignments of identification numbers.

Looking at a zoomed in block of the post-2007 “randomized” ID assignments we can see some of the normal variability that we would expect to see in the election cycles. We see that we have a high density of new assignments around November of 2016 and 2020, with a low density section of assignments correlated to the COVID-19 lockdowns. There are short periods where it looks like there were lulls in the assignment of voter ID’s, these are perhaps due to holidays or maintenance periods, or related to the legal requirements to “freeze” the voter rolls 30 days before any election (primaries, runoffs, etc). Note that VA now has same day voter registration as of the laws passed by the previous democratic super-majority that went into affect in 2022, so going forward we would likely see these “blackout periods” be significantly reduced.

We can see more clearly the banded assignment structure of the pre-2007 entries by zooming in on a smaller section of the plot, as shown below. It’s harder to make out in this banded structure, but we still see similar patterns of density changes presumably due to the natural election cycles, holidays, maintenance periods, legally required registration lockouts periods, etc. We can also see the “bucketing” of ID numbers into distinct bands, with the bias of numbers filling the lower section of each band.

All of that looks unremarkable and seems to make sense to me … however … if we zoom into the Voter ID address range of around [900,000,000 to 920,000,000] we do see something that catches my curiosity. We see the existence of the same banded structure as above between 900,000,000 and 915,000,000 AND pre-2007, but there is another band of assignments super-imposed on the entire date range of the RVL. This band does not seem to be affected by the introduction of the VERIS system (presumably), which is very interesting. There is also what looks like to be a vertical high-density band between 2007 and 2010 that extends along the entire vertical axis, but we only see it once we zoom in to the VERIS transition period.

The horizontal band that extends across all date ranges only exists in the [~915,000,000 to ~920,000,000] ID range. It trails off in density pre ~1993, but it exists throughout the full registration date range. I will note that the “Motor Voter” National Voter Registration Act (NVRA) was implemented in 1993, so perhaps these are a reserved universe block for DMV (or other externally provided) registrations? (That’s a guess, but an educated one.)

A plausible explanation I can imagine for the distinct high density band between 2007-2010 is that this might be related to how the VERIS system was implemented and brought into service, and there was some sort of update around 2010 that made correction to its internal algorithms. (But that is just a guess.) That still wouldn’t entirely explain the huge change in the density of new registrants added to the rolls.

Another, or additional, explanation might be that when VERIS came online there were a number of registrants that had their Voter ID number regenerated and/or their registration date field updated as part of the rollout of the new VERIS software. Meaning that while VERIS was coming online and handling the normal amount of new real registrations, it was also moving/updating a large number of historic registrations, which would account for the higher density as VERIS became the system of record. That seems to be a poor systems administration and design choice, in my opinion, as it makes inaccurate those moved registrant records by giving them a false registration date. However, if that was the case, and VERIS was resetting registration dates as it ingested voter records into its databases, why do we see any records with pre-2007 registration dates at all? (This is again, merely an educated guess on my part, so take with a grain of salt.)

Incorporating the identification of cloned registrations

In attempting to incorporate some of my early results on the most recent RVL data doing duplicate record identification (technically they are “cloned” records, as “duplicates” would have the same voter ID numbers. This was pointed out to me a few days ago.) on this dataset, I did a scatter plot of only those records that had an identified exact match of (FullName +DOB) to other records in the dataset, but with unique Voter ID numbers. The scatter plot of those records is shown below, and we can see that there is a distinct ~horizontal cluster of records that aligns with the 915M – 920M ID band and pre-2007. In the post-2007 block we see the cloned records do not seem to be totally randomly distributed, but have a bias towards the lower right of the graph.

Superimposing the two plots produces the following, with the red indicating the records with identified Full Name + DOB string matches.

Zooming in to take a closer look at the 915M-920M band again, gives the following:

It is curious that there seems to be an alignment of the exact Full Name + DOB matching records with the 915M-920M, pre-2007 ID band. Post-2007 the exact cloned matches have a less structured distribution throughout the data, but they do seem to cluster around the lower right.

If the cloned records were simply due to random data entry errors, etc. I would expect to see sporadic red datapoints distributed “salt-n-pepper” style throughout the entirety of the area covered by the blue data. There might be some argument to be made for there being a bias of more of the red data points to the right side of the plot, as officials have not yet had time to “catch” or “clean-up” erroneous entries, but there is little reason to have linear features, or to have a bias for lower ID numbers in the vertical axis.

I am continuing to investigate this data, but as of right now all I can tell you is that … yes, there does seem to be interesting patterns in the way Voter IDs are assigned in VA, especially with records that have already been found and flagged to be problematic (clones).

Categories
Election Data Analysis Election Forensics Election Integrity programming technical

Preliminary Results of 2023-07-01 VA RVL duplicate detections

Below are the preliminary results from performing exact (string distance of 0) duplicate record checks on the 2023-07-01 VA Registered Voter List information. Note that these are the numbers of ordered matches discovered, not the number of individual unique registrants. Each count represents two different registration records, with unique voter IDs, that match the given criteria. Match pairs are directional, in that a pair (A,B) is counted separately from the pair (B, A). Matches are grouped into this table according to the LOCALITY_NAME of the first element of the identified pair. Some pairs can have different locality information, except for in the strictest case (3rd column), so a match might be counted in one locality while its mirror is counted in the other.

The first data column of the table below is equivalent to the criteria used by the MOU between the VA Department of Elections (ELECT) and the Department of Motor Vehicles (DMV), as discussed and documented in a previous post. There were 5,290 matches for this criteria across the state.

The second data column below is based on a match of the registrants Full Name and Day+Month+Year of birth information, but NOT the registrants listed address information. There were 1,200 matches for this criteria across the state.

The third data column is the strictest match criteria and includes the Gender and Address of the registrant. There were 208 matches for this criteria across the state.

I am only considering Active registrations in the table below. I previously computed similar statistics using the previous purchased 2022-11-23 RVL, I have not yet done a comparison of the two datasets, but will do so once I complete the string distance processing on this latest set.

Row LabelsSum of Exact Same First+Last+DobSum of Exact Same First+Middle+Last+Sfx+DOBSum of Exact Same First+Middle+Last+Sfx+Gender+Address+DOB
ACCOMACK COUNTY2470
ALBEMARLE COUNTY1165722
ALEXANDRIA CITY60130
ALLEGHANY COUNTY1240
AMELIA COUNTY500
AMHERST COUNTY3282
APPOMATTOX COUNTY1500
ARLINGTON COUNTY152620
AUGUSTA COUNTY6962
BATH COUNTY200
BEDFORD COUNTY67130
BLAND COUNTY500
BOTETOURT COUNTY2420
BRISTOL CITY800
BRUNSWICK COUNTY1710
BUCHANAN COUNTY1150
BUCKINGHAM COUNTY700
BUENA VISTA CITY300
CAMPBELL COUNTY39134
CAROLINE COUNTY1800
CARROLL COUNTY1400
CHARLES CITY COUNTY200
CHARLOTTE COUNTY1110
CHARLOTTESVILLE CITY2580
CHESAPEAKE CITY136138
CHESTERFIELD COUNTY38012734
CLARKE COUNTY1100
COLONIAL HEIGHTS CITY1240
COVINGTON CITY500
CRAIG COUNTY300
CULPEPER COUNTY2620
CUMBERLAND COUNTY1352
DANVILLE CITY2140
DICKENSON COUNTY600
DINWIDDIE COUNTY2120
EMPORIA CITY930
ESSEX COUNTY910
FAIRFAX CITY1220
FAIRFAX COUNTY55018814
FALLS CHURCH CITY1280
FAUQUIER COUNTY4120
FLOYD COUNTY900
FLUVANNA COUNTY2330
FRANKLIN CITY842
FRANKLIN COUNTY2022
FREDERICK COUNTY5494
FREDERICKSBURG CITY1420
GALAX CITY300
GILES COUNTY300
GLOUCESTER COUNTY2420
GOOCHLAND COUNTY2320
GRAYSON COUNTY1310
GREENE COUNTY1610
GREENSVILLE COUNTY700
HALIFAX COUNTY2364
HAMPTON CITY131378
HANOVER COUNTY73100
HARRISONBURG CITY1882
HENRICO COUNTY2457534
HENRY COUNTY2944
HIGHLAND COUNTY200
HOPEWELL CITY3374
ISLE OF WIGHT COUNTY2710
JAMES CITY COUNTY3110
KING AND QUEEN COUNTY400
KING GEORGE COUNTY1700
KING WILLIAM COUNTY1740
LANCASTER COUNTY830
LEE COUNTY38142
LEXINGTON CITY830
LOUDOUN COUNTY158316
LOUISA COUNTY2610
LUNENBURG COUNTY1350
LYNCHBURG CITY75294
MADISON COUNTY1020
MANASSAS CITY2332
MANASSAS PARK CITY410
MARTINSVILLE CITY900
MATHEWS COUNTY522
MECKLENBURG COUNTY2530
MIDDLESEX COUNTY600
MONTGOMERY COUNTY4750
NELSON COUNTY1554
NEW KENT COUNTY1810
NEWPORT NEWS CITY88120
NORFOLK CITY111150
NORTHAMPTON COUNTY832
NORTHUMBERLAND COUNTY810
NOTTOWAY COUNTY1084
ORANGE COUNTY2940
PAGE COUNTY2330
PATRICK COUNTY1010
PETERSBURG CITY3160
PITTSYLVANIA COUNTY6292
POQUOSON CITY800
PORTSMOUTH CITY80100
POWHATAN COUNTY2660
PRINCE EDWARD COUNTY2050
PRINCE GEORGE COUNTY2452
PRINCE WILLIAM COUNTY178410
PULASKI COUNTY1620
RADFORD CITY810
RAPPAHANNOCK COUNTY610
RICHMOND CITY159482
RICHMOND COUNTY563810
ROANOKE CITY4000
ROANOKE COUNTY5770
ROCKBRIDGE COUNTY1720
ROCKINGHAM COUNTY3470
RUSSELL COUNTY1900
SALEM CITY1110
SCOTT COUNTY1740
SHENANDOAH COUNTY2240
SMYTH COUNTY1700
SOUTHAMPTON COUNTY1860
SPOTSYLVANIA COUNTY86224
STAFFORD COUNTY92212
STAUNTON CITY1500
SUFFOLK CITY5152
SURRY COUNTY820
SUSSEX COUNTY1122
TAZEWELL COUNTY2100
VIRGINIA BEACH CITY244252
WARREN COUNTY2510
WASHINGTON COUNTY3552
WAYNESBORO CITY1300
WESTMORELAND COUNTY1920
WILLIAMSBURG CITY1580
WINCHESTER CITY1120
WISE COUNTY2450
WYTHE COUNTY2120
YORK COUNTY2600
Grand Total52901200208