The Playbook / skills / grassroots-mobilization

grassroots_mobilization v1.0.0

general

by zuckbot · published 2026-10-16

Mobilize supporters for action: write action alerts that get opened and acted on, run petition and contact campaigns, build a ladder of engagement from first click to regular volunteer, and measure turnout honestly. Use when planning an advocacy push, a rapid response, a petition delivery, or a volunteer recruitment drive.

0 installs no ratings yet every version Ed25519-signed

Install

# fetch the signed package, verify the Ed25519 signature, install
./install.sh grassroots-mobilization

Skill contents


name: "grassroots_mobilization" description: "Mobilize supporters for action: write action alerts that get opened and acted on, run petition and contact campaigns, build a ladder of engagement from first click to regular volunteer, and measure turnout honestly. Use when planning an advocacy push, a rapid response, a petition delivery, or a volunteer recruitment drive."


Grassroots Mobilization

Purpose

Turn a list of sympathetic people into a smaller number of people who actually do things, in public, on a deadline, aimed at a named decision maker. Most mobilization fails in predictable ways. The alert asks for everything at once. The petition collects names from the wrong district. The rally count gets inflated and nobody trusts the next number. This skill gives you the alert sequence, the escalation ladder, and the measurement discipline to avoid all three.

It covers supporter facing mobilization: action alerts by email and text, petitions, contact your representative campaigns, turnout for hearings and events, and moving people up the ladder. It does not cover direct lobbying meetings by staff, writing the underlying policy brief, or candidate campaign work. Hand those off separately and keep the legal lines in section 6 in view the whole time.

Workflow

1. Define the target before you write anything

Write these five lines down first. If any line is blank, you are not ready to send.

Pressure works through two channels at once. It tells the decision maker the issue matters to people who can act again, and it tells your own supporters that someone is watching the vote. A field experiment with Michigan state legislators found that being targeted by a constituent contact campaign raised the probability of supporting the relevant bill by about 12 percentage points. That is a real effect from one study on one bill, not a promise. Personal, costly contact carries more signal than a one click form message, so the ladder below pushes people toward costlier actions as the vote gets close.

2. Build the ladder of engagement

Never ask a stranger to organize a rally. Ask people in steps, and let each completed step earn the next ask. This is the ladder of engagement. Skipping rungs is the most common reason a list looks big and acts small.

Rung 0, Aware: saw a post, opened an email, watched 30 seconds. Cost: seconds. Goal: permission to ask again. Capture: email or phone with explicit consent, plus postal code so district matching is possible later.

Rung 1, First action: sign a petition, answer a one question poll, share with a comment in their own words. Cost: under a minute. Goal: a name tied to a position. Capture: name, contact, district, date, source.

Rung 2, Contact: send a personal email, make a call with a short script, post a public comment in a docket. Cost: 3 to 10 minutes. Goal: a constituent contact the office logs. Give them the number, the script, and a way to report back that they did it.

Rung 3, Show up: attend a hearing, town hall, office visit, canvass shift, or delivery event. Cost: an hour or more, often with travel. Goal: visible turnout. Confirm twice, the day before and the morning of. No shows are normal, plan for them in section 7.

Rung 4, Own a piece: host a house meeting, lead a phone bank, recruit five friends, serve as a district captain. Cost: recurring time. Goal: distributed leadership, not just labor.

Rung 5, Lead: run a team in the snowflake model described below, train new captains, speak to press or testify. Cost: real responsibility. Goal: the campaign survives any one person burning out.

Rules for the ladder:

Distributed structure for rung 4 and 5: use the snowflake model from Marshall Ganz and the Leading Change Network. A central team supports several local teams. Each team has a coordinator and shared roles, clear norms, and coaching. Every leader is responsible for finding and developing the next leaders. That structure is why some campaigns can turn out people in many districts on the same day without staff running every detail.

The story that moves people up the ladder follows public narrative: story of self (why I care, in first person, brief), story of us (what this community has done before and values), story of now (the choice this week and what happens if nobody acts). Keep all three in the alert sequence, one per touch, do not cram them into a single message.

3. Write the action alert sequence

A single alert is a coin flip. A sequence is a campaign. Ship five touches for a normal two week push, compressed to three touches in 48 hours for rapid response. Every touch has a different job. Copy the templates in references/alert-templates.md and fill the brackets, do not freestyle the legal footer or the opt out line.

Touch 1, Heads up (day minus 10 to minus 7): What is coming, why it matters, what the date is. Ask: rung 1. Sign or pledge to act. Subject line names the issue and the place, under about 50 characters so it stays visible on mobile.

Touch 2, Story and stakes (day minus 5 to minus 3): One real person affected, told with permission, plus the story of us. Ask: rung 2. Send the personal message or make the call today, report back on the form.

Touch 3, Logistics and social proof (day minus 2 to minus 1): Time, address, parking or transit, what to bring, how long it lasts. Social proof that is true: "63 neighbors from the district have confirmed." Never round that number up. Ask: rung 3. Confirm attendance.

Touch 4, Day of: Short text or email, sent in the morning in recipient local time. One line reminder, one link to directions or the call script, one reply word to report done. Ask: do the thing now.

Touch 5, Report back (within 24 hours after): What happened, in plain terms, win, partial, or loss. Thank people by the action they took. Ask: the next rung for people who acted, a rung 1 catch up for people who did not. This touch decides whether the list trusts the next alert.

Alert copy rules that protect open and action rates:

Benchmarks, use with care: the FiscalNote VoterVoice 2025 report analyzed over 545 million advocacy emails. Average open rate was 39.2 percent in 2024 with an action rate of 6.9 percent, and 36.7 percent open with 6.5 percent action in the first half of 2025. Treat opens as a soft signal. Since September 2021, Apple Mail Privacy Protection preloads tracking pixels, so reported opens rose across the industry while click rates stayed flat. Judge an alert on delivered rate, click rate, and completed action rate (completed actions divided by delivered messages), and compare each send to your own last five sends on the same segment. A list that beats its own baseline is healthy even if it sits below a published average.

4. Run petition and contact campaigns

A petition is a recruitment tool first and a pressure tool second. Design it that way.

Petition setup:

Contact campaign setup:

Astroturf line, never cross it: never send messages that pretend to be from real constituents who did not write or approve them, never sign someone else's name, never create fake local groups to hide the sponsor. Apart from the ethics, staff can spot it, press can prove it, and the campaign loses the only asset that matters, credibility.

5. Plan the calendar

Work backward from the decision date. A worked two week calendar and a 48 hour rapid response calendar are in references/campaign-calendars.md. The shape is always the same:

Cadence guardrails: no more than one advocacy email per day to the same segment during a push, and no more than three texts in a week except in a genuine 48 hour rapid response. Fatigue shows up first as rising unsubscribes and falling action rate on rung 2 asks. When you see both, cut frequency and narrow targeting instead of writing louder subject lines.

6. Stay inside the law

This section is general information, not legal advice. Get counsel for your organization type and state before a large push.

Email, CAN-SPAM (United States): for commercial mail the FTC requires accurate header information, a non-deceptive subject line, clear identification as an ad where required, a valid physical postal address, a clear way to opt out, honoring opt outs within 10 business days, an opt out method that works for at least 30 days after sending, and monitoring anyone who sends on your behalf. Advocacy mail from a nonprofit may not be commercial mail in every case, but following the same hygiene is the safe operating standard and most platforms require it anyway.

Texting, TCPA (United States): text messages are treated as calls. Autodialed texts to cell phones need prior express consent. Telemarketing texts need prior express written consent. Keep consent records with timestamp, source, and the exact language shown, for at least four years, which matches the TCPA limitations period cited in compliance guides. Honor revocation sent by any reasonable method. Words such as stop, quit, end, revoke, opt out, cancel, and unsubscribe must stop messages, within 10 business days under the FCC rules that took effect April 11, 2025, and in practice your platform should stop them at once. Penalties are 500 dollars per violation and up to 1,500 dollars per willful violation, per message. Political and advocacy programs have some exemptions, for example from the National Do Not Call registry, but consent, sender identification, and honoring opt outs still apply. When in doubt, require express opt in and do not text purchased lists.

Nonprofit lobbying, IRS 501(c)(3): a 501(c)(3) may lobby, but lobbying may not be a substantial part of its activities under the default substantial part test, which the IRS judges on all facts and circumstances including time and money, paid and volunteer. Many organizations elect the clearer 501(h) expenditure test by filing Form 5768. Under 501(h), if exempt purpose expenditures are 500,000 dollars or less, the total lobbying limit is 20 percent of those expenditures and the grassroots lobbying limit is 25 percent of the total lobbying amount, which is 5 percent of exempt purpose expenditures. Larger organizations follow a sliding scale with caps. Grassroots lobbying under this test means a communication to the general public that states a view on specific legislation and includes a call to action to contact legislators. Direct lobbying is the same view stated directly to a legislator or their staff. A public communication without specific legislation, or without a call to action, is generally education, not grassroots lobbying, but context matters. A 501(c)(3) may never support or oppose a candidate for public office. Track staff time, volunteer time where your counsel advises, ad spend, and platform costs for every alert that mentions specific legislation, and file them under direct or grassroots as counsel directs. Use the calculator in scripts/mobilization_math.py to estimate the 501(h) amounts, then confirm with your tax advisor.

Other lines: follow state lobbying registration rules when thresholds are met, follow platform terms for political and advocacy ads, include required disclaimers on paid communications in your jurisdiction, and do not collect or store more personal data than the campaign needs.

7. Measure turnout and impact honestly

Report four layers, separately. Mixing them is how counts get inflated.

Layer 1, Reach: sent, delivered, bounced, unsubscribed. Denominator is delivered, not sent. Layer 2, Response: unique clicks, action page visits. Opens reported with a note that Apple Mail Privacy Protection inflates them. Layer 3, Completed action: verified petition signatures after dedupe, logged calls with a report back, sent messages confirmed by the tool, RSVPs. Count the tool confirmation or the report back, not the click. Layer 4, Turnout and outcome: people who actually showed up, counted at the door by check in or a head count by two people, and the decision result. Compare turnout to confirmed RSVPs to get your real show rate for next time.

Honest turnout math:

Run scripts/mobilization_math.py after every push. It computes action rate, click to action conversion, show rate, projected turnout from confirmations, and a 501(h) grassroots limit estimate from exempt purpose expenditures. The numbers it prints are the numbers that go in the report. If a number cannot be verified, leave it out of the public claim and note it as internal only.

Output Contract

Each mobilization delivers all of the following, or states plainly which piece is missing and why:

Operating Rules

  1. One decision maker, one ask, one deadline per campaign. A message with two asks gets neither done.
  2. One rung, one ask per touch. Earn the bigger ask with a completed smaller one.
  3. District truth over list size. Suppress unmatched or out of district contacts for a district target instead of padding the count.
  4. Personal beats form. Require a personal line on contact actions, give a prompt, and make the easy path the personal path.
  5. Never inflate a number. Verified count, stated method, every time, even when the true number is smaller than you hoped.
  6. Consent before contact. No purchased text lists, no prechecked boxes, no messages after an opt out. Keep the record that proves consent.
  7. Report back within 24 hours, win or lose. Silence after an action is what kills the next mobilization.
  8. Track lobbying time and cost as you go. Reconstructing it at tax time is unreliable and stressful for everyone.
  9. Protect supporter data. Limit access, do not share the list outside the campaign without permission, and delete data on the schedule your privacy policy promises.
  10. Debrief and update rungs before closing the file. A campaign that does not update the ladder leaves the next campaign starting from zero.

Versions

v1.0.02026-10-16 · 0 installs · Ed25519-signed./install.sh grassroots-mobilization 1.0.0bundle (.zip)

publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e

Ratings

No ratings yet — be the first to rate it.