Skip to main content

Communication Performance

Analytics report on message sends from your campaigns — Sent, Delivered, Opened, Clicked and the six derived rates, broken down by channel, campaign, or step.

Communication Performance

Communication Performance shows how the messages sent from your campaigns actually performed — how many went out, arrived, were opened, and were clicked. Use it to compare channels, spot campaigns with deliverability problems, and drill down to individual message steps.

Accessing the Report

Navigate to AnalyticsCommunication Performance in the top navigation menu.

Use Cases

Compare channels head to head. Set Block to Channel and add Sent, Delivered, Delivery Rate and Click-Through Rate. You get one table per channel, so you can see immediately whether SMS is out-converting email this week or the other way around.

Track one campaign day by day. Add the Campaign condition with operator IN, pick the campaign from the dropdown, and set Group to Day. You'll see the daily send curve and how open and click rates move over the campaign's life.

Hunt down deliverability problems. Group by Campaign, then add Bounce Rate, Complaint and Unsubscribe Rate to your metrics. Campaigns with a bounce or complaint spike stand out instantly — that's your list-hygiene or content problem.

Find the weak step in a flow. Group by Message to break a campaign down into its individual message steps. Useful when overall numbers look fine but one email in the chain is quietly dragging the flow down.

How It Works

Two things are worth understanding before you read any number in this report.

Every rate is limited to the channels that can report it. Not every channel can tell us what happened to a message. A rate is calculated only across the channels that technically report the status it needs — and both the numerator and the denominator are limited to the same set of channels. If a row contains no eligible channel at all, the cell shows a dash (—), not 0%. A dash means "we have no data", not "nothing happened".

The data is not real-time. The report is built from a data mart that a background job fills in hourly intervals. Recent sends appear with a delay — usually up to an hour.

Filter Panel

All filters live in the sidebar, grouped into three sections: Period & Scope, Breakdown, and Metrics. Configure your filters and click Apply to load the results.

Period & Scope

  • Message Period — required. The date range the messages were sent in. Defaults to the last 7 days.

  • Project — required. Which project the data is pulled from. Supports multiple selections. Defaults to the first project available to your account.

  • ChannelEmail, SMS, Webhook, Viber, Push, WhatsApp, On-site, Telegram, Facebook, Instagram. Supports multiple selections. Empty by default, which means all channels.

  • Campaign StatusNew, Started, Paused, Stopped, Archived, Scheduled, Starting. Supports multiple selections. Defaults to Started.

⚠️ Watch the Campaign Status default. Out of the box the report only shows campaigns that are currently Started. Finished, paused and archived campaigns are excluded until you add their statuses to the filter — this is the single most common reason for "my sends are missing".

Breakdown

Block creates separate tables for each value. Group creates rows inside each table and supports multiple selections for nested grouping.

Both fields accept the same options, organized into two groups: Time and Message.

Group

Option

Description

Time

Day

Calendar day

Time

Week

Week

Time

Month

Month

Message

Channel

Channel the message was sent through

Message

Campaign

Campaign the message belongs to

Message

Campaign Status

Current status of the campaign

Message

Message

Individual message step inside the campaign

Example: set Block to Channel and Group to Day to get one table per channel with daily rows inside.

Metrics

Pick which columns appear in the results. Metrics are split into Counts and Rates; the selection counter next to the Metrics header shows how many are currently active. Defaults: Sent, Delivered, Delivery Rate, Open Rate, Click-Through Rate.

Counts

Metric

What it counts

Sent

The message was handed over to the provider and received a message ID. Skipped messages — those never sent because of an unsubscribe, a frequency cap and so on — are not counted here and do not appear anywhere in this report.

Delivered

Delivery confirmation received from the provider or channel.

Opened

The message was opened. For email this is the SES tracking pixel; opens from bots and scanners are discarded by user agent.

Clicked

A link inside the message was clicked.

Bounced

Hard bounce — a permanent failure such as a non-existent mailbox or domain. Email only.

Soft Bounced

Temporary failure — mailbox full, recipient server unavailable, and similar. Email only.

Complaint

The recipient marked the message as spam in their mail client. Email only.

Unsubscribed

The recipient followed the unsubscribe link in the email, or was unsubscribed through the API. Email only.

Failed

An internal processing error on the InTarget side: the message was already in the pipeline and processing broke.

Rates

All rates are rounded to two decimal places.

Rate

Formula

Counted across

Delivery Rate

Delivered ÷ Sent

All channels except Viber and Telegram

Open Rate

Opened ÷ Delivered, falling back to Sent when Delivered is 0

Email, WhatsApp, Facebook, Instagram

Click-Through Rate

Clicked ÷ Delivered, falling back to Sent when Delivered is 0

Email, SMS, Push

Click-To-Open Rate

Clicked ÷ Opened

Email only

Bounce Rate

(Bounced + Soft Bounced) ÷ Sent

Email only

Unsubscribe Rate

Unsubscribed ÷ Delivered (no fallback to Sent)

Email only

The fallback on Open Rate and Click-Through Rate exists for SMS, Push and WhatsApp, where the gateway often sends no delivery receipts at all. Without it, those rates would collapse to a dash even when clicks are clearly coming in.

What Each Channel Reports

Use this table to sanity-check any empty cell before reporting a bug.

Channel

Sent

Delivered

Opened

Clicked

Bounced / Soft Bounced / Complaint / Unsubscribed

Email

SMS

Push

WhatsApp

Facebook

Instagram

Webhook

On-site

Viber

Telegram

In practice: there is no Open Rate for SMS and Push — those channels have no concept of an open, which is why their CTR is calculated from deliveries instead. Click-To-Open Rate exists for email only. Viber and Telegram report Sent and nothing else, so they are excluded from Delivery Rate too.

Add Filter

Click Add filter to narrow the dataset further. Three conditions are available, all in the Message group.

Condition

Operators

Input

Campaign

IN, NOT IN

Dropdown of your campaigns, multiple select

Campaign Name

ILIKE, NOT ILIKE

Free text

Step

IN, NOT IN

Free text, separate step IDs with a comma

Operator reference:

  • IN — matches any value from the list

  • NOT IN — excludes any value from the list

  • ILIKE — case-insensitive partial match (contains)

  • NOT ILIKE — excludes partial matches, case-insensitive

Where to find a Step ID. Set Group to Message and run the report — the table then shows Step and Message columns. Take the ID from there and paste it into the Step condition.

Exporting Data

The report can be exported and downloaded as a file, the same way as the other Analytics reports. The export reflects all active filters and the selected metrics.

Tips & Things to Know

  • A dash is not a zero. When the denominator is 0 or empty, the cell shows . When the numerator is 0 but the denominator is real, you get 0.00%. Read a dash as "no data reported", not "nobody engaged".

  • Delivery Rate follows the same rule. If Delivered is 0, Delivery Rate shows a dash rather than 0% — not every gateway sends delivery receipts, and 0% would wrongly read as "nothing arrived".

  • Campaign Status defaults to Started. Add Stopped, Paused or Archived to the filter when you're analysing campaigns that have already finished.

  • Skipped messages are invisible here. Messages that were never sent because of an unsubscribe or a frequency cap are not part of Sent and do not show up in any column.

  • Data is refreshed on a schedule, with a delay of up to an hour. If a send you just triggered isn't there yet, wait for the next refresh before investigating.

  • Rates are rounded to two decimal places.

Did this answer your question?