After a bulk text goes out, someone always asks, "Did this person actually get it?" The answer is in GoHighLevel, but it's spread across three different screens, and none of them gives you one clean recipient list.
This guide covers where each view lives, what it can and can't tell you, and how to build a reliable recipient list. Menu names are accurate as of October 2026 and may change.
First, know what "received" means
Bulk SMS has more outcomes than "sent" and "not sent." HighLevel's Bulk Action results show which messages were sent, delivered, failed, or skipped. Treat those as four different groups:
- Sent: the total messages your system attempted to send.
- Delivered: messages that reached the recipient.
- Failed: messages that couldn't be delivered, for reasons like invalid numbers, carrier filtering, opt-outs or compliance issues.
- Skipped: contacts HighLevel excluded because they weren't eligible. HighLevel automatically excludes unsubscribed or DND contacts.
If you only check the sent count, you'll overstate who saw the message.
Method 1: Bulk Actions → Show Stats
This is the best place to start because it's tied to the specific send.
- In the sub-account, go to Contacts → Bulk Actions.
- Use the filters (Status, Action Type, User, Date) to narrow to the job you need.
- Click Show Stats on the row to open a drawer with totals, success and error counts, and delivery outcomes for messaging jobs.
- If you need the failures, use the Download option in that view. HighLevel describes it as an error log for troubleshooting.
The limit: the download is built around errors. It tells you who failed and why, not a full list of everyone who got the text. You can work backward from the totals, but you can't hand a client a clean "delivered to" list from this screen alone.
Method 2: Messaging Analytics with the Bulk Request filter
This view is better when you need statuses per contact.
- Open Messaging Analytics in the Phone System area of the sub-account.
- Set the date range around your send.
- Set the messaging source filter to Bulk Request. That filter reviews messages sent through bulk messaging actions.
- Click a summary card, such as Delivered or Failed, to open the detailed logs. Those logs show the contact, phone number, status, activity date and error code.
The limits:
- The default reporting period is the last 30 days, with a maximum range of 90 days. A blast from four months ago is out of reach here.
- The source filter covers all bulk sends in the window. If you sent two blasts on the same day, you have to separate them yourself by time or message content.
- It's a per-sub-account view. If you manage 30 sub-accounts, you repeat this 30 times.
Method 3: Check one contact in Conversations
For a single "did they get it?" question, this is the fastest route.
- Go to Conversations and search for the contact by name or number.
- Open the thread and find your blast message.
- If it failed, HighLevel's help docs say the message is marked Unsuccessful. Hover over or select the red warning indicator beside it to see the error code.
This works for one person at a time. It's slow for a list of 500.
Method 4: Dashboard widgets for counts
HighLevel's SMS widgets are useful when a client wants a number, not a list. The "SMS by status" widget shows outbound SMS split by Sent, Delivered, Failed, Pending, Undelivered, Clicked and Read. You can also group by source, including Bulk action. Workflow, Campaign and Bulk action options in the Group dropdown are greyed out until you set them up on the Conditions tab.
Widgets are good for delivery rates. They won't tell you whether a specific person was in the audience.
Build the recipient list before you send
The cleanest native fix is a habit, not a report. Before any blast:
- Build a smart list for the audience.
- Apply a dated tag to everyone in it, such as
blast-2026-10-18. - Send the bulk SMS to that tag.
Afterward, the tag is your intended-recipient list. Subtract the failed and skipped contacts from Bulk Actions or Messaging Analytics and you have the delivered group.
This doesn't prove delivery by itself. It records who was targeted, and you still have to cross-check statuses. It also only helps for blasts you haven't sent yet.
Where the native way gets slow
Put the methods together and the pattern is clear:
| Question | Native answer | Catch |
|---|---|---|
| How many were delivered? | Show Stats or widgets | Counts only |
| Who failed? | Error log download | Failures only |
| Who got it, per contact? | Messaging Analytics logs | 90-day max, mixes blasts |
| Did this one person get it? | Conversations | One contact at a time |
For an agency, the real friction is repetition. Every sub-account needs its own digging, and nothing gives you one exportable list of everyone a specific blast went to.
How Blast Follow-Up handles it
Blast Follow-Up is the RGS Tools app for this job. Blast Finder finds a past bulk SMS and the contacts it went to, so you aren't reconstructing it from tags and logs. Preview and CSV Export lets you check the list before you act on it and download it as a CSV for a client or a teammate.
From there, the same tool covers the common follow-ups. No-Reply Checker helps you separate people who never answered, which pairs with our guide on finding contacts who never replied. If you then want to text them again, see how to resend an SMS blast to non-responders.
Blast Follow-Up is $39/mo per agency, with unlimited sub-accounts and a 7-day free trial. You can cancel any time. RGS Tools isn't affiliated with HighLevel Inc.
If a lot of contacts failed
Don't resend right away. HighLevel's guidance is to avoid repeatedly resending a failed message without identifying the cause, since repeat sends to opted-out, invalid or filtered destinations can add failures and hurt messaging health. Look at the error codes first. A pending A2P 10DLC registration needs a different fix than a batch of landline numbers.
If you need the actual message text and timestamps for a record, see how to export SMS conversations from GoHighLevel.
Quick checklist
- Check Contacts → Bulk Actions → Show Stats for totals and the error log.
- Use Messaging Analytics with the Bulk Request filter for per-contact status, within 90 days.
- Spot-check one or two contacts in Conversations.
- Tag audiences before future blasts so you always have the intended list.
- Fix the cause of failures before you resend.
Questions
Where can I see who received a bulk SMS in GoHighLevel?
Start at Contacts → Bulk Actions and open Show Stats for the job. For per-contact status, use Messaging Analytics with the Bulk Request source filter, or open the contact's thread in Conversations.
Does 'Sent' mean the person got the text?
No. HighLevel's Messaging Analytics counts Sent as messages the system attempted to send, and Delivered as messages that reached the recipient. Check the Delivered and Failed statuses, not just Sent.
Why did some contacts in my blast not get the message?
HighLevel leaves out contacts who aren't eligible for a bulk send, such as unsubscribed or DND contacts. Others fail at the carrier or number level and show an error code.