Most nonprofit comms teams treat Giving Tuesday like a slightly bigger version of their monthly newsletter. It isn't. On that one day you're often pushing a year's worth of outbound message volume through a single sender in a window that's realistically six or seven hours wide. If you don't plan for throughput — the rate at which messages actually leave the platform and reach carriers — your last third of donors get the appeal at 11:52 PM, or worse, they don't get it at all because the send spilled into enforced quiet hours and got held until the next morning, when the match is gone.
Full disclosure: I work for Ready, an SMS platform. This isn't a pitch to switch tools. It's the capacity-planning walkthrough I wish more nonprofits ran before the day, because the math is knowable in advance and the failure mode is entirely avoidable.
The problem in one sentence
A large list plus a fixed sending window plus a hard quiet-hours boundary equals a throughput constraint. You need to know your required segments-per-second before you schedule anything, or you're gambling that the platform's default rate happens to be fast enough.
Let's put numbers on it.
Step one: count segments, not contacts
Everyone plans by contact count ("we're texting 80,000 donors"). Carriers and platforms bill and throttle by segment, and your appeal is almost never one segment.
A plain-text SMS is 160 GSM-7 characters. Go over that and it splits into multipart segments of 153 characters each. The moment you add a single emoji — a ❤️ in your appeal, say — the whole message switches to unicode encoding and the limit collapses to 70 characters per segment (67 for multipart).
Here's a realistic Giving Tuesday message:
"It's Giving Tuesday ❤️ Every gift is DOUBLED until midnight. Your $50 becomes $100 for families in [City]. Give now: give.example.org/gt Reply STOP to opt out"
That's roughly 165 characters with an emoji, so it's unicode-encoded. 165 characters at 67 chars/multipart segment = 3 segments per recipient.
So your "80,000 donor" campaign is actually:
- 80,000 contacts × 3 segments = 240,000 segments
That number — 240,000 — is what your window has to swallow, not 80,000.
Step two: define the real window
You'd think the window is "12:00 AM to 11:59 PM." It isn't, for two reasons.
- Nobody donates at 3 AM. Practically, your effective giving window is something like 7 AM to 9 PM in the recipient's local time.
- Quiet-hours enforcement clips both ends. On Ready, sends are held outside permitted local hours per the recipient's area — a TCPA exposure reducer. TCPA quiet hours are 8 AM to 9 PM local. So messages queued for a contact at 9:15 PM local don't go out; they wait. If your blast is still draining at 8:50 PM Pacific, a chunk of your West Coast donors get held until the next morning.
For a single-timezone list, call your usable window 8 AM to 8:30 PM local — about 12 hours if you want a safety buffer before the 9 PM cutoff. But you don't want to use all 12 hours, because a donor who gets the appeal at 8 PM has almost no time to act before the match closes. The whole point of Giving Tuesday urgency is that the ask lands while there's still runway.
So the planning window most teams actually want is more like 6 hours — say, send starts 10 AM, everyone has the appeal by 4 PM, leaving the afternoon and evening for follow-ups and the "last call" text.
Step three: the segments-per-second math
Now it's arithmetic.
- 240,000 segments ÷ 6 hours = 40,000 segments/hour
- 40,000 ÷ 3,600 seconds = ~11.1 segments per second
That's your required sustained throughput. If your registered 10DLC sender clears fewer segments per second than that, your send will run past your intended window.
Here's the same table at a few list sizes, all assuming a 3-segment message and a 6-hour target window:
| Contacts | Segments (×3) | Segments/hour | Required segments/sec |
|---|---|---|---|
| 20,000 | 60,000 | 10,000 | ~2.8 |
| 50,000 | 150,000 | 25,000 | ~6.9 |
| 80,000 | 240,000 | 40,000 | ~11.1 |
| 150,000 | 450,000 | 75,000 | ~20.8 |
| 250,000 | 750,000 | 125,000 | ~34.7 |
The lever most people forget: cut the message to one segment and your throughput requirement drops by two-thirds. Drop the emoji, tighten the copy under 160 GSM-7 characters, and that 80,000-contact send becomes 80,000 segments — needing ~3.7 segments/sec instead of 11.1. It also cuts your bill by two-thirds. More on that below.
Step four: throughput is a 10DLC problem, register early
Segments-per-second isn't just a platform setting — it's gated by your 10DLC trust score and daily throughput limits, which are carrier-assigned. A standard registered brand and campaign clears most nonprofit volumes fine, but if you're in the 150,000+ contact range, you may bump the ceiling.
Two things follow from that:
- Register your brand and campaign weeks ahead, not the Friday before. Full A2P 10DLC runs through Ready in-app — roughly ~$10/mo per brand and ~$20/mo per campaign in carrier fees, with approval typically 1–3 days. Unregistered traffic gets carrier-filtered, so a "we'll just send it" plan on an unregistered number means your Giving Tuesday appeal quietly dies in a spam filter. If you're new to this, the 10DLC explainer walks through it.
- Consider Brand Vetting only if you're genuinely high-volume. External vetting is a one-time $40 (Standard) or $100 (Enhanced) and raises your trust score and daily throughput limits. For a 20,000-contact list, skip it. For a 250,000-contact single-day blast where you're fighting the throughput ceiling, it can be the difference between clearing your window and not.
If your nonprofit runs multiple chapters or programs on separate sub-accounts, be deliberate about how many senders you register — consolidating or splitting affects both throughput and deliverability. There's a whole tradeoff writeup in when to consolidate sub-account 10DLC registrations.
Step five: budget the send with real pricing
Ready's per-segment pricing on the Standard tier is $0.02/segment plus a $0.0045 carrier pass-through, billed transparently and separately — so $0.0245 all-in per segment. Past 50,000 segments in a calendar month, the rate drops automatically to $0.016/segment ($0.0205 all-in). You don't pick that tier or ask for it; it applies once you cross the line.
Giving Tuesday almost certainly pushes you past 50,000 segments for the month in a single day. Watch what that does to the 80,000-contact example:
3-segment message (with emoji), 240,000 segments:
- First 50,000 segments: 50,000 × $0.0245 = $1,225
- Remaining 190,000 segments: 190,000 × $0.0205 = $3,895
- Total: ~$5,120
1-segment message (tight, no emoji), 80,000 segments:
- First 50,000: 50,000 × $0.0245 = $1,225
- Remaining 30,000: 30,000 × $0.0205 = $615
- Total: ~$1,840
Same 80,000 donors reached. The copy discipline saved roughly $3,280 and cut your throughput requirement by two-thirds at the same time. That's the single highest-leverage decision in the whole plan, and it's a copywriting decision, not a technical one.
Billing is prepaid credits via Stripe (1 credit = 1 segment), and there are 2,500 free credits to start with no card — enough to test your exact message and confirm the segment count before you commit the real send. Do that. Send your final copy to your own phone and check how many segments it actually became.
Step six: sequence the day, don't dump it
A few operational moves that separate a clean Giving Tuesday from a chaotic one:
- Scrub litigators and DNC before you send. The standalone TCPA & DNC litigator scrub is $0.005 per contact and auto-suppresses matches. On 80,000 contacts that's $400 to screen out the numbers most likely to turn a mass send into a $500–$1,500-per-text problem. It doesn't make you lawsuit-proof — consent is still your responsibility — but it's cheap insurance for a large blast.
- Confirm opt-outs are handled automatically. Inbound STOP propagates across campaigns on Ready, so a donor who opted out last spring won't get re-messaged today.
- Staff the inbound replies. A 30–50% response rate on an opted-in appeal (a rough industry approximation, not a promise) means thousands of "how do I give?" and "already gave, thank you!" replies landing in your inbox within the hour. Two-way messaging lands those in-app; have humans ready, and consider the optional AI-assisted replies in suggest mode so your team can approve fast rather than type from scratch.
- Reserve a segment budget for the 8 PM last-call text. Don't spend your whole throughput plan on the morning send and leave nothing for the evening reminder, which historically converts hard.
The takeaway
Giving Tuesday is a capacity problem you can solve on a spreadsheet a month in advance:
- Count segments, not contacts — the emoji tax is real.
- Pick a realistic 6-hour window that leaves runway before quiet hours clip the tail.
- Divide segments by seconds to get your required throughput, and register 10DLC early enough that carriers grant it.
- Tighten copy to one segment — it cuts both your bill and your throughput requirement by two-thirds.
- Scrub, sequence, and staff the replies.
Run those five numbers before you schedule anything. If you want to sanity-check the segment count and the volume math against your actual list, you can start free with 2,500 credits and test your exact message, or read more about the platform on the Ready SMS page. The worst version of this day is the one where a great appeal never left the queue.