> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://contentful.com/developers/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://contentful.com/developers/docs/_mcp/server.

# Insights

> Insights help you understand the reach and performance of your content and experiences.

## Overview

Measuring the performance of your personalized experiences is essential for making data-driven decisions. Contentful Personalization provides Insights — a suite of tools for analyzing content performance based on the events your application sends.

## How Insights works

Insights is powered by the following types of data:

1. **Component impression events**: Tracked automatically by the [Insights plugin](/personalization/insights-plugin) when a personalized component enters the visitor's viewport. The plugin uses the Beacon API to record which variant a visitor saw, for how long, and whether they clicked it.

2. **Conversion events**: Tracked by your application using the `track()` method. When a visitor completes a business action (such as a signup or purchase), you send a `track` event that Insights attributes to the experience variant the visitor was shown.

Together, these let you answer: "Which variant of my hero banner led to more signups?"

## Set up Insights

To set up Insights:

1. Install and configure the [Insights plugin](/personalization/insights-plugin) (`@ninetailed/experience.js-plugin-insights`). This handles component view, click, and hover tracking automatically for any component wrapped in `<Experience>` or `<EntryAnalytics>`.

2. Add `track()` calls for your conversion events. See [Insights tracking](/personalization/insights-tracking) for details.

3. Create metrics in the Contentful Personalization app that define how to measure and attribute your `track` events. See the [Set up metrics](https://www.contentful.com/help/personalization/metrics/set-up-metrics/) page for metric configuration.

> **Info**
>
> You can validate your implementation by observing all incoming events with [Live Events](https://www.contentful.com/help/personalization/live-events/) in the Optimization tab of the Contentful web app.

## Why Insights matters for experiments

Without Insights data, experiments cannot produce statistically valid results. The system needs both impression data (who saw which variant) and conversion data (who took the desired action) to calculate which variant performs better.

This means:

* The **Insights plugin is effectively required** for any experimentation program.
* **Server-only setups** (with no client SDK) cannot track component views because there is no browser viewport so experiment results will be incomplete.
* The recommended approach for experiments is a **hybrid** setup with the client SDK and Insights plugin handling measurement.

## Custom analytics

You can also use [Analytics](https://www.contentful.com/help/analytics/) to check how your personalization events are performing, or send them to your own analytics tools using the [Google Tag Manager plugin](/personalization/google-tag-manager-plugin) or the [Segment plugin](/personalization/segment-plugin). These can run alongside Insights, you don't have to choose one or the other.