A church office, a school front desk and an HR team share the same messaging problem. You have a few hundred to a few thousand people who need the same update at the same time: the service moved indoors, early dismissal is at 12:30, the parking lot is closed Monday. Email gets read hours later or not at all. A group chat from someone's personal phone breaks once the list passes a few dozen people, and when it fails you can't see who missed the message.
Texting fixes the reach problem. It also brings carrier rules that a school secretary or church administrator usually hasn't dealt with before. This guide covers the four things that decide whether your texts arrive: consent, list segmentation, quiet hours and 10DLC registration. It also includes the cost math, so you can put a real number in the budget.
Why institutional texting is still "A2P" in the carriers' eyes
A school texting parents feels like a personal message. It isn't one. Software sending the same message to many people from a business number is application-to-person (A2P) traffic, and US carriers require A2P traffic on regular 10-digit numbers to be registered under 10DLC. Unregistered traffic gets filtered. Your nonprofit status, your mission and the fact that parents want the closure alert don't change that.
Registration has two parts. The brand is your organization: legal name, EIN, address, website. The campaign describes what you send and how people opted in. Carriers read the campaign closely. A church that registers "marketing" and then sends prayer-chain updates and event reminders is describing its traffic poorly, and that mismatch is a common reason for rejection. Our guide to 10DLC use case examples by industry shows which use case fits which kind of message.
On Ready, registration happens in the app. There's no setup fee. At submit you pay the first month, $25. After that the monthly cost is $25/mo for registration and $2 per number. Most approvals take 2 to 7 days. If your organization buys its number before registering, you can send on Ready's shared registration at the same per-text rate while your own registration is in review, up to 500 texts a month. Our 10DLC cost breakdown lists every fee.
Consent: where it comes from for each audience
Every audience here has a natural opt-in moment. Use it, and write it down.
| Audience | Where consent usually comes from | Good fit for | What to keep on file |
|---|---|---|---|
| Church members | Connection card, membership form, keyword text-in at a service | Schedule changes, event reminders, prayer-chain updates | The form wording, the date and the signup source |
| Parents and guardians | Enrollment paperwork, a back-to-school form, a parent-portal checkbox | Closures, early dismissal, event and form reminders | The signed or submitted enrollment record |
| Staff and volunteers | Onboarding paperwork with a separate texting checkbox | Shift changes, building alerts, meeting reminders | The onboarding form, dated |
Three rules apply to all three audiences:
- A phone number on file is not consent to text. The number a parent gave for emergencies isn't the same as an agreement to receive event reminders. Add a clear line such as "I agree to receive text messages from [School] about closures, events and reminders. Msg & data rates may apply. Reply STOP to opt out."
- Employees can opt out too. An employee who replies STOP is opted out. If a message is truly required for work, deliver it through a channel your employment policies cover, not by overriding an opt-out.
- Your records are the consent record. Ready records your opt-in attestation for each bulk send and each API send that sets
consent_attested: who sent it, to how many people and when. It does not store each recipient's opt-in time, wording or page. Your connection cards, enrollment system or HR file have to hold that. (A contact who signs up on a Ready-hosted opt-in page is the exception: Ready stores that sign-up, with the time, IP address and exact wording, and support@tryready.com can send you a copy.)
For opt-in wording that carriers approve, see 10DLC opt-in examples and sample messages.
Segment your lists before you send anything
"Everyone" is almost never the right audience. Over-texting is the fastest way to lose people. If a parent of a 2nd grader gets the varsity football bus schedule three weeks in a row, that parent replies STOP. Ready honors the opt-out across every campaign, so that family won't get your snow-day alert either.
Useful segments include:
- Churches: whole congregation, youth parents, volunteers by team (greeters, nursery, worship), small-group leaders, the prayer chain.
- Schools: whole school, by grade, by bus route, by team or club, staff only, substitutes.
- Employers: all staff, by shift, by site, by department, managers only.
Build these as separate lists in your contacts and tag people when they sign up. A district with several schools, or a diocese with several parishes, can give each one its own sub-account with its own numbers and registration. That keeps lists and inboxes separate, so one school's replies never land in another school's inbox. A STOP to any school's number blocks that phone for every school in the district.
Quiet hours and the early-morning closure problem
Ready enforces quiet hours. A send scheduled outside permitted hours for the recipient's area is held and goes out when the window opens. You're charged only when it sends. The TCPA window is commonly cited as 8 AM to 9 PM in the recipient's local time. This protection reduces risk for any organization texting a large list. Campaigns, drip campaigns and automations wait up to 24 hours for the window; a one-to-one or API text is held only if the window opens within 6 hours, otherwise it is refused and must be resent; a one-to-one reply to someone who texted you in the last 24 hours goes out at any hour.
Schools need to plan around one consequence. A 5:45 AM snow-day text will be held, not sent at 5:45 AM. Here's how to work with that:
- Make the closure call the night before when you can, and send by 8 PM.
- Keep an all-hours emergency channel for true emergencies. Many districts already have an emergency notification system through their student information system, and that system should stay in place for this job.
- Use text for the announcements that fit inside the window: delays confirmed after 8 AM, early dismissals, event changes and reminders.
Being clear about this up front is better than finding out on the first snow day.
Writing messages that fit in one segment
Texts are billed per segment, and replies count as well. One segment holds 160 standard characters. Longer messages split into 153-character segments. One emoji drops the limit to 70 characters, or 67 per segment for multipart messages. Ready swaps curly quotes, long dashes and ellipses for plain ones before sending, so text pasted from a bulletin won't increase your segment count.
A one-segment closure notice (139 characters):
Lincoln Elementary: School is closed Tue 1/14 due to ice. All after-school activities canceled. Updates at example.edu. Reply STOP to opt out
The same notice with a snowflake emoji and a friendlier sign-off can easily reach 3 segments. That roughly triples the cost of the send. The AI message writer can shorten a draft, and the spam-filter check flags wording that carriers tend to block.
Worked example: what a school's month of texting costs
Assumptions: a school with 600 parent contacts sends 4 whole-school messages a month, each 2 segments long, and receives about 150 one-segment replies.
- Outbound: 600 × 4 × 2 = 4,800 segments
- Inbound: 150 segments
- Total: 4,950 segments × ($0.0075 + $0.0045 carrier fee)
- The Ready rate portion: 4,950 × $0.0075 = $37, plus 4,950 × $0.0045 in carrier fees
- Registration: $25/mo for registration and $2/mo per number
Ready's all-in prices per segment include the carrier fee but not screening: Scrub lists and Number validation, the two switches in Settings under Compliance, each add $0.003 per segment when switched on, shown as screening on your bill, and both are off by default. Unless you turn the opt-out footer off, the first text to each contact, and one again from time to time, also gets "Reply STOP to opt out" and your business name if the message does not already have them, so a text close to the segment limit can bill one more segment.
Most schools texting their own enrolled families leave scrubbing and landline validation off. An organization importing an older contact list may want them on.
Throughput: a fresh standard campaign typically sends about 1 to 4 segments per second. At an assumed 2 per second, one 1,200-segment send takes about 10 minutes to go out. The lowest T-Mobile daily cap is roughly 2,000 messages, so a single 600-family send fits comfortably. A church with 5,000 members sending long messages could hit that cap. That's when brand vetting at $79 Standard or $179 Enhanced, one-time, can pay off.
Per segment, raw carrier APIs like Twilio cost less than our Standard rate. What Ready adds is in-app registration, contact lists and segments, a reply inbox, quiet-hours holds and opt-out handling, all without a developer. If you have an engineer and a free week, building on a raw API works fine.
A note for churches on giving texts
Schedule changes and event reminders are standard traffic. Donation appeals and giving campaigns count as fundraising under our acceptable use policy. Before your first giving text, email support@tryready.com and wait for our reply. Signing up and registering is not enough on its own for that kind of message.
For teams sending from their own software
If your school app, church management system or HR platform should send these texts itself, use POST /v1/messages/bulk. It accepts up to 100 recipients per call, with consent_attested set to true. Larger lists go out in batches of 100. Send an Idempotency-Key header so a retried request doesn't text parents twice. Opted-out numbers are refused up front and not charged. The bulk messages docs and the quickstart cover the details.
The practical takeaway
Get consent at the moment people already hand you their information: the connection card, the enrollment form, the onboarding packet. Keep that record in your own system. Split your lists so each person only gets what applies to them. Plan closures around quiet hours. Register before you send at volume, and allow 2 to 7 days for approval.
If you want to try it, create an account, add a card and send your first 20 one-to-one texts free to a few staff members, before you pay for registration. That shows you how messages look on a phone and how replies come back, before the first real announcement goes out to the whole list.