How to Create an “Add to Calendar” Link for Your Emails

When attendees register for an event you’re hosting, a confirmation email is key in getting them to actually show up. And you can bolster attendance even more by making it easy for guests to put the event on their calendars. That’s where an add-to-calendar link comes in.

While your event platform may have the option of sending registration confirmations with add-to-calendar links, those emails aren’t likely to reflect your brand or give you much opportunity for personalizing content. 

Luckily, it’s fairly straightforward to put add-to-calendar links in emails you create in your automated messaging platform. There are two approaches: 

  • Manual options: You can create and insert ICS files or add-to-calendar links into your emails; this approach is quite simple, and you don’t have to get into the code (although you certainly can if you want more personalization) 
  • Automated options: You can pull add-to-calendar links from your event platform using webhooks, then manipulate the data to display in your emails

Manual option 1: ICS files

One of the most common ways to place events on a customers’ calendar is with an iCalendar, or ICS, file. Not to be confused with Apple’s iCal app, ICS is an open standard for exchanging calendar information, and nearly all calendar applications accept it. 

Here’s how to do it:

  • Create an ICS file for your event using a tool like the free iCalendar Event Maker
  • Download the ICS file, then upload it to your ESP’s media library
  • Create a CTA button in your email for the recipient to download the ICS file

The upside of ICS files is that, because they work with most calendar applications, you don’t have to worry about personalizing your email based on customer email clients. 

The downside: there’s a bit more friction for the customer, as they must download the ICS file, then upload it to their calendar. 

An add-to-calendar link makes for a very easy customer experience: they just click the link, and their calendar opens with the event details populated. Not all calendar apps accept these links, but the most common ones do: Google Calendar, Outlook.com, and Office 365. Before you go this route, take a look at your data to ensure your audience has the relevant calendar data.

Here’s how to do it:

  • Create add-to-calendar links for each calendar app using a tool like Amit Agarwal’s Calendar Links 
  • Create CTA buttons for your email that link to each add-to-calendar link you’ve created

You have two options for displaying the buttons in your email:  

  • Use Liquid to personalize your email so that the correct add-to-calendar link displays for each recipient’s email client (and create a fallback with no link for customers whose calendar apps don’t support add-to-calendar links)
  • Display all the buttons so customers can select which calendar application they want to use    

Personalizing your email for each recipient’s email client is a great way to improve the customer experience. But if you’re not well-versed in Liquid or don’t have the resources to code, displaying all three add-to-calendar links is a good way to make sure you’ve covered all your bases. 

Automated option 1: Webhooks

Instead of manually creating ICS files or add-to-calendar links for your events, you can leverage webhooks to automatically pull an add-to-calendar link from your event platform. This involves using a webhook action in your workflow to call a response from your event platform’s API. Note that in order to use this method, your event platform’s API must be able to return an add-to-calendar API endpoint. 

In Customer.io, you can do this by creating an event-triggered campaign with three workflow steps: a trigger event, a webhook action, and an email message.

To set up the webhook action:

  • Make a POST call to the external API; refer to your event platform’s API documentation for details about the API endpoint, required customer profile data, and body content
  • Use Liquid to set a customer profile attribute and indicate the specific data from the API response you want to include in your email. In this case, you’re looking for the add-to-calendar links. How you set this up will vary depending on how your API returns the data
  • Send a test API call; this will show you the response the API returns and allow you to verify the webhook is working
  • In your email, use Liquid to personalize the email with the customer profile attribute you set in the API call 

Take a look at this detailed guide and walkthrough video to see the process in action. 

Automated option 2: Data campaigns

If you use Customer.io, there’s an even easier way to automatically bring data from your events platform into emails: data campaigns. You simply provide a webhook URL from Customer.io to your event platform’s API. Then, your event platform will automatically send data to Customer.io, which you can use in any campaign.

Here’s how to create a data campaign in Customer.io:

  • Create a campaign
  • Select “Data arrives via webhook” for the trigger
  • Copy the Webhook URL and paste it into your event platform’s API
  • Add an event that triggers a campaign to send your email

This guide walks you through the complete details of using data campaigns.

As long as your event platform’s API has an add-to-calendar API endpoint, you can pull that data into your emails and personalize them using Liquid.

How to choose the right approach for you

ICS files and add-to-calendar links take a little extra effort, since you have to create them using a separate tool. But the manual approach has the benefit of requiring little to no coding, and you don’t have to worry about any limitations of your event platform’s API.

Webhooks bring automation into the mix to simplify your workflow. If you host a lot of events, it’s worth getting familiar with webhooks now to save time in the future. 

Whichever approach you take, add-to-calendar links add that little extra boost to bring customers to your events. After all, they’ve already signed up, so why not make it easier for them to show up?

Join our mailing list for updates on our content and more!