How to Track SEO Leads in Jotform with LeadPulse
Why Track SEO Leads in Your Forms
The Attribution Challenge
Most businesses invest significantly in SEO, but many struggle to accurately track which form submissions came from organic search versus other channels. Without proper attribution, it's impossible to calculate the true ROI of your SEO efforts or make data-driven decisions about where to allocate marketing resources.
LeadPulse solves this problem by capturing and storing visitor attribution data, including traffic source, landing page, and referrer information, then automatically populating this data into your form submissions.
Understanding LeadPulse for Attribution Tracking
How LeadPulse Works
LeadPulse is a lightweight JavaScript solution that:
- Captures visitor source information when someone lands on your site
- Stores this data in the visitor's browser
- Automatically adds the attribution data to your forms when submitted
- Works with popular form platforms including Jotform
Setting Up LeadPulse for SEO Tracking
Quick Installation
To start tracking where your leads come from:
- Sign up for a LeadPulse account
- Add the LeadPulse JavaScript snippet to your website:
<script src="https://bpuwjpgckgcxowylcfxv.supabase.co/storage/v1/object/public/getleadpulse.com//embed.js?api_key=YOUR_API_KEY"></script>
- Add this code right before the closing </head>tag on every page of your website
- No additional configuration is needed - LeadPulse will automatically start tracking visitors
Integrating LeadPulse with Jotform
Automatic Form Population
LeadPulse automatically detects Jotform embeds on your website and populates them with attribution data. Here's how to ensure it's working properly:
- For iframe embeds: LeadPulse detects Jotform iframes and attempts to access them directly. Due to cross-domain restrictions, it uses a fallback postMessage approach if direct access isn't possible.
- Add a test field: To verify the integration is working, add a hidden field to your Jotform:
- In Jotform Builder, add a "Hidden Field" element
- Name it "LeadPulse_channel" (the prefix is important)
- Save your form and test a submission
When a visitor from Google Search completes your form, you'll see their source automatically populated as "search" with additional details about the specific search engine.
What Attribution Data Gets Captured
LeadPulse captures comprehensive attribution data:
- Channel: Primary traffic category (search, social, email, referral, direct, paid)
- SubChannel: Specific platform (google, facebook, linkedin, etc.)
- Source: Exact source domain
- UTM Parameters: Any utm_source, utm_medium, utm_campaign, utm_term, utm_content values
- Landing Page: First page the visitor landed on
- Landing Page Group: Top-level section of your site (e.g., /blog)
- First Landing Page: Very first page the visitor ever saw on your site
- Referrer: The full referring URL
For SEO tracking specifically, you'll see:
- Channel: "search"
- SubChannel: "google" (or bing, duckduckgo, etc.)
- utm_medium: "organic" (inferred when actual UTM parameters aren't present)
Creating Custom Fields in Jotform
Complete Hidden Field Configuration
For comprehensive attribution tracking, add these hidden fields to your Jotform:
- LeadPulse_channel
- LeadPulse_subChannel
- LeadPulse_source
- LeadPulse_utm_source
- LeadPulse_utm_medium
- LeadPulse_utm_campaign
- LeadPulse_utm_term
- LeadPulse_utm_content
- LeadPulse_landing_page
- LeadPulse_landing_page_group
- LeadPulse_first_landing_page
- LeadPulse_referrer
Step-by-Step Hidden Field Setup:
- Edit your form in Jotform Builder
- Click the "Form Elements" tab
- Scroll down to find "Survey Tools" and click to expand
- Drag the "Hidden Field" element to your form
- In the field properties panel that appears:
- Under "Field Name" enter the exact name with prefix (e.g., "LeadPulse_channel")
- Under "Default Value" enter the parameter name in square brackets (e.g., "channel")
- Set "Hidden Field" option to "Yes"
- Click "Save" to add the field
- Repeat for each field in the list above, keeping the exact naming convention
Default Values Mapping (Critical Step)
For LeadPulse to work correctly with Jotform, you must set the default values to match the parameter names:
Field Name | Default Value (exactly as shown) |
---|---|
LeadPulse_channel | [channel] |
LeadPulse_subChannel | [subchannel] |
LeadPulse_source | [source] |
LeadPulse_utm_source | [utm_source] |
LeadPulse_utm_medium | [utm_medium] |
LeadPulse_utm_campaign | [utm_campaign] |
LeadPulse_utm_term | [utm_term] |
LeadPulse_utm_content | [utm_content] |
LeadPulse_landing_page | [landingpage] |
LeadPulse_landing_page_group | [landingpagegroup] |
LeadPulse_first_landing_page | [firstlandingpage] |
LeadPulse_referrer | [referrer] |
Important: Make sure to include the square brackets exactly as shown above. In JotForm, the square brackets tell the form to look for values with these parameter names.
Important: Preventing Field Shifting Issues
To avoid problems with field values shifting position in your Jotform submissions:
- Create all hidden fields before adding other form elements when possible
- If adding to an existing form, add hidden fields at the beginning or end of your form, not intermixed
- Always test your form after adding hidden fields to verify proper data capture
- Do not change field names after creating them - if you need to rename a field, create a new one and delete the old one instead of editing
- Use the exact LeadPulse_ prefix - it's case-sensitive
- Ensure default values exactly match the parameter names in the table above
If you encounter field shifting issues, try duplicating the fields and deleting the originals instead of renaming them, as JotForm sometimes retains the original field names in the HTML even after editing them in the form builder.
Analyzing SEO Lead Data
Making Data-Driven Decisions
Once you've collected lead attribution data, you can:
- Create segments based on traffic source: Filter form submissions by channel to see which sources generate the most leads
- Analyze landing page performance: Determine which pages are most effective at converting SEO traffic into leads
- Evaluate keyword effectiveness: By examining the referring URLs from search engines, you can often identify which keywords are driving valuable leads
- Calculate SEO ROI: With accurate attribution data, you can finally calculate the true return on your SEO investment:
- Leads from SEO ÷ SEO investment = Cost per lead
- Revenue from SEO leads ÷ SEO investment = ROI
Advanced Uses of LeadPulse with Jotform
Beyond Basic Tracking
Once you've mastered basic SEO tracking, consider these advanced techniques:
- Multi-touch attribution: Track the entire visitor journey across multiple visits before conversion
- Custom field mapping: Use LeadPulse's customFields feature to map attribution data to specific Jotform fields
- CRM integration: Connect your Jotform to your CRM to pass attribution data through your entire sales pipeline
- Custom reporting: Build dashboards that visualize your most valuable traffic sources and landing pages
Troubleshooting Common Issues
If you're not seeing attribution data in your form submissions:
- Check the script installation: Verify the LeadPulse script is properly added to your site's header
- Inspect field names: Ensure your hidden fields use the exact LeadPulse_ prefix
- Test with different browsers: Some privacy settings might affect tracking
- Check for cross-domain issues: If your form is on a different domain than your main site, additional configuration may be needed
Getting Started Today
Ready to start tracking your SEO leads properly?
- Sign up for LeadPulse and get your API key
- Install the tracking script on your website
- Create the necessary hidden fields in your Jotform
- Start collecting accurate attribution data
By implementing proper SEO lead tracking with LeadPulse and Jotform, you'll gain valuable insights that help you optimize your marketing spend, improve your content strategy, and ultimately generate more leads at a lower cost.
Take control of your marketing attribution today by implementing LeadPulse with your Jotform forms.