Understanding Your ThruText Export Files

ThruText export files help you understand how your texting campaigns performed, what messages were sent, which contacts responded, and how your users engaged. These exports are useful for tracking delivery, opt-outs, and performance at the message, campaign, or account level.


Each export generates a CSV file containing specific columns based on the type of data being downloaded. This guide breaks down what’s included in each ThruText export so you can find the data you need to analyze message outcomes or manage compliance.


TABLE OF CONTENTS


Understanding Account-Level vs. Campaign-Level Exports

Before diving into each export type, it’s helpful to understand the difference between account-level and campaign-level exports:

  • Campaign-Level Exports give you data for a single campaign. These are best when you want a complete snapshot of messages, surveys, or conversations tied to one campaign. You can generate these exports directly from the individual campaign page. For more information on these exports, see ThruText Campaign Exports.
  • Account-Level Exports provide a broader view across all campaigns in your account. These exports are useful for tracking performance, opt-outs, or message deliverability over time. You can access account-level exports from the Exports section under the ThruText Tools menu. For details on these exports, see Account-Level ThruText Exports.

Choosing the right export depends on whether you’re analyzing a specific campaign or looking across your entire texting program. The rest of this guide explains what each export type includes so you can choose the one that fits your needs. 

If you are interested in a video demonstration on Exports, please check out our video How to Export Your Data.


Message Exports

Message exports include full details about every incoming and outgoing text message in your campaign or account. These reports help you monitor delivery rates, identify errors, and track messaging volume for compliance or analysis. This report includes the following data:

  • inserted_at — The time the message had its "Send" button clicked. All timestamps are tracked in UTC.
  • updated_at — The time the message last updated its status or error message.
  • message_id — Unique ID of the message.
  • message_direction — Indicates if the message was incoming, outgoing, incoming media (MMS), voicemail, or call.
  • message_body — Full body of the message or link to media.
  • media_content — If the message was an MMS, the file name of the media will be shown in this column. For setup and tips, read What is MMS in ThruText?
  • message_status — The status of the message at the time of the export. For definitions of each status, review our guide: Understanding Message Statuses in ThruText.
  • message_segment_count —  The total number of segments in each outgoing message, including unbillable error and status messages.
  • message_error_code —  Our provider's numerical message error code if an error is encountered during sending. The field will be blank if the message doesn't receive an error. For a full walkthrough of each error code, review our guide Message Errors in Exports
  • message_error_type —  The name of the message_error_code from our provider.
  • billable — Values are "Y", "N", or the field is blank. A blank field is an incoming message, media, or call. "Y" signifies that the message is billable and outgoing. "N" signifies that the message is outgoing and NOT billable due to the message_status or message_error_code.
  • sender_first_name — Message sender's first name associated with their ThruText profile (outgoing only).
  • sender_last_name — Message sender's last name associated with their ThruText profile (outgoing only).
  • sender_phone — Message sender's phone number associated with their ThruText profile (outgoing only).
  • sender_email — Message sender's email associated with their ThruText profile (outgoing only).
  • campaign_id — Unique ID of the campaign.
  • campaign_name — The campaign name.
  • conversation_id — Unique ID of the conversation.
  • conversation_phone — The outgoing phone number used to send the text message from your campaign.
  • contact_id — Unique ID of the contact (this is a unique value for a contact phone within a group)
  • contact_first_name — Contact's first name details at the time of the export.
  • contact_last_name — Contact's last name details at the time of the export.
  • contact_phone — Contact's phone number details at the time of the export
  • custom_field_1* — Determined by the account's designated custom fields. For details on how custom fields appear in reports, check out our guide on Custom Fields
  • custom_field_2* — Determined by the account's designated custom fields.
  • custom_field_3* — Determined by the account's designated custom fields.


Survey Exports

Survey exports contain every collected survey response along with contact details and syncing status. These reports are especially useful if you need to analyze response rates, clean up data, or confirm that contact feedback synced properly to external tools like VAN. Survey exports are available as a campaign export, an account export, or a nightly S3 export. This report includes the following data:

  • campaign_id — Unique ID of the campaign.
  • campaign_name — The campaign name. 
  • conversation_id — Unique ID of the conversation. 
  • survey_id — Unique ID of the survey question.
  • survey_question — The survey question.   
  • survey_type — Indicates if the survey question is yes/no, multiple choice (pick one), check box (pick many), or freeform.   
  • response — Survey response collected for that contact.   
  • contact_id — Unique ID of the contact (this is a unique value for a contact phone within a group)
  • contact_first_name — Contact's first name details at the time of the export.
  • contact_last_name — Contact's last name details at the time of the export.
  • contact_phone — Contact's phone number details at the time of the export
  • updated_at — The timestamp of the most recent data collection. All timestamps are tracked in UTC.
  • sync_status — Indicates if a survey status is no_sync, syncing, synced, or failed.
  • custom_field_1* — Determined by the account's designated custom fields.
  • custom_field_2* — Determined by the account's designated custom fields.
  • custom_field_3* — Determined by the account's designated custom fields.


Campaign Exports

Campaign exports provide an overview of campaigns across your account. Campaign exports are only available as an account-level export and will produce data for all campaigns whose start date is between the export's start and end date. This report includes the following data:

  • campaign_id — Unique ID of the campaign.
  • campaign_name — The campaign name.
  • campaign_status — Indicates if a campaign status is active, archived, or paused. 
  • campaign_start_date — The start date and time of the campaign. All campaigns with a "start date" within the date range designated will be included in the report. Admins can pull one week of campaigns at a time.
  • campaign_end_date — The end date and time of the campaign. 
  • campaign_archived_at — The timestamp when a campaign was archived.
  • campaign_tags — Lists any tags on the campaign.
  • conversations_count — The total conversations on the campaign.
  • Conversation Status Counts:
    • unstarted_count — The total un-started conversations remaining on the campaign at the time of the export.  
    • initial_failed_count — The total of initial messages not successfully sent on the campaign at the time of the export.
    • initial_sent_count — The total initial messages sent on the campaign at the time of the export that have not been replied to (a reply would tag the conversation with one of the other statuses listed here).
    • needs_reply_count — The total conversations with an incoming message last on the thread (but not in an archived status) at the time of the export.  
    • replied_count — The total conversations where the contact replied at the time of the export.    
    • complete_count — The total number of archived and opted out conversations at the time of the export.    
  • opted_out_contacts_count — The total number of contacts on that campaign who were opted out at the time of the export. Note, because opt-outs are account-wide, this does not denote if the contact was opted out of via this particular campaign.
  • total_outgoing_sms_messages_count — The total number of outgoing SMS messages sent on the campaign.
  • total_outgoing_sms_segments_count — The total number of SMS segments included in the outgoing messages sent on the campaign.
  • total_outgoing_mms_messages_count — The total number of outgoing MMS messages sent on the campaign.


Conversation Exports

Conversation exports include message counts, opt out details, link clicks, and who handled each conversation. Use this export to see the full picture of each conversation within a campaign. Conversation exports are only available as a campaign-level export. This report includes the following data:

  • campaign_id — Unique ID of the campaign.
  • campaign_name — The campaign name.
  • conversation_id — Unique ID of the conversation.
  • conversation_phone — The outgoing phone number used to send the text message from your campaign.
  • contact_id — Unique ID of the contact (this is a unique value for a contact phone within a group)
  • contact_first_name — Contact's first name details at the time of the export.
  • contact_last_name — Contact's last name details at the time of the export.
  • contact_phone — Contact's phone number details at the time of the export.
  • contact_opted_out — Indicates if the contact phone was opted out at the time of the export. Manual opt outs will be listed as 'manual' while auto opt outs will be listed as 'auto.'
  • assignee_first_name — The first name of the person assigned the conversation at the time of export.
  • assignee_last_name — The last name of the person assigned the conversation at the time of export.
  • assignee_phone — The phone number of the person assigned the conversation at the time of export.
  • assignee_email — The email of the person assigned the conversation at the time of export.
  • outgoing_sms — The number of outgoing SMS messages sent in the conversation thread at the time of export.
  • outgoing_sms_segments — The number of SMS segments included in the outgoing messages sent in the conversation thread at the time of export.
  • outgoing_sms_messages_failed — The number of outgoing SMS failed messages sent in the conversation thread at the time of export.
  • outgoing_mms — The number of outgoing MMS messages sent in the conversation thread at the time of export.
  • outgoing_mms_messages_failed — The number of outgoing MMS failed messages sent in the conversation thread at the time of export.
  • incoming_sms — The number of incoming SMS messages received in the conversation thread at the time of export.
  • incoming_calls — The number of incoming calls received in the conversation thread at the time of export. 
  • incoming_voicemails — The number of incoming voicemails left in the conversation thread at the time of export.
  • incoming_mms — The number of MMS (media) messages received in the conversation thread at the time of export.
  • link_clicked — The total count of trackable link clicks within the conversation at the time of the export.
  • custom_field_1* — Determined by the account's designated custom fields.
  • custom_field_2* — Determined by the account's designated custom fields.
  • custom_field_3* — Determined by the account's designated custom fields.


Opt Out Exports

Opt Out exports list every phone number that has opted out of texting, either manually or automatically. They show where and how each opt-out occurred and confirm opt-out status across all groups that a number has been uploaded to. If an opted-out number is added to a new group, a new entry will be in the export. These reports help you stay compliant and can be pulled without date restrictions. Opt Out exports are available as account-level or nightly S3 exports. This report will include the following data:

  • timestamp — The time the message was sent. All timestamps are tracked in UTC.
  • contact_id — Unique ID of the contact (this is a unique value for a contact phone within a group)
  • contact_first_name — Contact's first name details at the time of the export.
  • contact_last_name — Contact's last name details at the time of the export.
  • contact_phone — Contact's phone number details at the time of the export
  • conversation_id — The unique ID of the conversation.  
  • note — Indicates who collected the opt-out and how (either through a campaign or via a tool within the admin opt-out management page).  
  • opt_out_type — Indicates if the opt out was manual via the opt out button or auto via the automated opt out feature.
  • custom_field_1* — Determined by the account's designated custom fields.
  • custom_field_2* — Determined by the account's designated custom fields.
  • custom_field_3* — Determined by the account's designated custom fields.


User Exports

User exports include user roles, contact info, and timestamps for when a profile was created or last updated. This is helpful for team management or auditing account access. This report includes the following data:

  • first_name — User's first name associated with their GetThru profile.
  • last_name — User's last name associated with their GetThru profile.  
  • phone — User's phone number associated with their GetThru profile.  
  • email — User's email associated with their ThruText profile.  
  • role — Indicates the role assigned to the user on your organization's account – message sender, moderator, or admin.
  • created_at — The date the user joined your organization. 
  • last_updated — A timestamp of the last time the user updated their ThruText profile. 


Tags Exports

Tags exports summarize message volume by campaign and include any tags applied to campaigns during a selected month. These reports are useful when segmenting or evaluating tagged campaigns over time. Tags exports are only available as an account-level export. The selected month will be in UTC time. This report includes the following data:

  • campaign_id — Unique ID of the campaign.
  • campaign_name — The campaign name.
  • total_conversations — The total number of conversations per campaign within the selected month.
  • outgoing_sms_messages — The total number of outgoing SMS messages per campaign within the selected month.
  • outgoing_sms_segments — The total number of segments included in the outgoing messages per campaign within the selected month. 
  • outgoing_sms_messages_failed — The total number of failed outgoing SMS messages per campaign within the selected month.
  • outgoing_mms_messages — The total number of outgoing MMS messages per campaign within the selected month.
  • outgoing_mms_messages_failed — The total number of failed outgoing MMS messages per campaign within the selected month.
  • tags — Lists any tags on the campaign.


Important Notes About Exports

  • Custom Fields: Uniquely identifying custom fields that appear in export files are determined by your account admins. For guidance on setting up and including them in exports, see our guide on Custom Fields.
  • Time Zones: All export data is timestamped in UTC. UTC is 4 hours ahead of EDT, 5 hours ahead of EST, and 7 hours ahead of PDT. You can check the current UTC time using this UTC Time Converter.
  • Nightly S3 Delivery: If you are interested in setting up an S3 bucket for a daily delivery of the opt-out report, messages report, and surveys report, please follow the instructions in our guide, Nightly S3 Export Delivery.
  • ThruTalk Exports: ThruTalk and ThruText exports are managed separately in GetThru. This guide focuses on ThruText exports, which cover data from texting campaigns. For calling data, refer to our separate guide on ThruTalk Exports.