> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# August 2026

> View the August 2026 release notes covering new features and enhancements to the MoEngage platform.

## Analytics Agent

The Analytics Agent is a Custom Agent that answers analytics questions in plain English and returns a real answer, without you needing to know which module or analysis type to open. Ask it what you want to know, and it selects the right analysis, runs it, and returns a plain-language summary of what was checked, the audience and time window, the headline number, and what it suggests. The agent:

* **Routes to the right analysis automatically**: Picks between Behaviour, Funnel, Retention, Session & Source, and User Analysis based on what you are asking.
* **Distinguishes people from actions**: Keeps "how many users opened the app" separate from "how many times the app was opened," and makes the distinction explicit in every answer.
* **Returns a cohort table for retention**: Retention questions come back with a day-by-day cohort table (Day 0, Day 1, Day 2, and so on) alongside the summary.
* **Does not split by sensitive data**: If you ask it to break down by email or phone number, it says so and offers a safe alternative instead.
* **Asks instead of guessing**: When a request could mean two different things, it asks one clarifying question rather than picking one silently.

The agent covers all five Analytics modules and is built on the Custom Agent framework. It is live on DC-01 to DC-04 and DC-101. To use it, go to **AI Agents > Create from Scratch > Analytics Agent**. The agent currently answers in tables and plain-language summaries; chart-rendered output is planned.

For more information, refer to [Custom Agents: Overview](/docs/user-guide/ai-and-intelligence/merlin-ai/custom-agents/custom-agents-overview).

## PGP Encryption for Message Archival

Message Archival now supports Pretty Good Privacy (PGP) encryption as an alternative to Key Management Service (KMS) encryption, extending encryption to both your own Amazon S3 bucket and your SFTP server. With PGP encryption:

* **Bring your own key**: Share a PGP public key with MoEngage, and every archived message is encrypted with it before it is written out, with no dependency on AWS-managed KMS keys.
* **SFTP support**: PGP is the first encryption option MoEngage supports for messages archived to an SFTP server, a destination KMS never covered.
* **Own S3 bucket support**: PGP also works for messages archived to your own S3 bucket, giving you a choice between KMS and PGP there. Archival to a MoEngage-owned S3 bucket is not supported.
* **Transparent file handling**: Newly archived files carry the PGP file extension, and your existing file path and naming convention stay as configured.
* **Resilience on key expiry**: If your PGP key expires or the connection to your S3 or SFTP destination breaks, MoEngage holds messages in an internal retry queue for up to 30 days and flushes them once a valid key or connection is restored.

PGP encryption is available for messages archived via Email, SMS, Push, and RCS. Once PGP is enabled, the **View sent message** option on the dashboard stops working for all archived messages, including messages archived before the switch, because MoEngage can no longer decrypt content to render it. The encryption type is chosen at Message Archival setup and is not self-served afterward. Contact your CSM or the MoEngage Support team to switch an existing account to PGP or to set it up for a new configuration.

For more information, refer to [Message Encryption](/docs/user-guide/campaigns-and-channels/campaign-management-and-reports/message-archival/message-archival#message-encryption).

## Limit Messages for Periodic and Triggered Campaigns

You can now cap how many times an individual user receives a specific Periodic or Event-Triggered campaign within a time window you define, directly from Delivery Controls and without custom attributes or manual tracking logic. This control:

* **Sets per-user send caps**: Configure "no more than \[X] messages in \[Y] Days/Weeks/Months/Year" per campaign, up to 100 messages over a window of up to 1 year.
* **Uses a true sliding window**: The limit recalculates at every send attempt based on the trailing window from the user's last successful receive, not a fixed calendar reset.
* **Counts per platform for Push and Cards**: Android, iOS, and Web are tracked independently, so hitting the cap on one platform does not block sends on the others.
* **Works alongside Frequency Capping**: This is an independent control; turning it on does not change Frequency Capping behavior, and vice versa.
* **Is safe to edit live**: Update the count or window on active campaigns anytime. This creates a new campaign version, and in-flight users' countdowns adjust to the new frequency.
* **Reports dropped users**: Users dropped for hitting their limit appear as a distinct category in the campaign's Error Breakdown under Failed to Send.

The control supports Periodic and Event-Triggered campaigns across Push, SMS, WhatsApp, Email, and Connectors; Cards are supported for Periodic campaigns only. It works on both new and existing campaigns and does not apply to transactional campaigns or Flows. The control is off by default. Enable it under **Delivery Control > Limit messages per user** in Step 3 of the campaign creation flow. This feature is available for Enterprise pricing plan clients.

For more information, refer to [Limit Messages for Periodic and Triggered Campaigns](/docs/user-guide/settings/channels/delivery-controls/limit-messages-for-periodic-and-triggered-campaigns).

## Segmentation Assistant Custom Agent

The Segmentation Assistant is a Custom Agent that turns a plain-English request into a precise, confirmed segment, reasoning over your real workspace data at every step and creating nothing without your sign-off. The agent:

* **Speaks marketer, not query language**: Returns a scannable brief of audience conditions, assumptions, and next steps in plain English.
* **Understands affinity and behavior**: Recognizes preference language such as "mainly watch documentaries" or "affinity for Nike" as a behavioral pattern, not a one-off event.
* **Reuses and extends existing segments**: Recognizes references to your existing segments, pulls in their logic, and layers new conditions on top.
* **Names collision-safe**: Checks a suggested segment name against existing names and proposes a clear alternative if it is taken.
* **Matches case-insensitively**: Checks live attribute values and, if the exact casing is not confirmed, matches all variants by default and flags the assumption.
* **Converts real-world units**: Checks how a value is stored and converts it correctly, such as hours to seconds or dollars to cents.
* **Flags retention-window risk**: Warns when a historical window you reference may fall outside your workspace's data retention setting.
* **Catches contradictions and empty segments**: Stops and asks when conditions cannot both be true or would match everyone.
* **Suggests proxies**: Proposes the closest real alternative in your data when no exact field exists, and confirms before using it.
* **Previews before you commit**: Shows the reachable audience by channel, with PII masked per your role, before anything is created.

The agent is live on DC-01 to DC-04, with DC-101 planned.

For more information, refer to [Custom Agents: Overview](/docs/user-guide/ai-and-intelligence/merlin-ai/custom-agents/custom-agents-overview).

## Bot Management for Email

Bot Management for Email has been enhanced and moved to its own home at **Settings > Bot Management > Email**, repositioned as a channel-agnostic settings surface built to extend to other channels as bot detection expands. This release adds:

* **Bot click detection**: Detect and filter bot clicks, such as links pre-clicked by security scanners, which was not possible before.
* **Workspace-level IP and User Agent configuration**: Configure your own IP and User Agent blocklists on top of MoEngage's maintained defaults, tailored to your audience and industry.
* **MoEngage-maintained defaults**: Curated lists of known bot IP ranges and User Agent patterns are applied automatically from day one, with no setup required.

Detection is multi-layered, covering Apple MPP opens (SendGrid and NetCore), IP and User Agent matching, and behavioral heuristics arriving later this quarter. Any layer can independently classify an event as a bot. Unsubscribe requests are honored by default even when the triggering click is classified as a bot; you can override this in settings.

In reporting, you choose whether adjusted metrics display alongside total metrics or replace them entirely, applied uniformly to opens and clicks. Every open and click event carries **Is Machine Open**/**Is Machine Event** and **Machine Event Reason** attributes for use in filtering, segmentation, and analysis. Once enabled, MoEngage's default rules activate from day one, and open and click metrics will likely dip because they then represent real human interaction.

For more information, refer to [Bot Detection for Email Opens and Clicks](/docs/user-guide/settings/channels/bot-detection-settings/bot-detection-for-email-opens-and-clicks).

## Revamped Data APIs

The backend powering the Data APIs has been revamped and is GA across all data centers, with lower P99 response times and improved reliability. Alongside the internal improvements, the following customer-facing changes are worth noting:

* **Rate limit handling**: Data API endpoints return rate limit headers on every response, so your integration can track remaining capacity in real time instead of waiting for a 429 error.
* **Faster data loss analysis**: Every API response now includes a request ID, even on a success response, which can be used to filter the relevant payloads in MoEngage's internal logs.
* **Get User API behind a sentry**: To reduce the risk of exporting sensitive user data, you now need to raise a support ticket to enable the Get User API for your workspace.
* **IP whitelisting for Data APIs**: You can opt in to whitelisting the IPs that can access Data APIs for more control.
* **Additional datetime support**: The `YYYY-MM-DD` datetime format is now supported, including for the US (NA) region and partner integrations that use it by default.
* **`update_existing_only` support**: The User and Event APIs support updating existing users only, without creating new users.
* **Non-ASCII character ingestion**: Data APIs allow ingesting multi-lingual characters, in parity with File imports.

For more information, refer to [Data Overview](/docs/api/data/data-overview). For details on restricting API access by IP, refer to [IP Whitelisting in MoEngage](/docs/user-guide/settings/account/security/ip-whitelisting-in-moengage#ip-whitelisting-for-data-apis).

## Multi-Agent Coordination for Custom Agents

Custom Agents now support multi-agent coordination. Within a single session, an agent can delegate to other agents, sub-agents can run in parallel, and the parent agent consolidates the output. This turns single-purpose agents into composable building blocks. Multi-agent coordination is live on DC-01 and DC-03, rolling out to more data centers.

Since the last update, Custom Agents also added:

* **Scheduling and notifications**: Daily and weekly triggers, with email notifications on task completion.
* **Model tier selection**: An Agent Mode setting (Fast, Balanced, Pro), with Sonnet 5 as the default.
* **Workspace-level memory**: Agents retain context across sessions at the tenant and workspace level.
* **New MoEngage tools and actions**: Agents can act on User Analytics, Flows, Custom Segments, Catalog discovery, Offerings, and custom and email Templates.

Custom Agents are live on DC-01 to DC-04 and DC-101.

For more information, refer to [Build Multi-Agent Workflows](/docs/user-guide/ai-and-intelligence/merlin-ai/custom-agents/build-multi-agent-workflows).
