All pages
Powered by GitBook
1 of 6

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Tally Reports

Basic Structure

The basic structure of the tally reports printed from VxAdmin is similar to the polls opened and closed reports printed from VxScan.

Full election tally report

Filtered and Grouped Reports

In addition to the full election report, VxAdmin exports reports filtered or grouped by the following dimensions:

  • Ballot Style

  • Precinct

  • Voting Method

  • Scanner

  • Batch

  • District (filtering only)

When a report is grouped, the report is broken up into multiple sections each with their own filter. For example, if you were to group by "Voting Method," the resulting report would have a section filtered for precinct ballots only and a section filtered for absentee ballots only:

First part of a grouped tally report
Second part of a grouped tally report

The filter for a given report section is indicated in the title of the report. If the report has more than one filter applied to it, the full details of the filter will be specified in a box below the title:

Tally report with a complex filter

Note that filters and groups can be combined.

Manual Results

If manual results have been added, they will be included in the tally report alongside the scanned results. For each contest, there will be three results columns: "scanned", "manual", and "total".

Tally report with manual results

Write-In Candidate Aggregation

In order to prevent a long list of write-in candidates from making contest results difficult to read, VxAdmin tally reports consolidate write-in candidates if they're not relevant to the contest outcome. Relevant write-ins are included as "<Name> (Write-In)". Irrelevant write-ins are consolidated as "Write-In" or, if there are relevant write-ins in the list, "Other Write-In". Unadjudicated write-ins are always consolidated as "Unadjudicated Write-In."

A write-in is deemed relevant if it must be listed for the reader to determine the winner(s) of the contest. In the middle example below, the single adjudicated write-in is consolidated because Natalie Portman is the winner regardless of the identities of the write-ins. In the last example, however, there are 31 adjudicated write-ins so it's possible that a write-in got more votes than Natalie Portman. The report then enumerates the write-ins with the highest vote totals until the "Other Write-In" count is smaller than the counts for all winners.

Before adjudication
Adjudication just started
Adjudication almost finished

CSV Exports

Both tally reports and ballot count reports can be exported in comma-separated values (CSV) format.

Tally Report CSV Structure

In the CSV tally report, the vote total for each candidate or contest option is listed in a single row. In addition, there are rows for overvote and undervote totals for a contest.

For example, here is an excerpt of a tally report including the results for one contest:

Precinct,Precinct ID,Contest,Contest ID,Selection,Selection ID,Total Votes
West Lincoln,20,Mayor,mayor,Sherlock Holmes,sherlock-holmes,0
West Lincoln,20,Mayor,mayor,Thomas Edison,thomas-edison,0
West Lincoln,20,Mayor,mayor,Write-In,write-in,0
West Lincoln,20,Mayor,mayor,Overvotes,overvotes,0
West Lincoln,20,Mayor,mayor,Undervotes,undervotes,0
Formatted version of the above CSV excerpt

The "Precinct" and "Precinct ID" columns are metadata fields that are included because this example export groups results by precinct. The other fields are standard fields:

Header
Values

Contest

The title of the contest

Contest ID

The internal identifier of the contest in the election definition

Selection

The candidate name for candidate contests, the option label for yes-no contests, or "Overvotes" or "Undervotes"

Selection ID

The internal identifier of the contest option, or "overvotes" or "undervotes"

Total Votes

The vote count for the selection

If manual results were entered, two additional columns will be added - "Scanned Votes" and "Manual Votes." These columns denote which votes for each selection came from the scanners vs manual entry.

The results of write-in adjudication are always included in the CSV exports. All write-in candidates will appear with their adjudicated name and a UUID assigned by VxAdmin. Unadjudicated write-in candidates will appear as "Unadjudicated Write-In" with the ID "write-in". Unlike in the printed reports, write-in candidates are never consolidated.

Ballot Count Report CSV Structure

The ballot count report CSV is the same as the table presented in the printed ballot count reports. For example:

Precinct,Precinct ID,Voting Method,Total
West Lincoln,20,Precinct,0
West Lincoln,20,Absentee,0
East Lincoln,21,Precinct,0
East Lincoln,21,Absentee,0
South Lincoln,22,Precinct,0
South Lincoln,22,Absentee,0
North Lincoln,23,Precinct,0
North Lincoln,23,Absentee,0
Formatted version of the above CSV excerpt

The "Precinct", "Precinct ID" and "Voting Method" columns are metadata fields that are included because this example export groups results by precinct and voting method. The "Total" field is a standard field on all ballot count CSV exports, but other ballot or sheet count fields may appear depending on the election and loaded results:

Header
Values

Manual

The ballot count of manually entered results.

Scanned

The count of all ballots loaded as cast vote records. The field appears if there are manual ballots or if the election is multi-sheet. In a multi-sheet election, this is the count of the first sheet.

Scanned Sheet {N}

The count of a subsequent ballot sheet. The count of the second sheet of all ballots would be "Scanned Sheet 2".

Total

The total ballot count.

Shared Metadata Structure

Any filters or groupings which apply to each row will be indicated in the row itself by metadata columns. For example, in the example export above, the "Precinct" column lists which precinct group each row represents.

If a row is filtered by a single attribute value (e.g. represents one precinct rather than multiple precincts) then the following basic metadata fields are used:

Header
Value

Precinct

The name of the precinct

Precinct ID

The identifier of the precinct from the election definition

Party

The short name of the party e.g. "Republican". Included by default if the ballot style is included, in a primary.

Party ID

The identifier of the party from the election definition

Ballot Style ID

The identifier of the ballot style

Voting Method

"Absentee", "Precinct", or "Provisional"

Scanner ID

The serial number of the scanner. Included by default if the batch is included.

Batch

The label of the scanned batch

Batch ID

The scanner-assigned UUID of the scanned batch

If a row is filtered by multiple attribute values, the following columns may be used:

Header
Value

Included Precincts

The precinct identifiers separated by commas

Included Parties

The party identifiers separated by commas

Included Ballot Styles

The ballot style identifiers separated by commas

Included Voting Methods

The voting method labels ("Precinct", "Absentee", or "Provisional") separated by commas

Included Scanners

The scanner serial numbers separated by commas

Included Batches

The batch identifiers separated by commas

In cases as above, where a row value includes comma-separated values, those values will be wrapped in quotation marks per typical CSV formatting in order to allow consumers to properly differentiate columns.

VxAdmin Results Exports

VxAdmin supports a variety of results exports.

Tally reports contain contest results for the full election or a specific subset of ballots. They can be printed directly from VxAdmin, exported as PDFs, or exported in CSV format. In addition, full election results can be exported as an Election Results Reporting CDF JSON file.

Ballot count reports include only ballot counts, without contest results. They can also be printed directly from VxAdmin, exported as PDFs, or exported in CSV format.

The write-in adjudication report acts as a summary of all write-in adjudication activity or as a "scatter report." The tally reports consolidates write-in candidates whose vote totals are too small to affect the contest outcomes. The counts for those write-in candidates are available in the write-in adjudication report. The write-in adjudication report may be printed directly from VxAdmin or exported as a PDF.

For all VxAdmin reports, the report is either "Official" or "Unofficial." If the report is exported before the results are marked as official in the application, the results are "Unofficial." If the report is exported after the results are marked as official in the application, the results are "Official." All visual reports have "Official" or "Unofficial" included in the title and all exported files will have "official" or "unofficial" included in the filename.

Ballot Count Reports

Ballot count reports contain ballot and ballot sheet counts, not contest results.

If there are multi-sheet ballots in the election, the sheet counts (e.g. "Sheet 1", "Sheet 2") can be added to the report in the ballot count report builder by selecting "Sheet" as a Report By dimension. The total ballot count is always defined as the first sheet count.

If there are manual results, the manual ballot count will always be displayed separately from the scanned ballot count, and the total of the two will also be displayed.

When grouping is applied in a ballot count report, each group corresponds to a row in the table. In the following example, the ballot counts are grouped by both precinct and voting method:

Ballot count report

The following metadata columns may appear in a ballot count report table in order to specify groupings:

Header
Values

Precinct

The name of the precinct

Ballot Style

The internal identifier of the ballot style

Party

The short name of the party, e.g. "Democrat". Included by default if the ballot style is included, in a primary

Voting Method

"Precinct", "Absentee", or "Provisional"

Scanner ID

The serial number of the scanner. Included by default if the batch is included

Batch

The label for the batch, or "Manual Tallies" for manually entered data

Filters apply to the entire report. Simple filters are shown in the title, while complex filters are listed in a box below the title.

Ballot count report with a complex filter

Write-In Adjudication Report

The write-in adjudication report includes the results of all write-in adjudication organized by contest:

Write-in adjudication contest results

The values in the contest table above are as follows:

Field
Description

Total Write-Ins

The count of all write-ins. If unmarked write-ins are being adjudicated, they will be included in this count

Not Adjudicated

The count of all write-ins that have not been adjudicated in the write-in adjudication interface yet

Official Candidate Counts

The count of all write-ins that have been adjudicated for official candidates in the election definition

Write-In Candidate Counts

The count of all write-ins that have been adjudicated for write-in candidates added at VxAdmin

Invalid

The count of all write-ins that have been marked as invalid

Relationship to Tally Reports

Before adjudication, write-ins are treated as votes for a generic write-in candidate and will appear in tally reports as "Unadjudicated Write-In." After adjudication, the new value will be reflected on tally reports:

  • When adjudicated for an official candidate, the write-in will be added to the official candidate count just as a regular vote for the candidate would be

  • When adjudicated for a write-in candidate, either:

    • The write-in will be individually listed if it is relevant to the results

    • The write-in will appear in the adjudicated write-in bucket if it is not relevant to the results

  • When invalid, the write-in becomes an undervote

Unmarked Write-Ins

Unmarked write-ins behave differently in relationship to the tally results because they cannot be considered a valid vote before adjudication. As a result, they are considered undervotes before adjudication. If an unmarked write-in is adjudicated as invalid, then tally results will not change. If an unmarked write-in is adjudicated for a candidate, the unmarked write-in is no longer an undervote and is added to the vote total for that candidate.

Also note that, because the write-in adjudication report includes unmarked write-ins, the "Unadjudicated Write-In" count on tally reports may be less than the "Not Adjudicated" count on the write-in adjudication report. The initial difference is the count of unmarked write-ins.

CDF ERR Export

The full election tally reports can be exported as JSON Election Results Reporting CDF results. The feature is only available for the full election results and not grouped or filtered results. The export follows the CDF specification without extensions. The CDF fields are used as follows:

CDF Attribute
Usage

ElectionReport.Format

Fixed to "summary-contest"

ElectionReport.IsTest

true or false depending on whether VxAdmin was in test ballot mode

ElectionReport.SequenceStart

Fixed to 1

ElectionReport.SequenceEnd

Fixed to 1

ElectionReport.GeneratedDate

The generated timestamp of the report

ElectionReport.Issuer

The county name

ElectionReport.IssuerAbbreviation

The county identifier formatted as an NCName ID

ElectionReport.VendorApplicationId

"VxAdmin, version <code version>" where code version is the software version of the system e.g. "v4"

ElectionReport.Status

If the election has been marked as official in VxAdmin, "certified", otherwise "unofficial-complete"

Party.@id

The party identifier

Party.Name

The short name of the party e.g. "Libertarian"

Party.Abbreviation

The party abbreviation e.g. "L"

Election.StartDate

The date of the election

Election.EndDate

The date of the election

Election.Name

The title of the election

Election.ElectionScopeId

The state name formatted as an NCName ID

Election.Type

Either "general" or "primary"

BallotCounts.Type

Fixed to "total"

BallotCounts.GpUnitId

The county identifier formatted as an NCName ID

BallotCounts.BallotsCast

The total ballot count for the election

Candidate.@id

The candidate identifier formatted as an NCName ID

Candidate.PartyId

The candidate's party identifier formatted as an NCName ID

Candidate.BallotName

The candidate's name as it appears on the ballot in English

Contest.@id

The contest identifier formatted as an NCName ID

Contest.Name

The contest title

Contest.ElectionDistrictId

The district identifier of the contest's associated district formatted as an NCName ID

ContestSelection.@id

The option identifier formatted as an NCName ID

BallotMeasureSelection.Selection

The option label as it appears on the ballot in English

CandidateSelection.IsWriteIn

true or false depending on whether the candidate is a write-in candidate

VoteCounts.Count

The vote count for the specific contest selection

VoteCounts.Type

Fixed to "total"

VoteCounts.GpUnitId

The district identifier of the contest's associated district formatted as an NCName ID

OtherCounts.Overvotes

The overvote count

OtherCounts.Undervotes

The undervote count

OtherCounts.GpUnitId

The district identifier of the contest's associated district formatted as an NCName ID

GpUnit.@id

The county, state, or district identifier formatted as an NCName ID

GpUnit.Name

The county, state, or district name

GpUnit.Type

"state", "county", or for districts, "other"

GpUnit.ComposingGpUnitIds

  • State: only the county identifier

  • County: all district identifiers

The Election Results Reporting CDF requires that identifiers be in NCName ID format, so all identifiers from the election definition are re-formatted to be compliant. For example, "Sample County" becomes "vx_sample-county".