Attribution and UTM Tracking
Surface automatically tracks every touchpoint in a lead's journey—from first visit to form submission—so you can measure which campaigns and channels drive pipeline. All attribution data syncs to your CRM for reporting.
What Surface tracks
Every lead gets full session attribution:
UTM parameters — Source, medium, campaign, term, content from all sessions
Referrer — Where visitors came from (Google search, social media, direct, etc.)
Landing pages — First page visited and page where form was submitted
Session count — How many times they visited before converting
Pages viewed — Full journey through your site before submitting
Time to convert — Days from first visit to form submission
No additional setup required—tracking starts automatically when you install the Surface Tag.
UTM parameter tracking
Surface captures UTMs from any session:
Visitor clicks an ad with utm_source=linkedin&utm_campaign=q4-promo. They browse but don't convert. Two days later they return via organic search and submit a form. Surface saves both the first-touch (LinkedIn ad) and last-touch (organic) UTMs.
All UTM data appears in the lead record and syncs to your CRM for campaign reporting.
Always use consistent UTM naming conventions across campaigns. Surface groups attribution by exact parameter matches, so "LinkedIn" and "linkedin" count as different sources.
Attribution models
Surface supports multiple attribution models:
First-touch. Credits the initial campaign that brought the visitor to your site.
Last-touch. Credits the final touchpoint immediately before form submission.
Multi-touch. Shows all campaigns and sessions leading to conversion with weighted credit.
Choose your default model in Settings > Attribution. All models are available in reporting regardless of your default.
Configure UTM sync to CRM
Map UTM parameters to CRM fields:
Go to Settings > Integrations > [Your CRM]
Open the Field Mapping section
Map Surface attribution fields to CRM fields (e.g., "First Touch Source" → "Lead Source" in Salesforce)
Save your configuration
Common mappings:
First Touch Source → Lead Source
First Touch Campaign → Campaign Name
Last Touch Source → Most Recent Source (custom field)
Landing Page → Landing Page URL (custom field)
You may need to create custom fields in your CRM to capture all Surface attribution data, especially for multi-touch tracking.
Track conversions by campaign
See which campaigns drive the most leads:
Navigate to Analytics > Attribution
Select your date range
View leads grouped by Source, Medium, or Campaign
Filter by lead score or conversion to opportunity to see quality metrics
Export attribution reports to CSV or sync to your BI tool via API.
Cross-domain tracking
If your forms are on a different domain than your main site:
Install the Surface Tag on both domains
Go to Settings > Surface Tag > Cross-Domain
Add all domains you want to track (e.g.,
withsurface.com,app.withsurface.com)Save changes
Surface will maintain session and UTM data as visitors move between domains.
Google Analytics integration
Send Surface events to Google Analytics:
Enable the Google Analytics integration in Settings > Integrations
Enter your GA4 Measurement ID
Choose which events to send (form starts, step completions, submissions)
Surface events appear in GA4 as custom events with full UTM attribution.
Accurate attribution helps marketing teams prove ROI and optimize spend—Surface customers report 20-30% better campaign performance from data-driven budget allocation.
Troubleshooting attribution
UTMs not capturing: Verify the Surface Tag is installed on all pages and loads before visitors navigate. Check for ad blockers or privacy tools preventing tracking.
Wrong source showing: Check UTM parameter spelling in your campaign URLs. Surface is case-sensitive for UTM values.
Cross-domain tracking broken: Ensure both domains are added to cross-domain settings and the Surface Tag is installed identically on both.