A way to personalize? (ie mail merge)

Go to solution

A way to personalize? (ie mail merge)

Is there a way to send a postcard or newsletter to a large group of recipients, but have each message personalized with their name in the greeting?

Marketing Advisor


We have a great feature that will allow you to personalize an email with a reader's first name, last name or both!


To personalize your Email campaign, Event-related email, or Survey invitation, you can add a greeting variable that pulls the name of your contact from the information you've stored in your account and display it to that individual contact when they read your email.

There are different steps depending on what editor you are using.  

For 2GE users click here.  For 3GE users click here



View solution in original post

173 REPLIES 173

Support Blog cropped.jpg



Today's Support blog post will have you Personalizing Emails with Custom Fields



Adding a personal touch to your email is easy when you're using Contact Details. By using contact details you add a special touch to your newsletter that will help connect you with your contacts.


Constant Contact makes this very easy. All it takes is just a few clicks. For assistance with this, Jaime McCall will walk you through the process in the post. If you already know how to add contact details and custom fields to your email, Jaime offers some great suggestions on how to best utilize them.


For the full post, check out - Personalizing Emails with Custom Fields


What creative ways have you personalized your email? Let us know by posting here in the Community or in the Comments section of the blog post.








If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Are you on Twitter? Follow me here!
Occasional Participant

I'd like to add a field to my email copy that pulls in the company associated with each contact. Is this possible within Constant Contact? If so, can someone direct me to these step-by-step instructions?

Hello Jason,

This can be done in the new wizard and is very simple to do, check out the following instructions:


You can use the contact details that you added manually or collected by way of your visitor signup box or a survey's  Collect Personal Information question to personalize your mailings. When you add a contact detail or custom field to a standard email template, the contact detail gets merged into the email when it is sent. As a result, you can send a single email to a list of contacts and the email will appear to have been written for, and sent separately to, each contact. For example, you might include the town and state or, a business could use a custom detail to note hobbies or recent purchases and then include that information in an upcoming mailing.

Note: The character limit for the contact detail is 50 characters.

To add a contact detail from within an email:

  1. Go to the block where you want your contact detail to display.
  2. Click the Edit icon Edit.
  3. Place your cursor where you would like the Contact Detail to appear.
  4. In the Insert section in the left sidebar, click the Insert Contact Details icon Insert Contact Details
  5. Select the desired Contact Detail or Custom Field # ("Custom Text").

    Note: Even if you have named your custom fields, these names will not appear in the "Insert Contact Details" menu; instead, you will see "Custom Field #." The Note field is not an option to add into the email.
  6. Click Save.


  • If no data exists in the selected property for that contact, the field will appear blank.
  • While previewing the email, the contact custom text fields will display as Custom Field #. The actual data in the Custom Field will appear only during a live send.
  • If a custom field contains a URL, it may not display as a clickable link but rather it will display as text.


Tier 2 Community Support
Occasional Participant

Thank you Mike for your response. I assume these instructions are true for within a Constant Contact template?


We generally use custom templates, but I was wondering if there was a way to do it within the advanced editing/coding feature?



Those instructions are true, for new wizard emails.

There is a way to use custom code and pull in custom fields, however you would have to use a XHTML template which in itself has its own challenges.

When you use an XHTML custom template, you will also need to make sure you have the correct link tracking per hyperlink.

Your open tracking tags to record opens and then code your custom fields correctly.



If you have any other questions let us know.





Tier 2 Community Support

Hi - just looking through the API it seems as though we can only send an email campaign using 'generic email content' - which is fine for the message of the campaign but we want to personalise the email with the actual name of the recipient? Are we misunderstanding something or is that correct?


Appreciate any advice.



Hi Daryl,


When you add a greeting to your email (Where it says, "Dear Contacts First Name), the contact's name will automatically populate when they receive the email, if you have that information in Constant Contact. To add a greeting to your email, follow these steps:


  1. Hover your cursor over the block you want to add a greeting.
  2. Click the Edit icon Edit on the block.
  3. Within the block, click where you would like the greeting to appear.
  4. Under Insert section on the left-hand side of the screen, click Greeting.
  5. Edit your greeting.


  • When sending a test email, the greeting will display the name listed in the Personal Information section under the "My Account" link of the account. When the email is scheduled to be sent out, the greeting will show the contact's name.
  • Here you can find additional information on how your customized personal greeting will work.
  • A personalized greeting can also be inserted in a custom HTML email as well.
  • If a prefix such as Mr, Mrs, Dr, etc is wanted then add them to the import file when uploading the contacts.


I hope this helps,


If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Are you on Twitter? Follow me here!
Consulting & Training

Hi, we use some software to create personalized content, like images, video, media, etc. I know the contact details used in conjuction with the blocks, but what about using the contact details to use a personalized image?


We are migrating from another Email Marketing service in wich we could use the list field (contact detail) into the custome html code using %% (ex: <img src:"http://www.url.com/images/xxcampaing_%%contactdetail%%.jpg" width=...)


My question is: Constant Contact have any type of tool that we can use to make the images to change?



Hi Edison,


It is possible to have different images appear in different contacts' emails, but you need to import the image URL as a custom field. Additionally, you will need to use HTML coding to allow for the custom field to appear as an image.


Here is the FAQ on how to do that!


I hope that helps!

Regular Participant

I know how to do this: <Property name="Subscriber.Email" /> in a XHTML mail.


What if I want to put this in a tag, like this?


<a href="mailto:support@chickensys.com?subject=Mail%20CD%20To%20<Property name="Subscriber.Email" />">


This is wrong, but how do I make it right? What I'm trying to do is allow the customer to click on a mailto: in order to request something, and have the email address I know of the customer in the subject line.



That's a great question! To create a dynamic link in a custom XHTML e-mail, the entire <a href> will need to be in custom fields and brought in like the Property tags you use in your example.


So for each contact:


<a href="mailto:support@chickensys.com?subject=Mail%20CD%20To%20

Would be in Custom Field 1. You would also need to close that tag so




Would be in Custom Field 2. And finally a closing tag:




Would be in Custom Field 3. After that, you assemble those Property tags like a puzzle in the XHTML:


<Property name="Subscriber.CustomText1" /><Property name="Subscriber.Email" /><Property name="Subscriber.CustomText2" />Text you want your readers to click on.<Property name="Subscriber.CustomText3" />


When the e-mail gets sent, those Custom Text fields will get replaced with your <a href> code and you'll have a dynamic link! It's a bit complicated, I invite you to give us a call if you would like us to explain in better detail or you can check out this video that helps explain it as well.



If you have any questions, let us know!




If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Regular Participant

Thanks, it's a bit of a hack, but makes total sense.


Something to add, then a question: since the Custom Fields are max 50 chars, I had to split up the first custom tag.


Also, how do you effectively add custom fields to every person in your database? I have 14,000.



The best way I would do it is to export everyone to a spreadsheet, add the custom fields to it and fill in those fields for your contacts and re-upload. If you want a quick way to copy the same cell to all 14,000 of your contacts, copy one cell, highlight the Custom Field column, right click and choose Paste Special and hit OK.


You'll need to make absolutely sure your headers in that spreadsheet are exactly how the come into Constant Contact so Custom Field 1, Custom Field 2, etc.


Then simply re-import the spreadsheet. We will append that data.


Thank you so much!



Occasional Participant

I haven't found a difinitive resource / tutorial on creating dynamic content for email marketing. We currently send 3 (for the most part) content specific, biweekly newsletters via CC and would like to create 1 newsletter with dynamic content in order to avoid content duplication for our contacts. Some of the content is duplicated between newsletters.


Thank you!







What type of dynamic content are you looking to add? You can add Contact Details by following these steps:


  1. Hover your cursor over the block where you want your contact detail to display.
  2. Click the Edit icon Edit.
  3. Place your cursor where you want the contact detail to appear.
  4. On the left-hand side, click the Insert button.
  5. Then click the Contact Details icon Contact Details Icon
  6. Select the desired Contact Detail or Custom Field # ("Custom Text").
    Note: Even if you have named your custom fields, these names will not appear in the "Insert Contact Details" menu; instead, you will see "Custom Field #." The Note field is not an option to add into the email.
  7. Click Save.

I hope this helps,



If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Are you on Twitter? Follow me here!
Regular Participant

Sorry, I should have provided more details about my use case.


The dynamic content would be in the XHTML Advanced Editor, and ideally eventually via the API.  It does not appear to support Dynamic Content the same way as through the Wizard  At the moment the only way I've found to put Contact details in the XHTML portion has been to use the property tag, eg: <Property name="Subscriber.Email" /> - which works well when not inside an XHTML tag,  - for links when I put 


<a href='http://www.example.com?EmailAddress=<Property name="Subscriber.Email" />>Link</a>


It fails XHTML validation, which makes sense because it is invalid.  So I've been looking for a way around this, but haven't had much luck.  One person did have a way that sort of worked where the user would have 3 custom fields set, the first being the start of the link, the second being the unique contact value, and the third being the close of the link, so that the code in the editor would be something like 


<Property name="Subscriber.CustomText1" /><Property name="Subscriber.Email" /><Property name="Subscriber.CustomText2" />


Which, works but isn't sustainable if the links change or other content is added in a link, as the contacts would have to be updated each time they changed.


So, I got to the point of trying CDATA, which allowed invalid XHTML to be put inside the document and saved, however resulted in the email being sent out having invalid tags added.   I suppose the suggestion would really be that there be a way to add dynamic content inside a link or other tag in the Advanced Editor, but if that's not possible due to the XHTML system set up, stripping the cdata-section tags before mailing seems like it would provide a workaround.





Can you send me a private message with your email address? Our tier 2 reps have an email they can send you and also modify your account for adding Dynamic Links in an XHTML email.




If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Are you on Twitter? Follow me here!
Occasional Participant

For our emails, I primarily use article blocks and I wanted to see if there is a way to create an email that will add / hide blocks as they apply to the contact.


For example - I work for a radio station group - 3 stations: WFPL, WUOL & WFPK. Some of our contacts want to receive information for just WFPL so they only get the WFPL newsletter. Some want WFPL and WFPK, but not WUOL so we send the WFPL and WFPK newsletter (2 seperate emails) to them, but not the WUOL newsletter. Some ask for info for all 3 - which means 3 seperate emails. Some of the information is repeated in every newsletter (for example - some promotion that applys to all 3 stations) and so it creates some duplication among emails. 


I'm hoping there is a way to code the article blocks. So that I can then code the contacts themselves to receive only 1 newsletter with the appropriate station-specific article blocks. Essentually providing the contacts with the info they want, in 1 newsletter vs. 3. 


Obviously I'm not super tech savy so any help / recommendations you have will be helpful! Thank you.



Regular Participant

I've been trying to use a cdata block in the XHTML campaign form to create dynamic links, and it seems pretty close to getting what I want it to do, except the links are broken due to the system replacing the CDATA open and close blocks with  <#cdata-section> and </#cdata-section >  - Because these aren't valid XHTML anyway and display poorly in email clients, I was wondering if they could be removed.


Currently if I put in something like 


<![CDATA[<a href='#]]><Property name="Subscriber.Email" /><![CDATA['>test</a>]]>


the email I receive will have


<#cdata-section ><a href='#</#cdata-section>myemail@example.com<#cdata-section >'>test</a></#cdata-section>

If the cdata blocks were removed it'd allow for dynamic fields in links




Unfortunately, there's not a way to do that. If you make copies of the original email, it should cut down on time.


I'll submit feedback on your behalf.






If you find my post helpful, and it answers your question, please mark it as an "Accepted Solution"

Are you on Twitter? Follow me here!

According to the documentation I can add the person's email by entering <Property name="Subscriber.Email"/>  but here is my problem. I need to create a clickable link with their email in it and <a href="http://example.com/source?email=<Property name="Subscriber.Email"/>">Link Text</a> does not work, in fact it destroys the entire email.


Viewing source in the email editor finds this format: <varnametype="SUBSCRIBER.EMAIL" id="block_LETTER.BLOCK5.subscriberData">Email</var> which doesn't work any better.


Is there any way to get the subscriber.email variable into a link?


Plenty of programs use things like %subcriber.email% or {subscriber.email} which I have tried with no luck.