# Understanding CampaignMatches

## What is a CampaignMatch?

A **CampaignMatch** occurs when the UTM parameters in a visitor's URL match the rules configured in your MatchAgent. When a match is detected, mapped page elements — H1, subhead, CTA, badges, sections — are automatically swapped with campaign-specific copy.

MessageMatch uses only first-party URL data (the UTMs in the address bar) to trigger personalization. No cookies or third-party data are used. External integrations can extend this capability — see Integrations for details.

A visit will not qualify a CampaignMatch if: required UTMs are missing or don't match, a referrer condition exists without a corresponding UTM match, an exclusion rule applies, or the target element is not found on the page.

In **Analytics**, you’ll see counts flow **Views → Eligible Views → CampaignMatch Views**, with performance by source/campaign/term; if [**Rematches**](/messagematch-docs/readme/key-terms/understanding-rematches-1.md) are on, you’ll also get **per-variant** impressions, CTR, conversions, and **win rate**.

### How it works (matching & changes)

* **Requirements:** Any one of the UTM keys/values in the MatchAgents URL allowed list must be present (e.g., `utm_source=google`, optional `utm_campaign` match).
* **Targeting scope:** Only mapped elements change; the rest of the page remains untouched.
* **Disqualifiers:** Missing required UTMs, referrer condition without UTMs, excluded audiences, or target elements not found.

### When to use

* You want campaign-specific messaging without cloning pages.
* You need clear attribution from campaign → on-page copy → conversions.
* You’re preparing a solid baseline before enabling **Rematches** (split tests).

### QA & testing

* Append UTMs to your URL (e.g., `?utm_source=google&utm_campaign=pricing_search`).
* Verify each mapped element updates; if not, check selectors and rule values.
* Keep a control/baseline (no UTM match) for quick comparisons.
  * \*Baseline copy is automatically cycled through when leveraging Rematches.

### Analytics & recommendations

* **Counts:** Views → **Eligible Views** → **CampaignMatch Views** (subset where content changed).
* **Performance:** CTR, conversions for CampaignMatches by campaign/source/term.
* **Insights:** The dashboard highlights top campaigns, flags underperformers, and recommends next actions (extend/pause windows, refine rules, or add **Rematch** variants) based on lift and traffic patterns.

### Troubleshooting (quick)

* **No change on page:** Required UTM missing/mismatched; element not mapped correctly; agent not deployed.
* **Rule matches in preview but not live:** CDN/page cache; purge and retest.
* **Unexpected matches:** Tighten rules (use equals vs. contains) or add referrer qualifier.

💬 **Need help?** Submit a support ticket from the dashboard — click the support icon in the upper right corner.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://messagematch.gitbook.io/messagematch-docs/readme/key-terms/understanding-rematches.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
