//Operations
Dashboard and reporting
Facts checked against official sources · September 9, 2026
The dashboard is the first screen the candidate and campaign manager see. It answers three questions in one glance: how many voters have we actually reached, what needs a decision today, and what should this week be about given how many days are left.
This page describes every card on it as the code renders it, the two drill-down pages behind the numbers (Voters Reached and the Leaderboard), the phase-based Game Plan, and how a candidate should read the whole thing on a Monday morning.
What it is
The dashboard is the landing page for the candidate and campaign manager. Staff, precinct chairs, and volunteers land elsewhere: volunteers and staff on Walks, chairs on their precinct Team page. Every number on it is scoped to the campaign, computed on the server, and cached for between 30 seconds and five minutes depending on how fast it changes.
It has two parts. A dark hero band at the top holds the campaign name and office, the KPI cards, a thin strip of key election dates, and the Game Plan. Below it is a grid of widgets. A Customize button opens a panel where each user toggles widgets on or off; the choice saves instantly and is per user, so a candidate can hide the leaderboard without affecting the manager. Reset to defaults brings everything back.
Archived campaigns still render the dashboard, with an archived badge, so the record of a race survives the race.
The hero: KPIs, key dates, and the Game Plan
The KPI cards are Voters reached (distinct voters touched by any channel, with the percentage of your universe underneath), Coverage (that percentage on its own), and Days to election, a live countdown to midnight on election morning that ticks in hours, minutes, and seconds. Clicking Voters reached opens the detail page. Under the cards, the key-dates strip shows early voting start, the registration deadline, and the mail-ballot deadline when they are known for your election.
The Game Plan is a short list of recommended actions that changes with the number of days left, each linking to the feature that does it. It is the closest thing to a campaign manager in a box for a first-time candidate, and it is deliberately boring: it tells you to register for texting months out because registration takes weeks, and to stop building lists and start knocking when the calendar says so.
| Days out | Phase | What it tells you to do |
|---|---|---|
| No election date set | Get set up | Set your election date, import your voter list, build your first list |
| More than 120 | Foundation | Import or confirm your voter list, register for SMS (it takes weeks), build base lists, recruit first volunteers |
| 91 to 120 | Build the plan | Segment the universe into lists, draft a canvassing script, generate the first walk, recruit volunteers |
| 61 to 90 | Persuasion | Run block walks to ID voters, send a persuasion text, email your list, create a voter survey |
| 31 to 60 | Ramp up | Intensify canvassing, run a fundraising push, chase mail-ballot voters, recruit more volunteers |
| 15 to 30 | GOTV prep | Build the early-vote chase list, finalize walk turf, schedule volunteers and events, keep texting |
| 1 to 14 | Get out the vote | Build the early-vote chase list, generate election-day turf, send GOTV texts, schedule volunteers |
| Election day | Election day | Run day-of turf, send final GOTV texts, thank your volunteers |
| After the election | Wrap up | Review who you reached, thank your volunteers, plan next steps |
The widgets, one by one
Nine widgets make up the grid. Each fetches its own data on the server, shows an honest empty state that tells you what to set up, and links into the feature it summarizes.
| Widget | What it shows | Notes |
|---|---|---|
| Coverage Heatmap | Your jurisdiction outline on a map with per-precinct outreach intensity by channel (walks, texts, mail, email) and an optional yard-sign layer | Needs your jurisdiction set in Settings; refreshes every 5 minutes |
| Needs Attention | Walks in the next 7 days with no walker, volunteers inactive 14+ days, lists not refreshed in 30+ days, invitations unaccepted after 7 days; each row links to the fix | Shows a checkmark when nothing is pressing |
| Today's Walks | Active walks, walkers online now (live pulse), walkers today, homes visited, surveys captured, today's top walker, and a link to the live map | Refreshes every 30 seconds |
| Upcoming Events | The next 4 published events with time, place, and signups against capacity | Links to each event and to the calendar |
| Activity Summary | Seven-day totals, 14-day sparklines, and change versus the prior week for homes walked, texts, emails, door hangers, survey responses, tags applied, and new volunteers | Rising numbers tint accent; falling numbers tint red |
| Neighborhood Performance | Best and lowest response rates by neighborhood, with visit counts; each row links to the Voters page | Needs at least 3 stops in a neighborhood |
| Volunteer Leaderboard | Top 5 volunteers by homes walked with badge counts | Links to the full board |
| Top Survey Insights | Last 7 days of walk responses as a supports, undecided, opposes bar, plus the most-applied tag this week | Links to Surveys |
| Walker Field Notes Themes | AI-summarized recurring themes from walkers' free-text notes over the last 7 days, with sentiment, mention count, and a sample quote | Computed nightly once 10 or more notes exist; flagged stale after 24 hours |
The Voters Reached page
Click Voters reached and you get the accounting behind the number. A voter counts as reached when a walker marked their household's door as visited (including doors knocked on walks a partner campaign shared with you), or when a text, email, or print piece addressed to them reached sent, delivered, opened, or responded status. Stale and bounced messages do not count.
The page shows four stat cards (total reached, door knock, text, email), a reach-by-channel donut that includes mail, a 60-day chart of daily touches per channel, and a table of the 2,000 most recently reached voters with party, last touch, channels, and touch count. The channel totals are computed separately from the table, so they are exact even when the table is capped, and a voter reached by three channels counts once in the total.
The Leaderboard page
The Leaderboard ranks volunteers by doors knocked and shows responses recorded and yard signs credited beside each name. Badges are earned at thresholds: First Steps at one door, Star Walker at 10, Half Century at 50, Centurion at 100, Iron Walker at 250, Legend at 500; Conversation Starter, Listener, and Field Whisperer at 1, 25, and 100 responses. Logging a local issue into Pulse also earns credit, weighted at twice a door knock.
Volunteers control their own display: full name, first initial and last name, an alias, or hidden, and they can opt out of the board entirely. Badges are visible to staff and to the volunteer who earned them; other volunteers see rank and counts only. The board is readable by every member of the campaign, including volunteers, because the point is that people see it.
How a candidate reads it each week
City council, Monday 8 a.m., 44 days out. The hero says 3,420 voters reached, 15.7 percent of a 21,800 universe, and the Game Plan reads Ramp up. Activity Summary shows 410 homes walked against 290 the prior week and 1,900 texts. Needs Attention lists two Saturday walks with no walker and four invitations unaccepted, so the first two calls of the week are to volunteers. Survey insights show 61 percent supports and 27 percent undecided across 180 responses; the undecided become this week's persuasion text.
School board trustee, 12 days out. Coverage sits at 22 percent, the heatmap shows the north precincts dark, and Neighborhood Performance puts Meadow Creek at a 48 percent response rate against 19 percent in the apartments along the highway. The manager generates election-day turf for the north side only and moves two walkers off the apartments. Today's Walks confirms three walkers online by 10 a.m., and the live map shows where.
County party, 80 days out. The chair opens the Leaderboard each week to thank the top three walkers by name at the Thursday meeting, and notices from Needs Attention that one precinct's volunteers have been inactive for 14 days. Field Notes Themes, computed overnight from 130 notes, shows drainage complaints in one subdivision as the top negative theme, which becomes a Pulse issue to campaign on.
Why it matters
Local campaigns fail quietly. Nobody notices that the walks stopped, that the new volunteers never accepted their invitations, or that coverage plateaued at 12 percent until the week before the election. The dashboard makes those failures loud on a Monday morning while there is still time to fix them, and it does so without anyone building a report.
The numbers it foregrounds are the ones that decide local races. How many votes it takes to win explains why coverage of your universe, not raw enthusiasm, is the metric; the door-knocking guide explains why response rate by neighborhood tells you where to send the next walker. The leaderboard and the precinct chair model exist because recognition is the cheapest volunteer retention tool there is.
What it does not do
The dashboard is a screen you open, not a reporting suite. Its limits, plainly.
- Only the candidate and campaign manager see it. Staff, chairs, and volunteers are routed to their own pages, though the Leaderboard is open to everyone on the campaign.
- Customize controls visibility only. There is no reordering, resizing, or per-widget configuration.
- The heatmap needs your jurisdiction boundary loaded; if it is missing, the widget says so and points to Settings. Cell intensity depends on the geographies stamped on your voters, so a district-level race may see the outline with sparse cells.
- Field notes themes need at least 10 notes in the last seven days and are computed once a night, never live. A quiet week shows the empty state.
- Widgets are cached for 30 seconds to five minutes, so a door knocked a minute ago may not show yet. The live walks map is the real-time view.
- The Voters Reached table caps at 2,000 rows; the totals and charts do not.
- There is no PDF export, scheduled email digest, or shareable public view of the dashboard.
- Fundraising totals are not on the dashboard; they live on the Fundraising pages.
Works with
Every widget summarizes another feature. Today's Walks, coverage, and neighborhood performance come from block walking; the leaderboard and Needs Attention from volunteer coordination; Upcoming Events from events; survey insights and field-note themes from scripts and surveys; the sign layer from yard signs and field assets. Reached counts include SMS outreach and email outreach, and Pulse issues feed from opposition and media monitoring.
Frequently asked questions
Who can see the dashboard?
The candidate and the campaign manager. Staff and volunteers land on Walks, and precinct chairs land on their precinct's Team page. The Leaderboard page is the exception: every member of the campaign can open it, with privacy controls on how each volunteer's name appears.
What counts as a voter reached?
A distinct voter whose household door was marked visited on a walk, or who received a text, email, or print piece that reached sent, delivered, opened, or responded status. Each voter counts once no matter how many channels touched them, and the sparkline dates each voter by the first touch.
Why does my coverage say zero?
Either no outreach has been recorded yet, or the universe is empty because no voter list has been imported. Coverage is voters reached divided by the campaign's universe, so import your file first, then walk or send; the number updates within a few minutes.
Can I customize what I see?
Yes. The Customize button opens a panel listing every widget by section with a one-line description; untick any to hide it. Choices save automatically and are personal to you on that campaign, so the candidate and the manager can each keep a different layout.
How current are the numbers?
Most widgets cache for two minutes, Today's Walks for 30 seconds, and the heatmap for five. The Days to election countdown ticks live. Field notes themes are computed once a night and carry an updated-ago label with a stale flag after 24 hours.
Do volunteers see each other's names on the leaderboard?
Only as each volunteer chooses. Every volunteer picks a display mode (full name, first initial and last name, an alias, or hidden) and can opt out of the board. Badges show to staff and to the volunteer who earned them.
Know where the race stands every Monday.
Keep reading