What it does
SMS and Email Export writes the text and email history of a sub-account to a CSV. Every row is one message, with its date and time, type (SMS or Email), contact name and ID, phone, direction (inbound or outbound), and the conversation and message IDs. You choose which types to include and the date range, and the export runs in the background.
With calls switched on too, you get one file covering every channel in the period, sorted into a single sheet you can filter by type.
Why it matters
Message history matters for more than reporting. A merchant disputes what a rep promised by text. A carrier asks about opt-out handling. A client leaves and wants their conversation records. A manager wants to know how many texts each contact got last month before a new campaign.
GoHighLevel shows messages inside each conversation, and its contact export gives you contact data, not message history. As of October 2026, there isn't a native way to export every text in a sub-account to a spreadsheet; it's a long-standing request on HighLevel's ideas board. The workaround is screenshots or copying threads by hand, which doesn't work past a handful of contacts. Exporting SMS conversations from GoHighLevel lays out the native options and their limits.
The direction column does a lot of work. Filter to outbound to count what your team sent, or to inbound to see who wrote back. Group by contact ID to find the merchants who got the most texts last month before you add them to another campaign.
How it works
- In Conversation Exporter, press New export and pick the sub-account.
- Set From and To, or click a preset.
- Under Include, switch on Text messages, Emails, or both. Leave Calls off for a messages-only file.
- Read the note under the switches. It confirms the types and range and reminds you times are in UTC.
- Press Export. Progress appears under Recent exports, with a percentage.
- Press Download when it's done. The file is named after the sub-account.
- Open it in Excel or Google Sheets and filter by Direction or Contact ID.
Good to know
- IDs on every row. Conversation and message IDs let you join the export with other data, or find the exact message again in GoHighLevel or through the API.
- Old conversations are included. If a conversation started years ago but had messages in your range, those messages are in the export.
- One export at a time per sub-account. If one is already running, wait for it to finish before starting another.
- UTC throughout. Convert to local time in your spreadsheet if you need it.
- Long ranges are handled by Any Date Range, No Row Caps, and big jobs keep going thanks to Background Exports.
Questions
Can I export only texts, or only emails?
Yes. Switch each type on or off: calls, text messages and emails. Pick one, two or all three.
Does the export include message bodies?
No. Each row has the date, time (UTC), type, contact name and ID, phone, direction, and conversation and message IDs. The message ID lets you find the exact message again in GoHighLevel or through the API.