Skip to content
OptinStamp
Menu

Best CRM with text messaging, read for consent and opt-outs

5 vendors comparedVendor claims read 2026-10-22

For the owner or sales lead who wants texting inside the CRM the team already lives in: where the customer's consent sits on the contact, whether one STOP reply stops every rep and every workflow, and whether an automation can fire a text at midnight. We read five CRMs' own help centres on 2026-10-22; every status names the page it came from. For a standalone texting tool instead, see the business texting comparison; for a phone line that texts, the OpenPhone (Quo) alternatives.

Verdict by use case

Best overall

HubSpot

Consent is a subscription status on the contact that a STOP updates by itself, and broadcasts, workflows and inbox replies all check it. Quiet hours run in each contact's time zone by default; plan around one gap, as double opt-in and a stored opt-in time are not documented.

Verdict

Best for a small business that wants the opt-in done for it

Keap

The first marketing text to any new number is held behind an automatic opt-in request, and the record shows opted in, opted out or pending under each number. The inbox shows the opt-in and opt-out dates; one-to-one texts run on a separate line.

Verdict

Best for agencies running many client accounts

HighLevel

A STOP sets a permanent Do Not Disturb on the contact and fails every queued message, and the log records who changed it. Workflows can hold texts to a window in the contact's time zone, once you switch it on.

Verdict

Photomontage of a card index box with one card lifted and a hand holding a phone from behind on putty with a slate diagonal and an oxblood square
Fig. 01 A card index with one card lifted beside a phone

Five CRMs, ten requirements

The first four rows are about the CRM itself: where consent is stored, whether a STOP reaches the record, whether it stops every sender, and whether workflows keep to the 8 a.m. to 9 p.m. window in the contact's time zone. The other six are the texting rules any sender acts on. "Our pick" marks the best-overall verdict.

A CRM stores consent; it does not create it. The wording on your form is what makes a checkbox count, so start from prior express written consent and the SMS consent form template.

CRMs with texting against four CRM consent rows and six texting requirements
RequirementOur pickHubSpotKeapHighLevelCloseActiveCampaign
Built-in SMS opt-in or opt-out status on the contact recordYesYesYesNoYes
A STOP reply updates the contact record by itselfYesYesYesCheck with the vendorNo
Opt-out on the contact blocks texts from every user and workflowYesCheck with the vendorYesYesYes
Automated workflow texts held to a window in the contact's time zoneYesCheck with the vendorYesYesYes
Quiet-hours window by the recipient's time zoneYesCheck with the vendorCheck with the vendorCheck with the vendorNo
Honours STOP and plain-language revocation automaticallyCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendorNo
10DLC brand and campaign registration in-productYesYesYesYesYes
Double opt-in availableCheck with the vendorYesCheck with the vendorCheck with the vendorYes
Records opt-in with a timestamp and the numberCheck with the vendorYesCheck with the vendorCheck with the vendorCheck with the vendor
Consent records exportableCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendorCheck with the vendor

Built-in SMS opt-in or opt-out status on the contact record
CTIA asks senders to keep every opt-in and opt-out so future messages are not attempted; a status on the record is the one place every user and workflow can check before a send.CTIA Messaging Principles and Best Practices (May 2023), 5.1.5
A STOP reply updates the contact record by itself
A revocation must be honoured within ten business days; a STOP that never reaches the record leaves every other sender in the business unaware of it.47 CFR § 64.1200(a)(10)
Opt-out on the contact blocks texts from every user and workflow
The rule speaks of a person who no longer wants texts from the sender: the business, not one rep or one sequence.47 CFR § 64.1200(a)(10)
Automated workflow texts held to a window in the contact's time zone
Telephone solicitations are barred before 8 a.m. or after 9 p.m. at the called party's location, and a workflow fires whenever its trigger does, at any hour.47 CFR § 64.1200(c)(1)
Quiet-hours window by the recipient's time zone
Telephone solicitations are barred before 8 a.m. or after 9 p.m. local time at the called party's location.47 CFR § 64.1200(c)(1)
Honours STOP and plain-language revocation automatically
The FCC rule names seven reply words and also counts any reply a reasonable person reads as a revocation.47 CFR § 64.1200(a)(10)
10DLC brand and campaign registration in-product
US carriers route business texts on local numbers through registered brands and campaigns.
Double opt-in available
A confirming reply ties the consent to the handset that will receive the texts.
Records opt-in with a timestamp and the number
CTIA asks senders to keep the date, time, number and the words used to secure consent.CTIA Messaging Principles and Best Practices (May 2023), 5.1.2
Consent records exportable
CTIA asks senders to retain every opt-in and opt-out so consent can be shown later.CTIA Messaging Principles and Best Practices (May 2023), 5.1.5

Vendor by vendor

Each card repeats the table's rows with the detail from the vendor's own page. Before you register a number through any of them, read what 10DLC is and run the 10DLC registration checklist.

HubSpot

hubspot.com

What it is

A CRM with marketing, sales and service hubs. Texting is an add-on to Marketing Hub Professional or Enterprise: broadcasts, workflow texts and replies in the conversations inbox, sent through Twilio from one US marketing number per account.

Who it fits

Teams already running their contacts and email in HubSpot that want texting to obey the same subscription settings.

  • Built-in SMS opt-in or opt-out status on the contact recordYes

    An SMS subscription type under the contact's Communication subscriptions, set with a legal basis and a written explanation. The status follows the phone number, so a deleted and re-created contact keeps it.

  • A STOP reply updates the contact record by itselfYes

    STOP, STOPALL, UNSUBSCRIBE, CANCEL, END and QUIT update the contact's SMS subscription status automatically.

  • Opt-out on the contact blocks texts from every user and workflowYes

    Workflow texts go only to contacts opted in and set as marketing contacts; one-off sends need the message's subscription type too, and inbox replies go out only while the contact still meets those requirements.

  • Automated workflow texts held to a window in the contact's time zoneYes

    Quiet hours cover workflow texts as well as one-off sends, and they are on by default.

  • Quiet-hours window by the recipient's time zoneYes

    Texts are deferred from 8 p.m. to 8 a.m. in the contact's local time zone; with no time zone on file, from 8 p.m. US/Eastern to 8 a.m. US/Pacific. The switch can be turned off on a message, which HubSpot advises against.

  • Honours STOP and plain-language revocation automaticallyCheck with the vendor

    Six keywords opt the contact out automatically: STOP, STOPALL, UNSUBSCRIBE, CANCEL, END and QUIT. Replies in other words are not described.

  • 10DLC brand and campaign registration in-productYes

    Business details and SMS details (two sample messages, every opt-in method, privacy policy and terms) are submitted under Settings > SMS. HubSpot quotes six to eight business days for a 10DLC number; sole proprietors are not supported.

  • Double opt-in availableCheck with the vendor
  • Records opt-in with a timestamp and the numberCheck with the vendor

    Subscribing a contact by hand asks for a legal basis and an explanation, and each contact's subscriptions keep a History tab; a stored opt-in time is not named.

  • Consent records exportableCheck with the vendor

    Sent SMS messages export to CSV, XLS or XLSX from the SMS dashboard; an export of subscription history is not described.

CRM suite

Keap

keap.com

What it is

A CRM and marketing automation tool for small businesses, a Thryv brand since Thryv acquired it. Marketing texts go from a toll-free Keap Marketing Number through broadcasts and automations; one-to-one calls and texts go from a separate Keap Business Line.

Who it fits

Owner-run service businesses that want the opt-in step handled for them before any marketing text goes out.

  • Built-in SMS opt-in or opt-out status on the contact recordYes

    Shown under each phone number on the contact record: opted in, opted out, or pending opt in to your Marketing Number. Status is kept per phone number.

  • A STOP reply updates the contact record by itselfYes

    A STOP reply blocks future marketing texts, and the record shows the unsubscribed status under the number.

  • Opt-out on the contact blocks texts from every user and workflowCheck with the vendor

    A STOP to the Marketing Number stops every broadcast and automation sent from it. One-to-one texts go from the Business Line, a separate number, and whether the opt-out carries over is not described.

  • Automated workflow texts held to a window in the contact's time zoneCheck with the vendor

    An automation's text step sends at once or after a delay; a time-of-day window is not described.

  • Quiet-hours window by the recipient's time zoneCheck with the vendor
  • Honours STOP and plain-language revocation automaticallyCheck with the vendor

    STOP is the documented opt-out reply; replies in other words are not described.

  • 10DLC brand and campaign registration in-productYes

    A local Business Line number is verified with the carriers from Settings > Text Message Verification, which shows its status. The toll-free Marketing Number gets its own verification form the first time you broadcast.

  • Double opt-in availableYes

    Before the first marketing text to a number with no opt-in history, Keap sends an opt-in request and waits for the reply. Consent gathered in another system cannot be imported to skip it; a checked box on a Keap form can.

  • Records opt-in with a timestamp and the numberYes

    The Marketing Number inbox shows the date a contact opted in and, if they did, opted out, and which broadcast or automation they replied to.

  • Consent records exportableCheck with the vendor

Small-business CRM

HighLevel

gohighlevel.com

What it is

A CRM and marketing platform built for agencies that run a sub-account per client, with its own phone system (LC Phone) for calls and texts, workflows, bulk actions and a Trust Center for carrier registration.

Who it fits

Agencies and multi-location businesses that send texts for several brands from one platform.

  • Built-in SMS opt-in or opt-out status on the contact recordYes

    Do Not Disturb on the contact, per channel (SMS, calls, email and others) or for all channels. The log shows whether a workflow, a user or the contact changed it.

  • A STOP reply updates the contact record by itselfYes

    A reply with an opt-out keyword such as STOP or UNSUBSCRIBE switches SMS DND on by itself; certain carrier error codes do too.

  • Opt-out on the contact blocks texts from every user and workflowYes

    After STOP, all upcoming and queued messages fail and a permanent DND sits on the contact. Only the contact texting START, YES or UNSTOP lifts it.

  • Automated workflow texts held to a window in the contact's time zoneYes

    Each workflow can run on the contact's time zone and hold texts, emails and calls to a Time Window. Both are settings you switch on; a contact with no time zone falls back to the account's.

  • Quiet-hours window by the recipient's time zoneCheck with the vendor

    Workflow windows can follow the contact's time zone; the send hours on a bulk-action drip follow the account's time zone.

  • Honours STOP and plain-language revocation automaticallyCheck with the vendor

    STOP and UNSUBSCRIBE are the documented examples; replies in other words are not described.

  • 10DLC brand and campaign registration in-productYes

    Brand and campaign registration in Settings > Phone System > Trust Center; a number shows A2P Verified once it is linked to an approved campaign.

  • Double opt-in availableCheck with the vendor
  • Records opt-in with a timestamp and the numberCheck with the vendor

    The DND guide suggests your own fields, such as a consent source and an opt-in timestamp, filled in by a workflow.

  • Consent records exportableCheck with the vendor

Agency CRM

Close

close.com

What it is

A sales CRM with calling, SMS, email and workflows built in. Texts go from the user's Close phone number, one at a time from the lead page or as steps in a workflow.

Who it fits

Inside sales teams that call and text leads from the same screen and run follow-up as workflows.

  • Built-in SMS opt-in or opt-out status on the contact recordNo

    Close's own guide has you create contact custom fields to mark SMS consent and fill them from Close Forms; there is no built-in SMS status.

  • A STOP reply updates the contact record by itselfCheck with the vendor

    Later texts to that number show an "error" label on the SMS activity; updating your consent field is not described.

  • Opt-out on the contact blocks texts from every user and workflowYes

    After STOP, CANCEL or UNSUBSCRIBE, any further message to that phone number is blocked.

  • Automated workflow texts held to a window in the contact's time zoneYes

    Workflow texts go Monday to Friday, 9 a.m. to 4 p.m. in the contact's time zone by default (set by hand, estimated from the number, or a fallback). A single step can be set to ignore the schedule.

  • Quiet-hours window by the recipient's time zoneCheck with the vendor

    Workflows follow the contact's time zone; a one-off "Send later" text uses your own device's time zone.

  • Honours STOP and plain-language revocation automaticallyCheck with the vendor

    STOP, CANCEL and UNSUBSCRIBE are the documented replies; replies in other words are not described.

  • 10DLC brand and campaign registration in-productYes

    Settings > Phone & Voicemail > US Compliance. Texts to US numbers are not delivered until the registration is approved.

  • Double opt-in availableCheck with the vendor
  • Records opt-in with a timestamp and the numberCheck with the vendor

    Consent is whatever your custom fields record, so a timestamp depends on how you build them.

  • Consent records exportableCheck with the vendor

    A CSV export can carry all custom fields, so consent kept there leaves with it.

Sales CRM

ActiveCampaign

activecampaign.com

What it is

Email marketing and automation with a sales CRM. Texting is a paid SMS add-on: broadcasts to SMS marketing lists, "Send SMS" steps in automations, and a two-way SMS inbox.

Who it fits

Marketing-led teams that already build automations in ActiveCampaign and want SMS forms with double opt-in.

  • Built-in SMS opt-in or opt-out status on the contact recordYes

    Consent sits in an SMS marketing list: a contact is Unconfirmed until they confirm by text, then Active.

  • A STOP reply updates the contact record by itselfNo

    ActiveCampaign says there is no way to track which contacts have unsubscribed from SMS, and staff cannot unsubscribe or re-subscribe anyone by hand.

  • Opt-out on the contact blocks texts from every user and workflowYes

    Once a contact replies STOP, they skip every "Send SMS" action they reach in automations.

  • Automated workflow texts held to a window in the contact's time zoneYes

    A "Send an SMS" automation action can be set to send during chosen hours in each contact's time zone.

  • Quiet-hours window by the recipient's time zoneNo

    Account quiet hours run on US Eastern time (by default 6:45 p.m. to 11 a.m. EST), not each recipient's zone; ActiveCampaign notes they may not cover the Pacific, Alaska or Hawaii-Aleutian zones.

  • Honours STOP and plain-language revocation automaticallyNo

    Only single-word replies trigger the block (STOP, CANCEL, END, QUIT, STOPALL, UNSUBSCRIBE); "STOP NOW" does not.

  • 10DLC brand and campaign registration in-productYes

    SMS > Registration takes the business, the account owner, opt-in methods, the use case and two sample texts. An EIN is required, and nothing can be edited after you submit.

  • Double opt-in availableYes

    On by default for new SMS forms and keywords; the contact replies 1, Y or YES. Contacts added by import, API or bulk edit skip it.

  • Records opt-in with a timestamp and the numberCheck with the vendor

    Double opt-in gives "a clear record" that the contact agreed; the fields stored are not listed.

  • Consent records exportableCheck with the vendor

Marketing CRM

How we read the claims

Questions buyers ask

If a customer texts STOP to one rep, can another rep or a workflow still text them?

Not lawfully once the opt-out has had time to land: a revocation by any reasonable method must be honoured within ten business days (47 CFR § 64.1200(a)(10)), and it binds the business. In HubSpot and HighLevel the STOP changes the contact's status and every later send checks it; Close blocks further messages to that number, and ActiveCampaign's automations skip the contact. Keap blocks marketing texts from its Marketing Number, and its pages do not say whether the separate Business Line honours the same opt-out.

Do quiet hours apply to automated texts from a CRM workflow?

The federal rule bars telephone solicitations before 8 a.m. or after 9 p.m. at the called party's location (47 CFR § 64.1200(c)(1)), and a workflow is no exception. HubSpot holds every text between 8 p.m. and 8 a.m. in the contact's time zone by default; Close sends workflow texts 9 a.m. to 4 p.m. on weekdays; HighLevel and ActiveCampaign can hold workflow texts to a window in the contact's time zone once you set it. Some states are stricter: one window that clears every state we verified is 9 a.m. to 8 p.m. in the recipient's time zone, Monday to Saturday, and noon to 8 p.m. on Sunday.

Can we import the consent we collected in our old texting tool?

It depends on the CRM. HubSpot lets you subscribe contacts in bulk when you have their explicit and verifiable consent, with a legal basis and an explanation. Keap does not: every number goes through its own opt-in request first. ActiveCampaign takes imports, but imported contacts skip its double opt-in. Whatever you import, CTIA asks senders not to use opt-in lists that have been rented, sold or shared, and an opt-in applies only to the campaign and sender it was given for.

Is a consent checkbox on the contact record enough proof of consent?

Rarely on its own. CTIA lists what an opt-in record should hold: the timestamp, how consent was given, the wording the person saw, the campaign, the IP address, the phone number and the person's identity. A yes/no field holds none of that, so keep the form or keyword log behind it. For marketing texts sent with an autodialer, the FCC rule asks for prior express written consent, a signed agreement that names the number.

Does the CRM register our 10DLC number for us?

All five take the registration inside the product: HubSpot under Settings > SMS, Close under US Compliance, HighLevel in its Trust Center, ActiveCampaign under SMS > Registration and Keap under Text Message Verification for its local Business Line. Registration is the carriers' gate: it does not prove consent for any one contact.

What does texting without consent cost?

Under 47 U.S.C. § 227(b)(3), $500 per call or text, up to three times that ($1,500) if the court finds the violation willful or knowing. A CRM that texts a whole segment at once multiplies that by every contact in it, which is why the consent field matters more than any feature on this page.

Sources

  1. CTIA Messaging Principles and Best Practices (May 2023), 5.1.5fetched 2026-10-22
  2. 47 CFR § 64.1200(a)(10)fetched 2026-10-22
  3. 47 U.S.C. § 227(b)(3) (private right of action)fetched 2026-10-22
  4. FCC DA 26-12 (revoke-all waiver to January 31, 2027)fetched 2026-10-22
  5. FCC 26-67, revocation order (adopted 30 September 2026)fetched 2026-10-22
  6. Fla. Stat. § 501.616(6) (Florida calling hours)fetched 2026-10-22
  7. Conn. Gen. Stat. § 42-288a(c) (Connecticut solicitation hours)fetched 2026-10-22
  8. Tex. Bus. & Com. Code § 301.051 (Texas calling hours)fetched 2026-10-22
  9. HubSpot: Send SMS messages in the conversations inboxfetched 2026-10-22
  10. Keap: Text Message Broadcast & Automation FAQsfetched 2026-10-22
  11. Keap home page ("Keap, A Thryv, Inc. Brand")fetched 2026-10-22
  12. HighLevel: How to Use Do Not Disturb (DND)fetched 2026-10-22
  13. HighLevel: Drip Mode for Bulk Actionsfetched 2026-10-22
  14. Close: Exporting datafetched 2026-10-22
  15. ActiveCampaign: Can an unsubscribed (inactive) contact receive SMS from an automation?fetched 2026-10-22
  16. ActiveCampaign: SMS STOP clause requirementsfetched 2026-10-22
  17. Pipedrive: Texting contacts from the mobile appfetched 2026-10-22
  18. HubSpot: Manage SMS subscription consentfetched 2026-10-22
  19. HubSpot: Send automated SMS messages using workflowsfetched 2026-10-22
  20. HubSpot: Understand SMS quiet hoursfetched 2026-10-22
  21. HubSpot: Set up SMS messaging for marketing communicationsfetched 2026-10-22
  22. Keap: Check Your Keap Business Line SMS Verification Statusfetched 2026-10-22
  23. Keap: How to Send Automated Text Messages Using Easy Automationsfetched 2026-10-22
  24. Keap: How to Manage Text Marketing Replies in Keapfetched 2026-10-22
  25. HighLevel: LC Phone Messaging Policyfetched 2026-10-22
  26. HighLevel: Workflow Settings Overviewfetched 2026-10-22
  27. HighLevel: What is A2P 10DLC Brand and Campaign Registrationfetched 2026-10-22
  28. Close: A2P 10DLCfetched 2026-10-22
  29. Close: SMS and MMSfetched 2026-10-22
  30. Close: Workflowsfetched 2026-10-22
  31. ActiveCampaign: Create an SMS marketing listfetched 2026-10-22
  32. ActiveCampaign: How do contacts unsubscribe from SMS messages?fetched 2026-10-22
  33. ActiveCampaign: About SMS quiet hoursfetched 2026-10-22
  34. ActiveCampaign: How to register for A2P 10DLCfetched 2026-10-22
  35. ActiveCampaign: Use SMS double opt-infetched 2026-10-22