URL Source Collector
URL Source Collector is a hidden component that silently captures data from the visitor’s URL or referrer and submits it alongside your form - so you can track exactly where your leads, signups, and conversions come from without asking the user a single extra question. Add the component to any form, pick what to capture, and the values are automatically included in every submission.The component renders nothing visible to the visitor - it has no UI on the form. Its captured value is submitted as a hidden field with the rest of the form data.
Why Use It
Use URL Source Collector to track attribution for:- Paid ads - Google, Meta (Facebook/Instagram), Microsoft (Bing), LinkedIn, TikTok, X (Twitter)
- UTM campaigns -
utm_source,utm_medium,utm_campaign,utm_term,utm_content - Referring sites - which external websites are sending you traffic
- Custom URL parameters - promo codes, partner IDs, plan slugs, etc.
- Per-page source tags - know which landing page or CTA converted
How to Add the Component
- Open Forms Plugin in Framer
- Select your form on the canvas
- Insert the URL Source Collector component
- In the properties panel, choose what to capture and configure the options
Capture Modes
The Capture dropdown is the main control. It decides what the component reads and submits. There are five modes:
Each mode has its own settings, described below.
UTM Tags
Captures all standard UTM parameters from the current URL and submits each one as its own form field with a matching name. Automatically captured UTM keys:utm_sourceutm_mediumutm_campaignutm_termutm_content
In UTM Tags mode, there is no Field Name setting - because every UTM key and click ID becomes its own form field automatically. For example, if the URL contains
?utm_source=google&gclid=abc123, the submission will have both utm_source: google and gclid: abc123 as separate fields.- Fallback - default value submitted when the URL has no UTM data (e.g.
direct) - First-Touch (Yes / No) - persist the first-visit values across internal navigation and return visits
- Ad platform toggles - turn each platform On or Off to include its click IDs
Current URL
Captures the full URL of the page the visitor submitted the form from - protocol, domain, path, and query string. Useful when you want to know the exact landing page of every conversion. Available settings:- Field Name - the form field name this value submits as (default:
source) - Fallback - default value if the URL can’t be read
- First-Touch (Yes / No) - persist the first-visit URL
Referrer URL
Captures the URL of the external page the visitor came from (based ondocument.referrer). If the visitor typed your URL directly or came from a bookmark, the referrer will be empty - in that case, the Fallback value is used.
Available settings:
- Field Name - form field name this value submits as
- Fallback - default value when no referrer is available (e.g.
direct) - First-Touch (Yes / No) - remember the first-touch referrer across the session
URL Parameter
Captures one specific query-string parameter by name. Use this mode when you care about a single custom parameter that isn’t a standard UTM tag - like?promo=SUMMER50, ?ref=partner-name, or ?plan=pro.
Available settings:
- Field Name - form field name this value submits as
- Parameter - the query-string parameter name to read (e.g.
promo,ref,plan) - Fallback - default value when the parameter isn’t present in the URL
https://yoursite.com/pricing?promo=SUMMER50:
- Set Parameter to
promo - Set Field Name to
promo_code - The submission includes
promo_code: SUMMER50
Custom Value
Submits a literal static value - not read from the URL at all. Useful for per-page or per-variant source tagging where you want to hard-code the source identifier. Available settings:- Field Name - form field name this value submits as
- Value - the literal string to submit (e.g.
homepage-hero,pricing-footer)
Add the component to each page’s form and set a different Value per page. Every submission now tells you exactly which slot converted.
First-Touch Attribution
The First-Touch toggle is available in UTM Tags, Current URL, and Referrer URL modes. It controls how the component treats return visits and internal navigation:Fallback Values
The Fallback field sets a default value that’s submitted when nothing can be captured. Common fallback values:direct- visitor came directly (typed URL, bookmark, no referrer)organic- unknown organic sourcenone- parameter wasn’t presentunknown- generic placeholder
Examples
Example 1 - Track Paid Ad Campaigns
Best setup for agencies running Google / Meta / LinkedIn ads:- Insert the URL Source Collector component
- Set Capture to UTM Tags
- Turn Google Ads, Meta (Facebook), and LinkedIn toggles On
- Set First-Touch to Yes
- Set Fallback to
direct
?utm_source=google&utm_campaign=spring-launch&gclid=abc123, every UTM parameter and the gclid are sent with the form submission - even if the visitor navigates to a different page before submitting.
Example 2 - Capture Referring Sites
Track which external sites are driving form submissions:- Set Capture to Referrer URL
- Set Field Name to
referrer - Set Fallback to
direct - Set First-Touch to Yes
example.com/blog-post include referrer: https://example.com/blog-post. Direct visitors submit referrer: direct.
Example 3 - Per-Page Source Tags
Track which landing page or CTA section converts best:- On each page’s form, insert a separate URL Source Collector
- Set Capture to Custom Value
- Set Field Name to
page_source - Set Value uniquely per page -
homepage-hero,pricing-footer,blog-cta, etc.
page_source field telling you exactly which page/slot converted - no URL parameter setup needed.
Example 4 - Custom Promo Code Capture
Capture a promo code from URLs like/pricing?promo=SUMMER50:
- Set Capture to URL Parameter
- Set Parameter to
promo - Set Field Name to
promo_code - Set Fallback to
none
promo_code: SUMMER50 when the parameter is in the URL, or promo_code: none when it isn’t.
Using with Integrations
All captured values are submitted as regular form fields - so they automatically work with every integration. You can map them to contact properties, subscriber attributes, or CRM fields using the normal field-mapping flow. Common mappings:
See the Integrations Overview for platform-specific mapping instructions.
Tips
- Add as many URL Source Collectors as you need - each component captures one thing, so if you want to capture multiple data points in the same form, simply add a separate component for each. For example, add one for UTM Tags, another for Referrer URL, and another for a Custom Value - all on the same form. There’s no limit.
- Enable only the ad platforms you run campaigns on - keeps submissions clean and avoids sending empty click-ID fields.
- First-Touch: Yes is usually the right choice for attribution; only disable it if you specifically want current-page context at the moment of submission.
- The component is invisible to the user - nothing renders on the form and nothing slows it down.
Next Steps
- Conditional Logic - add dynamic behavior to form fields
- Form Fields - configure the visible fields of your form
- Integrations Overview - map captured values to your CRM or email platform

