Stories of Scanning Ballots


Humboldt County California has scanned ballots since 2008. They use a county scanner, count images with open-source software, and make copies of the images for candidates and the public to count independently. In 2008 the scan found 197 more ballots than the official machines. When they investigated, the scan was right and official machines were wrong. The County Clerk and Recorder "said that adopting open source software made her life easier and much more pleasant. She found that her constituents appreciated her transparency and commitment to democracy."


In California, six other counties scanned ballots in 2011 and five did in 2012 for a pilot study of auditing. Alameda, Madera, Marin, Merced, Monterey, Napa, San Luis Obispo, Santa Cruz, Ventura and Yolo Counties used their own scanners. Stanislaus rented one. The scans sometimes found discrepancies of a vote from official machines. The number of ballots scanned ranged from 1,000 to 124,000. In Orange County they analyzed 294,000 scans created by the official election software.


Seven Florida counties hired a private company, Clear Ballot, to scan all their ballots in 2016 and will again in 2018. The scans sometimes found discrepancies of 1-2 ballots from official machines. (Bay, Broward (Fort Lauderdale), Columbia, Leon (Tallahassee), Nassau, Putnam, and St. Lucie Counties)


Vermont's Secretary of State hired Clear Ballot to scan all races on ballots in six random towns, in 2014, 2016 and 2018 as a check on official counts. The scans found discrepancies of 1-6 ballots in each town. In the past they had hand-counted two state-wide races in four towns.


Maryland's Secretary of State (or here) hired Clear Ballot in 2016, not to scan, but to analyze scans created by the state's official election machines. These scans were shipped to Boston on hard drives. It cannot find hacks of the images, but it can find hacks and other errors in the analysis of the images. Errors can be as simple as a scratched lens or dirt on a machine causing the machine to see marks where there are none. They found that the analysis of scans omitted 1,960 Baltimore ballots and 10 Harford ballots, and ignored write-ins where the oval was not marked, though Maryland law counts these. Audits cost $275,000 for the 2016 general (10 cents per ballot) and $704,000 for 2018 primary and general.


This history of finding and fixing small discrepancies deters hackers from these locations, and show they can find and correct bigger mistakes when bugs or hackers strike in the future. The scans let officials issue correct results, and give confidence that future hacks can be deterred, and any problems can be corrected in the same way.


Researchers at the University of California in San Diego in 2010 tested another way to scan: a rack of video cameras filming a sheet feeder which displayed each ballot for 2 seconds. The rack can hold video cameras from multiple organizations for improved trust. They wrote software in two weeks which processed the video images into a single copy of each ballot, read the votes on each ballot, and issued counts.


In 2013 these California researchers reported on software which self-adjusts to varying order and races on different ballots, by reading the title and candidates for each office, even if the candidate names rotate in different order on different ballots. They tested it in the 2011-12 California counties mentioned above, with up to 294,000 ballots. The code is available.


The Open Ballot Initiative endorses commercial scanners and public release of image files so the public can check counts. A 2012 paper summarizes research on accuracy of hand-counts.