Skip to main content
Government & Civic
Cross-Platform

How we built a voter-matchmaking app that helps citizens find their ideal candidates

SmarterVote: a quiz app for iOS, Android, and web that closes the gap between uninformed voters and the candidates who actually represent their values.

iOS Android Web AWS Cloud

Before & After

Before
  • Voters struggled to match their personal positions with the right candidates across all races on their ballot
  • No simple tool existed to compare candidate stances simultaneously across local, state, and federal races
  • Down-ballot races — school board, city council, judges — went largely uninformed by most voters
  • Civic tools were clunky, outdated, and desktop-only — not built for how people actually use their phones
  • Researching every candidate's positions independently required hours of effort most voters didn't have
After
  • Cross-platform app available on iOS, Android, and web — voters access it however they prefer
  • Short quiz on key issues surfaces aligned candidates across every race on the ballot
  • Down-ballot races covered with the same depth as top-of-ticket contests
  • AWS cloud infrastructure ensures the app stays up during election-season traffic spikes
  • Voters arrive at the polls informed — including for races they'd never researched before
SmarterVote app — voter quiz interface showing issue-based candidate matching on iOS and Android

The Challenge

Voters want to make informed choices. But researching every candidate in every race takes hours — hours most people don't have in the weeks and days leading up to an election. The result is a predictable pattern: most people only know the top of the ticket. The president. The senator. Maybe the governor.

Down-ballot races — school board, city council, local judges, ballot initiatives — go largely uninformed. These are the offices that most directly affect daily life: the quality of local schools, public safety policy, land use decisions, and the administration of justice in your community. And yet most voters walk into the booth with little to no information about the candidates in those races.

Smarter Vote saw an opportunity to close that gap. The vision was a simple quiz: answer a few questions about where you stand on key issues, and get back a ranked list of candidates who share your positions — across every race on your ballot. The research done for you, in minutes.

The challenge was building something voters would actually use. That meant mobile-first — the majority of Americans access information on their phones, not their desktops. It meant fast — voters aren't going to sit through a 40-question survey. And it meant reliable — the worst time for an app to go down is the evening before election day, when millions of people are doing their final research.

It also had to work across platforms. A civic tool that only runs on iPhone misses half the electorate. SmarterVote needed to be available everywhere: iOS, Android, and the web.

What We Built

Why not just use a website instead of building apps?

A website alone would have covered the web use case, but it would have meant a second-class experience for mobile users — and mobile users are the majority. Native app features like push notifications (for election day reminders), home screen shortcuts, and smoother touch interactions matter when you're building something for civic engagement at scale.

We built SmarterVote using React Native, which let us write a single shared codebase that runs natively on both iOS and Android. The web app was built with Bootstrap and jQuery on a PHP backend — keeping the server layer simple, fast, and easy to maintain during election cycles when reliability is critical. All three platforms — iPhone, Android, and web — pull from the same data layer, so candidate information is consistent everywhere.

How does the quiz matching algorithm work?

The matching logic works by first collecting a voter's stated positions across a set of issue questions. Each answer is weighted and stored. On the candidate side, the platform holds each candidate's documented positions on the same set of issues — sourced from public statements, voting records, and campaign materials.

When the quiz is complete, the app calculates an alignment score for each candidate across every race: the percentage of issues on which the voter's position and the candidate's position agree. Candidates are then ranked by alignment score within each race, so voters immediately see who most closely represents them — not just at the top of the ticket, but for every office on their specific ballot.

The algorithm is intentionally transparent. It doesn't make value judgments about which issues matter more — that's up to the voter. It simply reflects the match between stated positions.

What made AWS the right infrastructure choice?

Election-day traffic is the definition of a spike. On a normal Tuesday in October, SmarterVote might see a handful of sessions. On election day itself — and the 48 hours before — traffic surges by orders of magnitude as voters do last-minute research. An infrastructure that works fine in September can collapse in November.

We deployed SmarterVote on Amazon Lightsail, part of AWS, specifically because it provides the combination of predictable pricing, easy vertical scaling, and the underlying reliability of AWS's global infrastructure. When traffic spikes, the app stays up. When election day is over, costs return to baseline. It's the right tool for a product with highly seasonal, high-stakes usage patterns.

How does a voter use it on election day?

A voter opens the app on their phone — or navigates to the web version — and enters their zip code or selects their state. The app loads the races on their specific ballot. They move through the quiz, tapping their position on each issue: agree, disagree, or neutral. The whole process takes about three to five minutes.

At the end, they see their matched candidates ranked by alignment score for every race on their ballot — from US Senate all the way down to local school board. They can tap any candidate to see exactly which issues drove the match. They can share their results. And they can save them for reference when they're standing in the voting booth.

The result is a voter who shows up informed — not just about the president, but about every race that will appear on their ballot.

SmarterVote app — candidate results screen showing alignment scores across multiple ballot races

Results

iOS + Android
+ Web
All three platforms from a single build
AWS
Cloud
Hosted on Amazon Lightsail for election-season reliability
Election-Ready
Scale
Infrastructure built for election-day traffic spikes
Quiz-Based
Matching
Issue-driven alignment score for every race on the ballot

Project Details

Client
Smarter Vote
Industry
Government & Civic
Platforms
iOS · Android · Web
Technologies
React Native · PHP · Bootstrap · jQuery · Amazon Lightsail (AWS)
Infrastructure
Amazon Web Services (AWS) — Amazon Lightsail
Published
March 2026

Have a civic or government app idea?

We build cross-platform apps that work on iOS, Android, and the web — and infrastructure that holds up when it matters most.

By Rasheid Scarlett, CEO, NetAesthetics