Sending single-use Ravelry coupon codes with MailChimp


Ravelry Pro makes it easy to create promotions and special offers for your customers. Lots of designers use “coupon codes” as a way to incentivize their potential customers to sign up for their newsletter, purchase a pattern, etc. And the possibilities are nearly endless – you can offer a percentage discount, a flat discount, a free pattern, or even a discounted price when a certain number of patterns are purchased together. You can restrict the promotion to specific patterns, require a minimum purchase, and much more. Essentially, Ravelry Pro lets you create almost any type of promotion you can think of!

One easy way to run a promotion is to create a single coupon code that can be used by anyone who has it. But if you’re offering a special discount just to those who’ve signed up to your newsletter, for example, you might not want it to be something that could potentially be shared far and wide for anyone to use. This is where batches of single-use codes come in handy. But how do you get individual codes to your MailChimp contacts without having to send one email at a time?

Essentially, you:

  1. Export your mailing list from MailChimp to a CSV file (making sure it contains an empty field/column to hold the codes);
  2. Export a list of coupon codes from Ravelry to a CSV file;
  3. Copy and paste the coupon codes from the Ravelry file into the MailChimp one;
  4. Import the mailing list back in MailChimp;
  5. Write your email, using the coupon code field’s “merge tag” to get each contact’s code into their version of the email.

(What are merge tags? Merge tags are unique labels tied to your list fields. Have you ever noticed how sometimes you’ll get emails from a mailing list and the sender has inserted your name right into the email? This is how they do it. We can use the same method to send unique coupon codes, but first we need to get the coupon codes into the list.)

For a step-by-step tutorial, read on!

1. Log in to MailChimp and navigate to your list. You’ll see a list of subscribers with several columns of information for each contact.

2. Click the Settings dropdown list at the top of the page, then select List fields and *|MERGE|* tags. Here you’ll see a list of fields available to your list’s signup forms. The basic fields are Email Address, First Name, and Last Name, but you can add other fields based on the type of information you want to collect from subscribers when they sign up.

3. Click the Add A Field button, then select Text. Your list will refresh and you’ll have a new untitled field added at the bottom. This is where we are eventually going to store coupon codes, so you will want to give it a sensible name so you’ll be able to identify the column later. You may even want to change the merge tag to something easier to identify. Make sure to uncheck the Required and Visible checkboxes – you don’t want the Coupon Code field to be visible on the list’s signup form, you’ll just be using it behind the scenes. Click Save Changes to save the new field.

4. Click the Manage Contacts dropdown list at the top of the page, then select View Contacts. You’ll see the new Coupon Code column (which will be empty).

5. Click the Export List button, then click Export As CSV and save the file to your computer. CSV means “comma-separated values” and is essentially just a simplified way of storing tabular data. Open the file and take note of the number of records so you’ll know how many coupon codes you need to generate. I usually just scroll down to the last row, take the row number and subtract one (the header is row 1 so we don’t need a code for that row).

6. Log in to Ravelry and navigate to your Ravelry Pro account. Click pattern sales at the top of the page, then, when the patterns page loads, click promotions to navigate to the Promotions page. Click the create new promotion button. The Create New Promotion page will be displayed. Here, give your promotion a name, and select the Coupon code – batch of single-use codes option from the Promotion type dropdown list. If you want, you can add a custom prefix to your coupon codes by entering it in the Coupon code field. Configure the rest of the promotion as desired, being sure to include a start and end date.

7. Click Save Changes to save the promotion. Once the promotion has been saved, you’ll have the option to generate a set of promotion codes. Click the generate a set of promotion codes link, then enter a description and the number of codes that should be generated (the number of rows in our CSV file minus 1). Click the generate codes button to generate the codes.

You’ll be redirected to the Promotion Settings page where you can click the download button to download the coupon codes in – you guessed it – CSV format.

8. Save the file to your computer and open it, along with the MailChimp export from earlier. You will now need to copy and paste the column of codes from the Ravelry file into the empty Coupon Code column in the MailChimp file.

9. Export/save the MailChimp file to a new CSV file. This is important because if you just save the file as-is, it will be converted to the format used by your spreadsheet software. In order to import it back into MailChimp, it needs to be in CSV format. How this is done will vary based on the software you are using (Excel, Pages, etc.).

10. Navigate back to your list in MailChimp, click Add contacts, then select Import contacts. The “CSV or tab-delimited text file” option should be selected by default, so just click the Next button. Browse to the file you just exported from your spreadsheet software, then click the Next button. MailChimp will ask you to confirm that the columns in the file you’re importing match the columns in your list. You can click Skip for every column but the Email and Coupon Code columns (be sure to click Save when you get to those).  Once you get through all the columns, click the Next button.

11. Review the import information and be sure to select the Auto-update my existing list checkbox – otherwise MailChimp will reject the duplicate records instead of merging them with the existing list. Click the Import button to finish importing the contacts.

12. Once the import has completed, the list will refresh, and you’ll be able to see your coupon codes!

13. Now when you create your email campaign, you can use the Coupon Code merge tag to insert the coupon codes into the email. Each subscriber will get their own unique code. To insert the Coupon Code merge tag, select it from the Merge Tags dropdown list in the text editor.

Screen Shot 2017-10-26 at 5.46.01 PM.png

The Coupon Code merge tag will be inserted into the body of the email.

14. To make sure the merge tag is inserting the correct data, click on the Preview and Test dropdown list at the top of the page, then click Enter Preview Mode. In the Header Info section on the right, turn on Enable live merge tag info. MailChimp will show you what the email will look like for a particular recipient.

Screen Shot 2017-10-26 at 5.52.10 PM.png

And that’s it! I hope this was helpful. Happy emailing!


[Disclaimer: The information in this blog post was accurate as of the date of publication; any updates to Ravelry or MailChimp are out of my control and could change how this works in the future!]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.