Your CRM already holds the list: past clients, open-house sign-ins, web leads, sellers who answered a postcard. The hard part is getting a text to 1,500 of them without carrier filtering, a TCPA demand letter, or an agent replying from a personal cell where the conversation vanishes from the record.
This guide covers how texting connects to the CRM you already use, what has to be in place before a mass send, the cost of a send, and how to pair texting with calls. We make Ready, so we'll say where it fits and where it doesn't.
Start with the list you're allowed to text
Real estate texting fails most often because of who is on the list, not because of the software.
- Text: people who opted in (web forms with SMS consent language, open-house sign-ins that say so, past clients who agreed to texts) and people who already replied to you.
- Call or mail: cold lists, skip-traced sellers, expired listings and FSBOs who never asked to hear from you. Scrub these against DNC and litigator lists before anyone dials.
Investors buying skip-traced lists push back on this. A cold seller list costed out as an SMS campaign is how teams end up with filtered numbers and legal exposure, so we won't price one here. Contact cold leads by phone and mail. When a lead replies or opts in, they move to the text list.
How texting connects to your CRM
Follow Up Boss
Follow Up Boss has its own texting and calling. If your team is happy with them, keep them. Adding a second texting layer to a working setup creates two inboxes and two sets of opt-out records.
Ready doesn't have a native Follow Up Boss integration. Teams that want Ready's sending, compliance stack or dialer alongside FUB do one of two things:
- Export a segment from FUB, such as past clients tagged "opted-in SMS," and send it as a campaign in the Ready app.
- Have a developer call our API from their own automation.
The second option looks like this:
POST https://api.tryready.com/v1/messages/bulk
X-API-Key: <key>
Idempotency-Key: 6f1c2a9e-0b7d-4c1e-9a55-2f3d8e7c1b40
{"to": ["+12125550199", "+15559876543"], "body": "Hi, it's Dana from Harbor Realty. Spring market update for your street is ready, want a copy? Reply STOP to opt out.", "consent_attested": true} The bulk endpoint takes at most 100 recipients per call, so a 1,500-contact list is 15 calls. The Idempotency-Key stops a retried request from sending twice. Full reference: docs.tryready.com/api/bulk-messages.
For other CRMs such as Pipedrive, Salesforce and HubSpot, see our breakdown of SMS integrations for CRMs.
GoHighLevel
GoHighLevel is our deepest integration. Ready installs through OAuth as an LC Phone alternative and syncs inbound and outbound messages both ways. Each GHL location maps to its own Ready sub-account, so a team or brokerage running several locations keeps each one isolated. Replies land in Ready and in the GHL conversation.
On per-message price alone, LeadConnector (about $0.0083/msg, about $0.0128 with fees) costs less per message than our Standard rate. People switch for registration that's self-serve in the app, the compliance tooling, and the dialer on the same account, not for a lower rate.
Compliance that has to be on before the first send
10DLC registration
Carriers filter unregistered traffic. Registration covers your brand and a campaign describing what you send:
| Item | Cost |
|---|---|
| Brand | $10/mo |
| Campaign | $20/mo |
| Each number | $2/mo |
| Charged at submit | $25 (first month, no setup fee) |
Most approvals take 2 to 7 days. An account can send up to 500 texts a month before it registers, at the normal rate. The first 20 texts are free one-to-one sends, and they end when you pay for registration, so use them before you register. To send, you add a card and get a number, which is $2 a month with the first month charged when you get it.
A brokerage with many agents faces a structure question: how many campaigns, and whose texts share one. See structuring a brokerage's 10DLC before you register 40 agents under one campaign.
What Ready enforces on every send
- STOP handling. Ready honors an inbound STOP and blocks that contact across all campaigns. Sends to opted-out numbers are refused up front and not charged.
- Quiet hours. A text that would arrive outside permitted hours in the recipient's area is held and sent later. It's charged only when it sends. 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.
- Litigator and DNC scrubbing. When switched on, known TCPA-litigator and DNC numbers are screened out before the send. This costs $0.003 per segment and is off by default. The standalone scrub, which also works for call lists, is $0.005 per contact.
- Attestation trail. Every bulk send and every API send that sets
consent_attestedrecords who sent it, to how many recipients, and when.
The attestation trail is not a per-contact consent record. Ready doesn't store when each lead opted in, what wording they saw, or which page they used. Your CRM or form tool has to keep that. If a lead's opt-in record lives only in someone's memory, fix that before scaling up. (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.)
None of this makes you lawsuit-proof. TCPA exposure runs roughly $500 to $1,500 per text, and the sender is ultimately responsible for compliance. These tools reduce risk. They don't move responsibility off you.
What a mass text costs: worked example
Assumptions: 1,500 opted-in past clients, one market-update text, Standard rate of $0.0075/segment plus a $0.0045 carrier fee per segment.
Plain text, 150 characters: 1 segment (GSM-7 holds 160 characters).
- Per-segment charge: 1,500 × $0.0075 = $11
- Carrier fee: 1,500 × $0.0045, itemized separately on the bill
Same text plus one emoji: an emoji drops the per-segment limit to 70 characters (67 per part in a multipart message). 150 characters becomes 3 segments.
- Per-segment charge: 1,500 × 3 × $0.0075 = $34
- Carrier fee: 4,500 × $0.0045
That one emoji triples the bill. Curly quotes and long dashes don't change the count, because Ready swaps them for plain characters before sending.
Replies: replies are billed like sent texts. If you assume 30% reply (an assumption, not a benchmark), that's about 450 one-segment replies, or 450 × $0.0075 = $3 plus the carrier fee.
Totals: these figures exclude the compliance surcharge. If scrubbing is on for the account, add $0.003 per segment. Billing is prepaid credits through Stripe.
Speed: a fresh standard campaign moves about 1 to 4 segments per second. At an assumed 2 per second, 1,500 segments take about 12.5 minutes. T-Mobile's lowest daily brand cap is about 2,000 messages. A 4,500-segment emoji version could run into that cap, which is one more reason to drop the emoji. Brand vetting ($79 Standard / $179 Enhanced, one-time) raises the daily cap only if it moves you up a tier. Most single-agent senders don't need it.
Compared with raw APIs: Twilio's raw rate (about $0.0083/segment) is lower per segment. With Twilio you build the registration flow, opt-out logic, quiet hours and inbox yourself. Many teams prefer that trade, and it's a reasonable one.
Pairing texts with calls
What the Ready Dialer does
The Ready Dialer is click-to-call from the dial pad in the Ready dashboard or in GoHighLevel. It includes:
- Consented call recording and transcripts
- Inbound calls that ring the open pad
- A Missed call card in the Inbox thread for each missed call
What it doesn't do
There is no auto dialing, multi-line or parallel dialing, voicemail drop, or call transfer. If your investor team needs to run hundreds of dials an hour across several lines, you need a standalone dialer. Our comparison of a CRM with a built-in dialer vs a standalone one covers that choice.
The workflow it fits
The Ready Dialer suits a "text first, call the replies" workflow:
- The market update goes out at 10 AM.
- Replies land in the inbox.
- An agent calls the warm ones from the pad within minutes, while the lead is still looking at their phone.
Cost of the callback block
The dialer is billed at $0.025/min. Each started minute counts as a full minute, and only answered time is billed. Ring-outs and busy lines cost nothing. A call that reaches voicemail counts as answered and is billed.
Example: an agent calls 100 repliers. 60 pick up and average 4 billed minutes each.
- 60 × 4 = 240 minutes
- 240 × $0.025 = $6.00
- The 40 no-answers cost $0
Local presence and the inbox
With local presence on, Ready sends from the account's number closest to the contact's area code. In GHL, the #from:local# tag picks that number. Every number still sits on your registered campaign, so local presence doesn't bypass registration.
Local presence is on unless you switch it off, because a local number is more recognizable to a homeowner. We don't publish a measured reply lift.
All replies come back to one inbox, not to an agent's personal phone. That keeps the conversation history on the team's record when an agent leaves.
The practical takeaway
- Text only consented or replied leads. Call and mail the cold ones, after scrubbing.
- Register before you scale. It's $25 at submit, and most approvals take 2 to 7 days.
- Keep the opt-in proof in your CRM. Ready's attestation trail doesn't cover it.
- Keep promos under 160 plain characters. An emoji triples the cost.
- Call the replies quickly. Keep it to warm leads.
If Follow Up Boss's built-in texting already covers this for your team, stay with it. If you're on GoHighLevel or want registration, compliance controls and a click-to-call pad on one account, see SMS marketing for real estate agents for message ideas, then sign up and send your first 20 one-to-one texts before you register.