If all your subscribers come from one signup form, then it is easy for you to write a clear permission reminder for your email, letting them know how they got on the list. On the other hand, if you have several subscribe forms, or you sign people up offline as well as through your site, it can be difficult to know where a particular email address came from.

A simple way of keeping track is to add a custom field to your list, and use that field to store the source of the subscriber.

  • Add a custom field to your subscriber list called “source” (or something similar).

    Create a custom field

  • Head into Create a subscribe form and make sure you select the new “source” custom field to be included. Save your changes and copy the supplied code for your subscribe form.


  • Add the subscribe code to your site, but change the text for the source field from input type="text” to input type="hidden”.
  • Place this code wherever you need it. You’ll want to fill in the value according to where the form is. For example, the front page could use value="frontpage” and the contact page could be value="contactpage”.

Now every time someone completes the form, that hidden value will also be added to their record. When you manually add subscribers from your offline list, you can enter in an appropriate value for the source, like ‘in store’ for example. You can have as many different values as you need. Just make sure you use the same value for people from the same source.

Now you have the data, you can refer back to it if someone ever disputes signing up, which is very useful. You can also start to segment your list based on the source, and offer your physical store customers special deals, or offer web only deals to the site visitors.

  • Jason

    Great suggestion. I recently asked a question in the forums and this will work well for me.

  • Jez Timms

    I wish CM could increase the text field space in ‘subscriber management’ individual entries. Increasingly clients are wanting to integrate standard contact us forms with ‘messages’ and use CM as a simple CRM. And CM currently truncates this in the back end :(

  • Jason

    This would be nice to add, however I’ve run out of custom fields (10). Maybe CM can loosen this limit a bit? :-)

  • Richard Testani

    I did this with my forms, but called it ‘formname’ rather than source. Same thing otherwise.

    @Jason, you could use custom info into a single string then parse them on your own if you are using their API


    You should be able to segment something like this.
    Where ‘myField’ contains ‘custom1=yes’

  • Vince

    Does anyone also know the code to add tracking for referring site and search engine keywords?

  • Richard Testani

    Google Analytics takes care of those sorts of stats.

  • Carl Crowther

    Thankyou this is very helpful indeed!

Want to improve your email marketing? Subscribe to get tips on improving your email marketing delivered to your inbox.

Join 150,000 companies around the world that use Campaign Monitor to run email marketing campaigns that deliver results for their business.

Get started for free
1-888-533-8098 0800 161 5300