How to pre-populate forms

Pre-populating a form with your supporters' details can have massive benefits for your conversion rates. In this article we'll show you how to build links in your email sender that will automatically complete form fields when your supporter clicks through. We'll use Mailchimp as an example but this same logic should work for almost all email senders.

Note: with this method of pre-filling the form, any data put into the URL could be unwittingly forwarded on or shared by your supporter. So it's really important you don't use this to fill any fields with sensitive data. As a general rule, we would suggest that name and email address are OK as when forwarding an email to a friend you share this information anyway. You can read more about pre-population methods and security here.


Easily create the prepopulation link for Mailchimp, Dotdigital, Cleverreach, Optimizely and others with our toolkit here:


How it works

Within Impact Stack it is possible to pre-fill form fields using data stored in the URL. In addition most email broadcast systems allow you to add user data to the URLs that you build using merge tags. Then when the email is sent the merge tags are replaced with the user's data. For example, if you put this link in Mailchimp*|FNAME|*&p:last_name=*|LNAME|*&p:email=*|EMAIL|*

When it lands in your supporters' inboxes it will convert to this:

And when clicked on it will add the supporters name and email to the form.

In order for this to work, you need to make sure that the correct Impact Stack form key and email merge keys are used. Let's break that down a little...

The purple items are Impact Stack form keys and the red bits are the merge tags from your email broadcast system.*|FNAME|*&p:last_name=*|LNAME|*&p:email=*|EMAIL|*

If you wish to add multiple fields you separate these with an '&'. The '#' is only needed once, right at the beginning of your pre-population string.

Finding your Impact Stack Form Key

To find the form key for a particular field (shown in purple above), login to your Impact Stack and open up the action page in question, click 'edit' and navigate to the 'form' section and click on the pencil icon for the field you want to populate. Then the form key can be found here:


Finding your email system merge key and format

Different email systems call these merge fields different things and format them in different ways. So you'll have to have a look at the help documentation on the website of your service provider to find this. The name of the field will likely be unique to each organisation's setup, but the styling of the merge field is fixed for each email broadcast tool. This is what the format looks like for Mailchimp:




Easily create the prepopulation link for Mailchimp, Dotdigital, Cleverreach, Optimizely and others with our toolkit here:


As you can see, Mailchimp surrounds the merge field with *| |* . Make sure you find and use the right format. The bit in between the surrounding characters is the name of the field; this will be unique to your organisation.

This might seem a little tricky the first time you set it up but once you have the pre-population string sorted you can reuse this really quickly in the future.

For other email marketing tools, please contact us at

Adding tracking

If you want to use tracking on your links too this should be added after the end of the main URL and before the '#' that starts your pre-population string. We strongly recommend using at least the tracking parameter 'utm_source=' and/or 'utm_campaign=' as any value here will be reflected when you download your campaign results in Impact Stack. So it's great for tracking conversions. Here's how your final link might look using Mailchimp as an example:*|FNAME|*&p:last_name=*|LNAME|*&p:email=*|EMAIL|*

If you need any help, please get in touch with us at

Have more questions? Submit a request