There are precise instructions on how to fill out an absentee ballot, from the color ink to use — black or blue but definitely not red — to how to choose candidates by filling the oval without checks or X marks.

That doesn’t mean every voter follows the guidelines.

In most cases, the markings are close enough for Georgia’s machines to scan and count. In others, a bipartisan team of humans examined ballots and made a ruling.

After ballot images were classified as public records, The Atlanta Journal-Constitution obtained complete scans of 145,000 Fulton County absentee ballots cast in November’s election for a $240 records retrieval fee to the county. The ballots show the different ways voters filled out the forms, how the computers read them and how a bipartisan group of humans counted them.

Here are some excerpts of ballots with imperfect marks and their rulings.

Ambiguous vote

One voter filled in the bubble for Republican David Perdue completely but also had a smaller mark for his Democratic opponent, Jon Ossoff.

An extra mark in the U.S. Senate race was called ambiguous. A bipartisan ballot review team decided to count this ballot for Republican David Perdue.
icon to expand image

The vote was initially flagged as ambiguous but counted for Perdue after a review.

A bipartisan team of humans ruled the ambiguous mark as a vote for David Perdue.
icon to expand image

PDF: View the complete ballot and ruling

Overvote

A Democratic-leaning voter filled in the bubble for all eight Democrats running in the U.S. Senate special election for the seat Republican Kelly Loeffler held at the time.

A voter made multiple selections in the U.S. Senate special election.
icon to expand image

The votes were flagged as overvotes and none of them counted.

The votes were ruled as over votes and not counted.
icon to expand image

PDF: View the complete ballot and ruling

Blank vote

A voter used check marks to select candidates. In most races, the ballot scanners picked up enough markings to judge the voter’s intent. But in the 6th Congressional District race, the check mark appeared to miss most of the bubble. The computer scanner labeled it blank.

A voter used check marks to fill in a ballot and appeared to miss nearly all of a bubble in the 6th Congressional District election.
icon to expand image

The ballot was examined by humans and ruled as a vote for Republican Karen Handel.

A bipartisan team of humans ruled that this was a vote for Karen Handel.
icon to expand image

PDF: View the complete ballot and ruling

Added write-ins

One voter added the name of the candidates to the name for write-ins. The voter also bubbled in two candidates for the U.S. Senate special election and added one of those names to the write-in line.

One voter added the names of candidates chosen in the write-in field and selected multiple candidates in the U.S. Senate special election.
icon to expand image

The U.S. Senate special election votes were ruled overvotes and not counted.

The votes were ruled as over votes and not counted.
icon to expand image

PDF: View the complete ballot and ruling

X marks

A voter used X’s to mark preferred candidates.

One voter used X marks to fill out a ballot.
icon to expand image

The scanning machine was able to read the marks and count the votes, and no human review was required.

The computer scanner was able to read the ballot.
icon to expand image

PDF: View the complete ballot and ruling

Write-in

A voter filled in former U.S. Secretary of State Condoleezza Rice as the choice for president.

A voter wrote in Condoleezza Rice for president.
icon to expand image

The ballot was ruled as a write-in vote, but Georgia law only counts write-in votes for candidates who file paperwork in advance. Rice was not a certified write-in candidate.

The ballot was ruled as a write-in vote.
icon to expand image

PDF: View the complete ballot and ruling