This document explains how to obtain insights for a marketing message campaign, including:
Send a GET request to the <MESSAGE_CAMPAIGN_ID>/insights endpoint to get insights for marketing messages campaign with the fields parameter set to one or more of the following fields:
marketing_messages_cost_per_deliveredmarketing_messages_cost_per_link_btn_clickmarketing_messages_deliveredmarketing_messages_link_btn_clickmarketing_messages_link_btn_click_ratemarketing_messages_read_ratemarketing_messages_spendFormatted for readability.
curl -i -X GET \
-H "Authorization: Bearer <SYSTEM_USER_ACCESS_TOKEN>" \
"https://graph.facebook.com/<API_VERSION>/<MESSAGE_CAMPAIGN_ID>/insights \
?fields=marketing_messages_delivered,marketing_messages_read_rate"
| Property | Description |
|---|---|
| The average cost per message delivered. This metric is in development. |
| The average cost for each message link click. This metric doesn't include messages sent to Europe, Argentina, Turkey, South Korea and Japan. This metric is in development. |
| The number of messages a business sent to users that were delivered. Some messages may not be delivered, such as when a user’s device is out of service. This metric doesn’t include messages delivered to Europe and Japan. In some cases, this metric may be estimated and may differ from what’s shown on your invoice due to small variations in data processing. This metric is in development. |
| The number of clicks or taps within the marketing message that led to advertiser-specified destinations, on or off Meta technologies. This metric doesn't include messages sent to Europe, Argentina, Turkey, South Korea and Japan. This metric is in development. |
| The percentage of delivered messages that received a link click out of the total number of messages delivered. This metric doesn't include messages sent to Europe, Argentina, Turkey, South Korea and Japan. This metric is in development. |
| The number of messages read divided by the number of messages delivered. Some message reads may not be captured, such as when a customer has turned off read receipts. This metric doesn't include messages sent to Europe and Japan. This metric is in development. |
| The total amount of money you’ve spent on your campaign, set or message during its schedule. This metric is in development. |
On success, your app receives a JSON object with the number of messages delivered, the read rate, and the start and stop date of the messaging campaign.
{
"data": [
{
"marketing_messages_delivered": "2755",
"marketing_messages_link_btn_click": "268",
"marketing_messages_spend": "38.87",
"marketing_messages_read_rate": "79.419238",
"marketing_messages_link_btn_click_rate": "9.727768",
"marketing_messages_cost_per_link_btn_click": "0.145037",
"marketing_messages_delivery_rate": "0",
"marketing_messages_cost_per_delivered": "0.014109",
"date_start": "2024-05-01",
"date_stop": "2025-07-29"
}
],
"paging": {
"cursors": {
"before": "MAZDZD",
"after": "MAZDZD"
}
}
}
Additionally, insights under an ad account can be obtained by act_<AD_ACCOUNT_ID>/insights endpoint
Querying on time ranges and date presets is also supported for campaigns created March 1st or later. Below are query parameter options you can use to query on specific dates:
| Parameter Name | Description |
|---|---|
{'since':YYYY-MM-DD,'until':YYYY-MM-DD} | A single |
enum{today, yesterday, this_month, last_month, this_quarter, maximum, data_maximum, last_3d, last_7d, last_14d, last_28d, last_30d, last_90d, last_week_mon_sun, last_week_sun_sat, last_quarter, last_year, this_week_mon_today, this_week_sun_today, this_year} | Default value: Represents a relative time range. This field is ignored if time_range is specified. |
Now that you have learned how to get insights on your campaign, learn how to increase a business' subscribers.