# Tracking Marketing Campaigns

Campaign Tracker is a powerful marketing attribution tool in Easy Digital Downloads Pro that automatically captures UTM parameters from visitor URLs and associates them with orders at checkout. This provides valuable insights into which marketing campaigns, traffic sources, and channels are driving revenue for your digital store.

- [What is Campaign Tracker?](#what-is-campaign-tracker)
- [Getting Started](#getting-started)
- [How Campaign Tracking Works](#how-campaign-tracking-works)
- [Creating UTM Links](#creating-utm-links)
- [Viewing Campaign Data](#viewing-campaign-data)
- [Campaign Reports](#campaign-reports)
- [Exporting Campaign Data](#exporting-campaign-data)
- [Using Campaign Data in Emails](#using-campaign-data-in-emails)
- [Troubleshooting](#troubleshooting)
- [Best Practices](#best-practices)
- [Frequently Asked Questions](#frequently-asked-questions)



What is Campaign Tracker?
-------------------------

Campaign Tracker monitors the UTM parameters (tracking codes) in the URLs that bring visitors to your site. When someone arrives through a marketing link and makes a purchase, Campaign Tracker records where they came from and which campaign brought them to your store.

### Key Benefits

- **Track Marketing ROI**: See exactly which campaigns generate the most revenue
- **Make Data-Driven Decisions**: Know which marketing channels deserve more investment
- **Understand Customer Journey**: Discover which marketing touchpoints lead to conversions
- **Optimize Campaign Performance**: Identify your top-performing campaigns and improve underperforming ones
- **Export for Analysis**: Download campaign data for deeper analysis or reporting

### What Gets Tracked

Campaign Tracker captures five standard UTM parameters:

Parameter What it Tracks Example Values `utm_campaign`The specific marketing campaign summer\_sale\_2024, product\_launch `utm_source`Where the traffic came from google, facebook, newsletter `utm_medium`The type of marketing channel cpc, email, social, organic `utm_term`Keywords for paid search campaigns wordpress plugin, digital downloads `utm_content`Specific ad or link variation blue\_button, header\_banner ---

Getting Started
---------------

### Enabling Campaign Tracker

Campaign Tracker is available exclusively in Easy Digital Downloads Pro.

#### For New Pro Installations

Campaign Tracker is **enabled by default** on new Pro installations, so you can start tracking campaigns immediately.

#### For Existing Pro Sites

To enable Campaign Tracker on an existing Pro site:

1. Navigate to **Downloads &gt; Settings**
2. Click on the **Marketing** tab
3. Scroll to the **Campaign Tracking** section
4. Check the box labeled **“Track Google Analytics UTM parameters on orders”**
5. Click **Save Changes**

![The Campaign Tracking toggle in Downloads &gt; Settings &gt; Marketing](https://easydigitaldownloads.com/wp-content/uploads/2025/12/CleanShot-2025-12-23-at-152229-800x491.png)*The Campaign Tracking toggle in Downloads &gt; Settings &gt; Marketing*#### For Users of the Standalone Plugin

If you were previously using the standalone Campaign Tracker plugin:

- When you update to EDD Pro with built-in Campaign Tracker, the feature will **automatically be enabled**
- The standalone plugin will be **automatically deactivated**
- All your existing campaign data will **remain intact** and accessible
- You can safely delete the standalone plugin after migration
- The legacy standalone plugin will no longer be updated

---

How Campaign Tracking Works
---------------------------

### The Tracking Process

1. **Visitor Arrives**: A customer clicks a marketing link with UTM parameters:`https:&lt;em&gt;//yourstore.com/?utm_source=facebook&amp;utm_medium=social&amp;utm_campaign=summer_sale&lt;/em&gt;`
2. **Parameters Captured**: Campaign Tracker automatically captures the UTM parameters and stores them in the visitor’s browser session
3. **Order Created**: When the visitor completes a purchase, the campaign information is permanently saved to that order
4. **Data Available**: You can now view this campaign data in order details, reports, and exports

### Attribution Model

Campaign Tracker uses a **first-touch attribution** model:

- The **first** campaign a visitor arrives through is recorded
- If they return through different campaigns before purchasing, the original campaign is still credited
- This helps you understand which campaigns initially attract customers to your store

### Google Analytics Integration

Campaign Tracker can also parse campaign data from Google Analytics cookies (`__utmz`) as a fallback when UTM parameters aren’t present in the URL. This provides additional coverage for campaign attribution.

---

Creating UTM Links
------------------

To track campaigns, you need to add UTM parameters to your marketing links. Here’s how:

### Manual Method

Add parameters to the end of your URL:

```
https://yourstore.com/downloads/my-product/?utm_source=facebook&amp;utm_medium=social&amp;utm_campaign=summer_sale
```

### Using URL Builders

Most marketing platforms provide URL builders:

- **Google’s Campaign URL Builder**: Search for “Google Campaign URL Builder”
- **Facebook Ads Manager**: Automatically adds UTM parameters
- **Email Marketing Services**: Most have built-in UTM link builders

### Best Practices for UTM Links

1. **Use Consistent Naming**: Choose a naming convention and stick to it
    - Use lowercase: `summer_sale_2024` not `Summer Sale 2024`
    - Use underscores or hyphens: `email_campaign` or `email-campaign`
2. **Be Descriptive**: Make campaign names meaningful
    - Good: `utm_campaign=email_newsletter_june_2024`
    - Bad: `utm_campaign=email1`
3. **Include All Three Core Parameters**:
    - Always use: `utm_source`, `utm_medium`, and `utm_campaign`
    - Use `utm_content` to test different ad variations
    - Use `utm_term` for paid search keywords

### Example UTM Links

**Email Newsletter:**

```
?utm_source=newsletter&amp;utm_medium=email&amp;utm_campaign=weekly_digest_2024
```

**Facebook Ad:**

```
?utm_source=facebook&amp;utm_medium=social&amp;utm_campaign=product_launch&amp;utm_content=video_ad
```

**Google Search Ad:**

```
?utm_source=google&amp;utm_medium=cpc&amp;utm_campaign=brand_search&amp;utm_term=easy+digital+downloads
```

**Twitter Post:**

```
?utm_source=twitter&amp;utm_medium=social&amp;utm_campaign=feature_announcement
```

---

Viewing Campaign Data
---------------------

### On Individual Orders

Every order that has campaign data will display it in a dedicated Campaign tab.

To view campaign information for a specific order:

1. Go to **Downloads &gt; Orders**
2. Click on any order to view its details
3. Click the **Campaign** tab

![](https://easydigitaldownloads.com/wp-content/uploads/2025/12/CleanShot-2025-12-23-at-152711-800x280.png)*The Campaign tab in order details shows attribution data*The Campaign tab displays:

- **Campaign Name**: The `utm_campaign` value (e.g., “summer\_sale\_2024”)
- **Traffic Source**: The `utm_source` value (e.g., “facebook”, “google”)
- **Medium**: The `utm_medium` value (e.g., “cpc”, “email”, “social”)
- **Search Terms**: The `utm_term` value (if applicable)
- **Ad Content**: The `utm_content` value (if applicable)

If an order doesn’t have campaign data, the tab will show “No campaign information available.”

---

Campaign Reports
----------------

Campaign Tracker includes a comprehensive reports section that provides insights into campaign performance.

### Accessing Campaign Reports

1. Navigate to **Downloads &gt; Reports**
2. Click on **Campaigns** in the left sidebar menu

![](https://easydigitaldownloads.com/wp-content/uploads/2025/12/CleanShot-2025-12-23-at-152850-800x435.png)*The Campaign Tracker reports page showing performance metrics and detailed campaign data*### Report Components

#### Performance Tiles

At the top of the reports page, you’ll see three key performance indicators:

1. **Top Campaign by Orders**: Which campaign generated the most orders
2. **Top Campaign by Revenue**: Which campaign generated the most revenue
3. **Top Campaign by AOV**: Which campaign has the highest average order value

These tiles show data for the selected date range and include comparison to the previous period.

#### Campaign Sources Table

The main table shows detailed performance data for each campaign, broken down by source and medium combinations:

**Columns:**

- **UTM Campaign**: The campaign name
- **UTM Source**: The traffic source (google, facebook, newsletter, etc.)
- **UTM Medium**: The marketing medium (cpc, email, social, etc.)
- **Orders**: Number of orders from this campaign/source/medium combination
- **Gross Sales**: Total revenue generated
- **Average Order**: Average order value for this combination

**Table Features:**

- **Sortable Columns**: Click any column header to sort by that metric
- **Percentage Changes**: Shows increase/decrease compared to the previous period
- **Color Coding**: Green for increases, red for decreases

### Date Filtering

Use the date picker at the top of the reports page to analyze specific time periods:

1. Select a preset range (**Today**, **Last 7 Days**, **Last 30 Days**, **Month to Date**, etc.)
2. Or choose **Custom** and select specific start/end dates
3. Choose a comparison period (Previous period, Previous year, etc.)
4. Click **Filter** to update the report

### Campaign Filtering

Filter the report to show data for a specific campaign:

1. Click the **All Campaigns** dropdown
2. Select a specific campaign name
3. The report will show only data for that campaign

---

Exporting Campaign Data
-----------------------

Campaign Tracker provides two CSV export options for deeper analysis or use in external tools.

### Accessing Exports

1. Navigate to **Downloads &gt; Reports**
2. Click on **Export** in the left sidebar menu
3. Scroll down to the campaign export sections

![](https://easydigitaldownloads.com/wp-content/uploads/2025/12/CleanShot-2025-12-23-at-153019.png)*The campaign export options in the Reports &gt; Export section*

### Export Campaign Orders

Exports a CSV file containing all orders with campaign data.

**To export:**

1. Find the **Export Campaign Orders** section
2. Select a campaign from the dropdown (or choose “All Campaigns”)
3. Set your date range using the From/To fields
4. Click **Generate CSV**

**The export includes:**

- Order number and date
- Customer name and email
- Order total
- Campaign name (`utm_campaign`)
- Traffic source (`utm_source`)
- Medium (`utm_medium`)
- Search terms (`utm_term`)
- Ad content (`utm_content`)

**Use cases:**

- Calculate ROI by matching revenue to campaign costs
- Import into spreadsheets for custom analysis
- Share campaign performance data with team members
- Create custom reports in BI tools

### Export Campaign Customers

Exports a CSV file containing unique customers with aggregated campaign purchase data.

**To export:**

1. Find the **Export Campaign Customers** section
2. Select a campaign from the dropdown (or choose “All Campaigns”)
3. Set your date range
4. Click **Generate CSV**

**The export includes:**

- Customer name and email
- Date of first purchase
- Total number of orders
- Total revenue from this customer
- Campaign information from their first purchase (attribution)

**Use cases:**

- Identify which campaigns attract the most valuable customers
- Calculate customer lifetime value by campaign
- Build targeted email lists based on campaign attribution
- Analyze repeat purchase behavior by acquisition source

---

Using Campaign Data in Emails
-----------------------------

Campaign Tracker includes an email template tag that allows you to display campaign information in your email notifications.

### The {campaign\_info} Tag

Add `{campaign_info}` to any email template to show campaign attribution data.

**How to use it:**

1. Go to **Downloads &gt; Settings &gt; Emails**
2. Select the email template you want to edit
3. Add `{campaign_info}` anywhere in the template
4. Save your changes

**Example template usage:**

```
Thank you for your purchase!

&lt;strong&gt;Order&lt;/strong&gt; &lt;strong&gt;Details&lt;/strong&gt;:
{download_list}

Your &lt;strong&gt;order&lt;/strong&gt; &lt;strong&gt;total&lt;/strong&gt;: {price}

Campaign Information:
{campaign_info}
```

**What customers see:**

If the order has campaign data:

```
Campaign Information:
Campaign: summer_sale_2024
Source: facebook
Medium: social
```

If no campaign data exists, the tag displays nothing (no error message).

**Typical use cases:**

- Internal order notifications to track marketing performance
- Detailed customer receipts that include attribution
- Administrative reports sent to team members
- Custom order confirmation emails

---

Troubleshooting
---------------

### Campaign Data Not Appearing on Orders

**Check these items:**

1. **Is Campaign Tracker enabled?**
    - Go to **Downloads &gt; Settings &gt; Marketing**
    - Verify the Campaign Tracking checkbox is enabled and saved
2. **Are you using UTM parameters in your links?**
    - Verify your marketing links include UTM parameters
    - Test with: `yoursite.com/?utm_source=test&amp;utm_medium=test&amp;utm_campaign=test`
3. **Clear your browser and test with a fresh session**
    - Campaign data is captured on first visit
    - Clear cookies and cache
    - Visit through a UTM link
    - Complete a test purchase
4. **Check for caching issues**
    - Some cache plugins may cache pages with UTM parameters
    - Try temporarily disabling your cache plugin
    - Configure cache to exclude URLs with UTM parameters

### Old Orders Don’t Show Campaign Data

This is **expected behavior**. Campaign Tracker only tracks orders placed after the feature is enabled.

**Exception**: If you previously used the standalone Campaign Tracker plugin, those historical orders will have campaign data after migrating to Pro.

### Reports Show “No Data Available”

**Possible reasons:**

1. **No campaign orders yet**: Campaign Tracker only reports on orders with campaign data
2. **Date range too narrow**: Expand your date range to include campaign orders
3. **Feature recently enabled**: Wait until customers complete purchases through UTM links

### Empty CSV Exports

Empty exports mean there are no orders with campaign data in the selected:
\- Date range
\- Campaign filter (if applied)

**To resolve:**
\- Verify orders exist with campaign data in **Downloads &gt; Orders**
\- Adjust your date range to include known campaign orders
\- Try selecting “All Campaigns” instead of a specific campaign

### Caching and Cookie Issues

Campaign Tracker uses browser sessions to store campaign data. Some configurations can interfere:

**Recommended cache settings:**

- **WP Rocket**: Add `(.*)utm_(.*)$` to “Never Cache URLs”
- **W3 Total Cache**: Add `utm_` to “Rejected URL Strings”
- **WP Super Cache**: Add `utm_` to “Rejected URL Strings”

**Session limitations:**

Campaign data may be lost if customers:
\- Clear cookies between visits
\- Switch devices (mobile to desktop)
\- Use private/incognito browsing mode

This is a limitation of session-based tracking, not a bug.

---

Best Practices
--------------

### Campaign Naming Conventions

1. **Use Lowercase**: Prevents `Summer_Sale` and `summer_sale` being treated as different campaigns
2. **Use Separators**: Use underscores (`_`) or hyphens (`-`) instead of spaces
3. **Be Descriptive**: `email_newsletter_june_2024` is better than `email1`
4. **Stay Consistent**: Use the same format across all campaigns

### Tracking Strategy

1. **Track Everything**: Add UTM parameters to all marketing links
    - Email campaigns
    - Social media posts
    - Paid advertising
    - Affiliate links
    - Content marketing
2. **Test Campaign Links**: Before launching campaigns, test your UTM links
    - Click through and make a test purchase
    - Verify campaign data appears on the order
    - Check that parameters are spelled correctly
3. **Document Your Campaigns**: Keep a spreadsheet of active campaigns
    - Campaign name
    - Source/Medium
    - Launch date
    - Marketing costs
    - Target metrics

### Analysis Workflow

1. **Review Weekly**: Check Campaign Tracker reports every week
2. **Compare Time Periods**: Use date filters to compare month-over-month performance
3. **Calculate ROI**: Export campaign orders and compare revenue to campaign costs
4. **Optimize Ongoing**: Invest more in high-performing campaigns, adjust or pause low performers
5. **Test Variations**: Use `utm_content` to test different ad creatives or email subject lines

### Example Campaign Organization

**Naming structure:** `channel_campaigntype_date`

```
utm_source=facebook
utm_medium=social
utm_campaign=fb_product_launch_2024_q1

utm_source=newsletter
utm_medium=email
utm_campaign=email_weekly_digest_2024_jan

utm_source=google
utm_medium=cpc
utm_campaign=google_brand_search_2024
```

---

Frequently Asked Questions
--------------------------

### Does Campaign Tracker work with Google Analytics?

Yes! Campaign Tracker works alongside Google Analytics:

- Both can track the same UTM parameters
- Campaign Tracker stores data in WordPress (not dependent on external services)
- Can parse Google Analytics `__utmz` cookies as a fallback
- Provides store-specific attribution that complements GA data

### Can I track campaigns without UTM parameters?

No. Campaign Tracker specifically monitors UTM parameters in URLs. To benefit from this feature, you need to add UTM parameters to your marketing links.

Most marketing platforms (Facebook Ads, Google Ads, email services) support UTM parameters natively or through their link builders.

### What if a customer visits through multiple campaigns?

Campaign Tracker uses **first-touch attribution**:

- The first campaign a visitor arrives through is recorded
- Even if they return through different campaigns, the original campaign receives credit
- This helps identify which campaigns initially attract customers

### Does Campaign Tracker slow down my site?

No. Campaign Tracker is designed for minimal performance impact:

- UTM parameters are captured only on first page load
- Data is stored in lightweight browser sessions
- When disabled, no hooks are registered (zero overhead)
- Database queries are optimized and indexed

### Can I use this with affiliate programs?

Campaign Tracker tracks UTM parameters. If your affiliate links include UTM parameters, they will be tracked. However:

- For affiliate-specific tracking, we recommend using [AffiliateWP](https://affiliatewp.com)
- You can use Campaign Tracker alongside affiliate tools
- Consider using `utm_source=affiliate_name` in your affiliate links

### How do I track social media posts?

Add UTM parameters to links in your social media posts:

**Facebook:**

```
yoursite.com/product/?utm_source=facebook&amp;utm_medium=social&amp;utm_campaign=product_feature
```

**Twitter:**

```
yoursite.com/sale/?utm_source=twitter&amp;utm_medium=social&amp;utm_campaign=flash_sale
```

**LinkedIn:**

```
yoursite.com/download/?utm_source=linkedin&amp;utm_medium=social&amp;utm_campaign=b2b_outreach
```

### Can I see which specific products sell best through each campaign?

The built-in reports show overall campaign performance (total revenue and orders). To analyze specific products:

1. Export campaign orders to CSV
2. Open in Excel or Google Sheets
3. Filter or pivot by product name
4. Analyze which products perform best in each campaign

### What happens during the migration from the standalone plugin?

The migration is automatic and seamless:

1. EDD Pro detects the standalone plugin
2. Verifies data integrity
3. Enables Campaign Tracker in Pro
4. Deactivates the standalone plugin
5. Shows an admin notice confirming migration

**All existing data remains intact** - both versions use identical database fields.

---

Summary
-------

Campaign Tracker provides powerful marketing attribution for your Easy Digital Downloads store:

- **Enable** it in Downloads &gt; Settings &gt; Marketing
- **Create** UTM links for all your marketing campaigns
- **View** campaign data on individual orders and in comprehensive reports
- **Export** data for deeper analysis and ROI calculation
- **Optimize** your marketing based on real revenue data

By tracking which campaigns drive sales, you can make data-driven decisions about where to invest your marketing budget and focus your efforts on what actually works.

---

*Campaign Tracker is a Pro feature included with Easy Digital Downloads Pro. Requires EDD Pro 3.6.3 or higher.*