The Mystery: PANTHEON_STRIPPED Appearing in Your Analytics
You’re running a successful digital marketing campaign, carefully tracking UTM parameters, when you notice something strange in Google Analytics: instead of your clean utm_source=google
parameters, you’re seeing PANTHEON_STRIPPED
scattered throughout your reports.
Common scenarios we hear from clients:
“For our landing page submissions, most of them have ‘Pantheon stripped’ noted. We want to ensure those are being attributed properly – can you help determine why those are displaying that way in Gravity Forms?”
~ Confused WordPress developer
“Google Analytics is showing PANTHEON_STRIPPED in the utm_source URL parameter. What’s going on with our campaign tracking?”
~ Frustrated Digital Marketer
If you’re hosting on Pantheon and seeing this issue, you’re not alone. This isn’t a bug – it’s actually Pantheon’s edge caching system doing exactly what it’s designed to do, but interfering with your marketing attribution.
What Is PANTHEON_STRIPPED?
PANTHEON_STRIPPED is Pantheon’s way of handling UTM parameters for caching efficiency.
Pantheon automatically processes URLs with UTM parameters (utm_source
, utm_medium
, utm_campaign
, etc.) through its “stripping logic” to normalize URLs for better caching performance. While this improves site speed, it can break marketing attribution tracking.
Why Pantheon does this:
- Improved caching: Multiple URLs with different UTM parameters would create separate cache entries
- Better performance: Fewer cache variations mean faster page loads
- Reduced server load: Less processing needed for parameter variations
The trade-off: Your marketing attribution gets muddy when parameters are stripped.
How PANTHEON_STRIPPED Breaks Your Marketing Data
Scenario 1: WordPress Plugin Data Collection
The problem: Gravity Forms (or other plugins like Monster Insights) showing “PANTHEON_STRIPPED” instead of actual UTM values.
What happens:
- First visit: User arrives with
utm_source=google&utm_medium=cpc
- Pantheon processing: URL gets normalized for caching
- Plugin data collection: Gravity Forms reads the current URL to populate hidden fields
- Result: Instead of “google”, the form captures “PANTHEON_STRIPPED”
Real example:
Original URL: https://yoursite.com/contact/?utm_source=google&utm_medium=cpc
Cached URL: https://yoursite.com/contact/?utm_source=PANTHEON_STRIPPED
Form Data: Source = "PANTHEON_STRIPPED" instead of "google"
Scenario 2: Google Analytics Attribution
The problem: GA4 reports showing PANTHEON_STRIPPED in campaign reports.
What happens:
- Marketing campaign: Ads point to URLs with UTM parameters
- 301 PHP redirects: Old URLs redirect to new pages, carrying UTM parameters through
- Pantheon processing: UTM parameters get stripped during redirect
- Analytics tracking: GA4 receives PANTHEON_STRIPPED instead of original values
Real example:
Ad URL: https://yoursite.com/contact/?utm_source=google&utm_campaign=hosting_demo
Redirect: 301 to https://yoursite.com/contact-us/
Final URL: https://yoursite.com/contact-us/?utm_source=PANTHEON_STRIPPED
GA4 Data: Campaign = "PANTHEON_STRIPPED"
Common Causes and Solutions
Cause 1: Outdated Marketing URLs with Redirects
The situation: Your ads still point to old URLs that redirect to new pages.
Example scenario:
- Current page:
/contact-us/
- Old page:
/contact/
(redirects to/contact-us/
) - Ad URLs: Still pointing to
/contact/?utm_source=google
- Result: UTM parameters get stripped during a PHP redirect process
Solution: Update Your Marketing URLs
- Audit all campaign URLs in Google Ads, Facebook Ads, email campaigns
- Update to point directly to current pages (no redirects)
- Test new URLs to ensure UTM parameters pass through correctly
Before:
https://yoursite.com/contact/?utm_source=google&utm_medium=cpc
After:
https://yoursite.com/contact-us/?utm_source=google&utm_medium=cpc
Cause 2: Plugin Parameter Capture Timing
The situation: WordPress plugins capturing UTM data after Pantheon has processed the URL.
Solution: Capture UTM Parameters with JavaScript
Instead of relying on server-side URL reading, capture parameters client-side before they’re processed:
javascript
// Add this to your website to capture original UTM parameters
function getOriginalUTMParameters() {
const urlParams = new URLSearchParams(window.location.search);
return {
utm_source: urlParams.get('utm_source'),
utm_medium: urlParams.get('utm_medium'),
utm_campaign: urlParams.get('utm_campaign'),
utm_term: urlParams.get('utm_term'),
utm_content: urlParams.get('utm_content')
};
}
// Store in sessionStorage for form population
const utmParams = getOriginalUTMParameters();
if (utmParams.utm_source) {
sessionStorage.setItem('original_utm_source', utmParams.utm_source);
}
Cause 3: Overloading UTM Parameter Namespace
The situation: Using UTM parameters for purposes other than marketing attribution.
What not to do:
https://yoursite.com/page/?utm_source=internal_navigation
https://yoursite.com/page/?utm_medium=menu_click
Solution: Use custom parameters for non-marketing tracking:
https://yoursite.com/page/?nav_source=internal&click_type=menu
Preventing PANTHEON_STRIPPED Issues
Best Practice 1: Direct URL Targeting
Always point marketing campaigns directly to final destinations:
- ✅
https://yoursite.com/current-page/?utm_source=google
- ❌
https://yoursite.com/old-page/?utm_source=google
(that redirects)
Best Practice 2: UTM Parameter Validation
Test your campaign URLs before launching:
- Visit the URL directly in an incognito browser
- Check the final URL in the address bar
- Verify UTM parameters are still intact
- Test form submissions to ensure correct data capture
Best Practice 3: Alternative Attribution Methods
For critical attribution, don’t rely solely on UTM parameters:
Google Tag Manager approach:
javascript
// Capture and store UTM parameters on page load
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
'event': 'utm_capture',
'utm_source': getURLParameter('utm_source'),
'utm_medium': getURLParameter('utm_medium'),
'utm_campaign': getURLParameter('utm_campaign')
});
Hidden form fields approach:
html
<!-- Populate these with JavaScript, not server-side URL reading -->
<input type="hidden" name="utm_source" id="utm_source" value="">
<input type="hidden" name="utm_medium" id="utm_medium" value="">
Testing Your UTM Attribution
Test 1: Direct URL Test
- Create a test URL with UTM parameters
- Visit in incognito mode to avoid cache
- Check the final URL – do parameters remain intact?
- Submit a test form – are correct values captured?
Test 2: Campaign Flow Test
- Use actual ad URLs from your campaigns
- Follow the complete user journey (click ad → land on page → submit form)
- Check both GA4 and form data for correct attribution
- Test on mobile and desktop
Test 3: Redirect Chain Test
- Identify any redirects in your campaign URLs
- Trace the full redirect chain using tools like Redirect Checker
- Test UTM parameter preservation through each redirect
- Update URLs to eliminate unnecessary redirects
When to Contact Pantheon Support
Pantheon support can help with:
- Unusual caching behavior affecting your specific site
- Configuration issues with edge cache settings
- Questions about cookie handling (related to UTM storage)
What they typically can’t change:
- The fundamental PANTHEON_STRIPPED behavior (it’s by design)
- UTM parameter handling for caching optimization
- Site-specific marketing attribution requirements
Professional Marketing Attribution Setup
While this tutorial covers the most common PANTHEON_STRIPPED issues, complex marketing attribution often requires professional implementation:
Advanced attribution scenarios:
- Multi-domain campaign tracking with proper cross-domain setup
- Complex funnel attribution across multiple touchpoints
- Integration with CRM systems for complete customer journey tracking
- Custom attribution models for B2B sales cycles
When to get professional help:
- Multiple marketing channels requiring unified attribution
- Complex redirect chains from legacy URLs
- Integration between marketing platforms and WordPress/CRM systems
- Advanced Google Analytics 4 and Google Tag Manager configurations
What’s included in professional marketing attribution setup:
- Complete campaign URL audit and optimization
- Custom JavaScript solutions for parameter capture
- Google Tag Manager configuration for reliable attribution
- Testing and validation across all marketing channels
- Documentation and team training on best practices
Dealing with complex marketing attribution issues on Pantheon or other hosting platforms? Contact Knihter for professional digital marketing implementation and website optimization services. We specialize in solving technical marketing challenges and ensuring accurate campaign attribution.
Related Services:
- Marketing attribution setup and optimization
- Google Analytics 4 and GTM implementation
- Pantheon hosting optimization and configuration
- Campaign URL strategy and redirect management