Typeform URL parameters: keep source data with responses

Pass source and campaign values into Typeform responses through direct links or embeds, preserve earlier visit context, and check the saved CRM record.

Augustinas Grupas

Creator of TrackLeadSource

7 min read

Summarize with:

Share:

To keep lead source data with a Typeform response, define URL parameters in the form and pass matching values through its share link or website embed. Typeform calls the feature URL parameters, formerly Hidden Fields. Earlier website visits need a separate retention method. TrackLeadSource collects available source and journey context for enquiries; passing that context into a Typeform requires a supported form configuration and a working connection to your destination.

Add the parameters your response needs

Start with the information you want to read beside each enquiry. For a campaign link, source identifies the platform or sender, medium describes the traffic, and campaign identifies the marketing activity.

Use a consistent set of names. This guide's illustrative example uses:

ParameterExample valueMeaning
utm_sourcelinkedinThe campaign link was shared on LinkedIn
utm_mediumpaid_socialThe link identifies a paid social campaign
utm_campaignoffice_cleaningThe named campaign

These are example Typeform parameters, not TrackLeadSource field names. linkedin / paid_social distinguishes the tagged ad from an unpaid post. A referring website alone may not identify that difference, and an untagged visit doesn't prove organic traffic.

In your form, open Workflow > Pull data in, add the parameter names, then save and publish. Names use lowercase letters and underscores. Copy the published link from Share. Typeform's URL parameter guide documents this route and lists custom URL parameters as a free feature.

Typeform also has a separate Source tracking feature for UTM values. Its documentation points to Business or higher for that route. You can use UTM names as custom URL parameters without adopting that separate feature. Choose the route your form uses before changing its settings.

Pass website values into an embedded Typeform

An embedded form sits inside another page. The campaign tags may be on your website's URL while the form has its own URL and configuration.

For the same example campaign, the website link could be:

https://example.com/request-cleaning?utm_source=linkedin&utm_medium=paid_social&utm_campaign=office_cleaning

Here, example.com/request-cleaning is the page containing the form. It uses ordinary website query parameters after ?, while the direct Typeform example above follows its generated share-link structure.

After adding and publishing the corresponding parameter names, open Share > Embed in a web page > Advanced. Check Read URL parameters. Typeform's dynamic parameter guide says this setting passes matching values from the host page into the embedded form. Use the generated embed on your site and check the published page.

The Embed SDK guide also documents explicit values and reading selected host-page parameters for custom implementations. If your website builder adds another iframe or changes the embed, test that published configuration rather than assuming the editor preview represents it.

Static values serve a different purpose. Under Advanced > Set custom values, you can assign a fixed value to an embed. Typeform's embedded-form guide explains this option. A fixed label can identify a particular placement, but setting linkedin on a form used by every channel would mislabel other visitors.

Keep placement labels distinct from marketing source. “Contact page” tells you where the form appeared; “LinkedIn paid social” describes the recorded arrival.

TrackLeadSource

See the story behind each lead.

Keep source, campaign, and journey context together when a visitor becomes a lead.

Start free trial

14-day free trial. Cancel anytime

Preserve the context before someone leaves the landing page

A visitor may click your ad, read the services page, then open an untagged page containing the form. The new page's URL may have none of the original campaign values.

Reading the current URL doesn't recover an earlier visit. You need to retain the source context and pass it into the form through a method that supports your embed. Decide whether the values describe the first recorded arrival, the latest arrival, or another stated rule.

TrackLeadSource collects available source, medium and campaign information along with the recorded source journey and pages visited. Its workflow keeps that context with an enquiry through hidden form data, which your form connection maps into your CRM or spreadsheet. The Typeform instructions above describe Typeform's native parameter route; they don't establish a tested TrackLeadSource integration or provide its field mapping.

Imagine an office manager first arrives through a LinkedIn ad and later returns from a newsletter. Before asking for a cleaning quote, they read Services > Coverage area > Request a quote. Keeping the recorded arrivals and visited pages with the enquiry helps the person replying understand the request.

Your sales team then records whether the office is inside the service area, whether the requested work fits, and whether the quote becomes a sale. Across enquiries, those outcomes help you investigate which campaigns bring suitable work. A page visit alone doesn't establish buying intent, and the history can have gaps when tracking is blocked or the person changes devices.

The website form tracking guide explains the general capture-and-handoff process. For Typeform, verify the exact embed and destination before relying on the retained values.

Check the saved response and the CRM record

Submit a test response through a form you control, using recognisable campaign values. Open Results > Responses and inspect that submission's parameter values. For the illustrative campaign, expect linkedin, paid_social and office_cleaning.

Check the saved response, then its destination. Seeing a value in a link or a form preview doesn't prove that the CRM received it.

Use separate tests for the routes you rely on:

TestWhat to inspect
Open the tagged direct form link and submitThe saved response contains the supplied values
Open the tagged website page with the embed and submitMatching host-page values reach the response
Arrive on a tagged page, then navigate to an untagged form pageYour retention method passes the intended earlier context
Open an untagged page in a fresh browser session and submitFixed test values haven't been applied to unrelated traffic
Send a response through your CRM connectionThe intended CRM fields contain the same values

These are checks to run on your own setup, not results from a Typeform integration test performed for this guide.

If the response is correct but the CRM is blank, inspect the connection's mapping. If the response itself is blank, work back through parameter names, the published link and the embed input. Change one part at a time and repeat the affected test.

Keep a response or enquiry ID so you can match the form submission to the destination record. Store qualification and sales outcomes with that same enquiry. Our CRM lead source guide covers consistent fields and how to preserve the relationship when a lead becomes a deal.

Once the data arrives, you can track lead source through to the sales result. Compare suitable enquiries and customers by a consistent source rule; the lead-quality guide explains how to make that comparison without relying on submission counts alone.

Common questions

A placeholder means the link still contains its template value. For blanks, check the declared parameter names, the incoming values and the published configuration. In an embed, inspect the host-page input as well. A field cannot recover a campaign that was never supplied or retained.

Export the data first. Typeform warns that renaming a parameter removes its previously collected data. Turning parameters off and republishing instead hides their past values; turning them back on and publishing restores visibility. Check the existing mapping before changing names.

Treat URL values as visible to anyone who has the link. Use non-sensitive campaign labels and avoid secrets or confidential customer information. Typeform's parameter guide describes the exposure risks.

Augustinas Grupas

Augustinas Grupas

Creator of TrackLeadSource

Helping marketers connect website form submissions to their source, campaign, and customer journey.

Keep reading

Know the story behind your next enquiry