customer.io Open in urlscan Pro
54.230.162.81  Public Scan

Submitted URL: https://learn.customer.io/documentation/unsubscribes.html
Effective URL: https://customer.io/docs/unsubscribes/
Submission: On December 07 via api from CA — Scanned from CA

Form analysis 1 forms found in the DOM

<form action="" role="search" class="ais-SearchBox-form" novalidate=""><input class="ais-SearchBox-input Search-box-input" type="search" placeholder="Search Docs" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
    maxlength="512"><button class="ais-SearchBox-submit" type="submit" title="Submit the search query."><svg class="ais-SearchBox-submitIcon" xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 40 40">
      <path
        d="M26.804 29.01c-2.832 2.34-6.465 3.746-10.426 3.746C7.333 32.756 0 25.424 0 16.378 0 7.333 7.333 0 16.378 0c9.046 0 16.378 7.333 16.378 16.378 0 3.96-1.406 7.594-3.746 10.426l10.534 10.534c.607.607.61 1.59-.004 2.202-.61.61-1.597.61-2.202.004L26.804 29.01zm-10.426.627c7.323 0 13.26-5.936 13.26-13.26 0-7.32-5.937-13.257-13.26-13.257C9.056 3.12 3.12 9.056 3.12 16.378c0 7.323 5.936 13.26 13.258 13.26z">
      </path>
    </svg></button><button class="ais-SearchBox-reset" type="reset" title="Clear the search query." hidden=""><svg class="ais-SearchBox-resetIcon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" width="10" height="10">
      <path d="M8.114 10L.944 2.83 0 1.885 1.886 0l.943.943L10 8.113l7.17-7.17.944-.943L20 1.886l-.943.943-7.17 7.17 7.17 7.17.943.944L18.114 20l-.943-.943-7.17-7.17-7.17 7.17-.944.943L0 18.114l.943-.943L8.113 10z"></path>
    </svg></button><span class="ais-SearchBox-loadingIndicator" hidden=""><svg class="ais-SearchBox-loadingIcon" width="16" height="16" viewBox="0 0 38 38" xmlns="http://www.w3.org/2000/svg" stroke="#444">
      <g fill="none" fillrule="evenodd">
        <g transform="translate(1 1)" strokewidth="2">
          <circle strokeopacity=".5" cx="18" cy="18" r="18"></circle>
          <path d="M36 18c0-9.94-8.06-18-18-18">
            <animateTransform attributeName="transform" type="rotate" from="0 18 18" to="360 18 18" dur="1s" repeatCount="indefinite"></animateTransform>
          </path>
        </g>
      </g>
    </svg></span></form>

Text Content

 * Features
 * Pricing
 * Customers
 * Docs

 * Sign In

Request Demo
 * Features
 * Pricing
 * Customers
 * Docs

--------------------------------------------------------------------------------

Request Demo Sign In
Documentation
 * Documentation
   * Getting Started
   * Accounts & Workspaces
   * People
   * Segmentation
   * Campaigns & Workflows
   * Message Channels
   * Liquid
   * Metrics
   * Data & Integrations
   * 
 * API API
   * API Reference
   * Reporting Webhooks
   * Integration Libraries
 * SDK SDK
   * iOS
   * Android
 * Release Notes

Pages

 * api 150
 * docs 203
 * release-notes 17
 * sdk 7

 1.  A/B TESTING CAMPAIGN MESSAGES
     
     Once you have an A/B test running in an active campaign, you should see an
     A/B Test tab appearing in your campaign overview. That’s where you can go
     to see the results of the campaign and pick a winner.
      * A/B testing campaign messages
      * Check in on your changes

 2.  ACCOUNT REGIONS (US AND EU)
     
     When you create an account with Customer.io, you select your region, which
     determines where we store your data: in the United States (US) or European
     Union (EU).
      * Account Regions (US and EU)

 3.  ACCOUNT VERIFICATION
     
     How long does it take? We do our best to respond to account verification
     requests as quickly as possible, as we know you’re eager to start sending!
     We don’t currently have a set time frame for responses as it will depend on
     the information you submit.
      * Account Verification
      * FAQ

 4.  ACTION CONDITIONS
     
     If the Action Conditions are not met, the action is skipped, and the
     customer continues on through the campaign. If you’d like them to leave the
     campaign entirely, use campaign-level filters.
      * Action Conditions
      * How do Action Conditions work?

 5.  AD AUDIENCES
     
     You can pause, resume, and delete any Ad Audiences. From the Ad Audience
     tab, click the ‘Manage‘ button for an Ad Audience. From there, you can:
      * Ad Audiences
      * Managing your Ad Audiences

 6.  ADAPTING FOUNDATION'S BASIC TEMPLATE
     
     Look at the HTML for the template, and pull out the part that governs the
     content you’ve identified, and only that content:
      * Adapting Foundation's Basic template
      * The Content

 7.  ADAPTING MAILCHIMP'S TWO-COLUMN TEMPLATE
     
     Once you’ve cut this code from the HTML template, paste it into your blank
     code document to save it for later.
      * Adapting MailChimp's Two-Column template
      * Split up the template
      * Pull out HTML that governs the content

 8.  ADD AND UPDATE PEOPLE
     
     Add a person: If none of the identifiers in your request belong to an
     existing person in your workspace, your request adds a new person.
      * Add and Update People
      * Add and update people using the API

 9.  ADD/UPDATE PEOPLE VIA CSV
     
     For Email and ID workspaces, your CSV must include at least one of id or
     email but may include both.
      * Add/Update People via CSV
      * CSV Requirements
      * Identifiers and Required Columns in your CSV

 10. ADDING A VIEW IN BROWSER LINK
     
     Like all other links, your View in browser links can be branded with your
     own domain. To get this set up, you’ll need to add a CNAME to your domain’s
     DNS records. Just visit the “Deliverability” tab in the “Email & Actions”
     section of your account and make sure ...
      * Adding a view in browser link
      * How do I brand my link?

 * Getting Started
   * Getting Started: Overview
   * Getting Started: What is Customer.io?
   * Getting Started: People
   * Getting Started: Segments
   * Getting Started: Campaigns and Broadcasts
   * Getting Started: Workspaces
   * Getting Started: Integration Planning
   * Getting Started: Integration Methods
 * Accounts & Workspaces
   * Your Account
     * Billing
       * How we Bill
       * How we Bill: Basic Subscription
       * How we Bill: Premium Subscription
       * Payment Problems
       * Canceling Your Account
     * Editing Account Information
     * Adding Team Members to Your Account
     * Finding and managing your API credentials
     * Security Best Practices
     * Two-Factor Authentication
     * Single Sign-on (SSO)
     * Account Regions (US and EU)
   * Account Verification
   * Create a HAR file for help troubleshooting
   * Customer.io, GDPR, and you!
   * Security
   * Privacy
   * Date and Time Data in Customer.io
   * Workspaces in Customer.io
   * Tags
 * People
   * Add and Update People
   * Add/Update People via CSV
   * Resolve duplicate people
   * Manually Add/Update People
   * Manage devices
   * Shortcuts to external services
   * Attributes & events
     * User Attributes
     * Events
     * Anonymous Events
     * What's the Last Visited field, and how do I use it?
     * How do I create multiple subscription types?
   * Export & delete people
     * Exporting Data for a Single Person
     * Exporting Data for Many People
     * Deleting People and Suppressing Profile IDs
   * Find people & data
     * Searching and filtering people
     * Filtering Your Activity Logs
     * Using your data index
     * How do I know what data I have available?
 * Segmentation
   * Segments
   * Data-driven segments
   * Manual Segments
   * Ad Audiences
   * Timestamp Conditions
   * Timestamp Conditions FAQ
   * Timestamp Rules for Building Segments
   * Why aren't users matching my 'within the past X days' condition?
   * Setting Up Segments for Specific Purposes
 * Campaigns & Workflows
   * Introduction to Campaigns, Broadcasts, and Transactional Messages
   * Making changes to campaigns and broadcasts
   * Message sending behavior
   * campaigns
     * Campaigns in Customer.io
     * The Difference between Triggers and Filters
     * A/B testing campaign messages
     * Tagging & Organizing Your Campaigns
     * Pausing an Active Campaign
     * data campaigns
       * Data Campaigns
       * Follow up on NPS responses
       * Campaign for new subscribers with Stripe
       * Slack notification for support tickets
     * Campaign Recipes
       * Send a Welcome Email
       * Birthday and Anniversary Campaigns
       * Cart Abandonment
       * Double Opt-In
       * Onboarding Campaign
       * Send a Transactional Message
       * Trial expiration reminders
       * Assign a personal support rep
       * Setting up Blackhole/Holdout Testing
       * Setting up Cohort Testing
       * Enable Time Zone Match in 10 Minutes with Clearbit
       * Personalize Campaigns Based on Roles
       * RSS Feed Email Campaign
       * Invite Emails
       * Anonymous Invite Emails
       * Reminders for multiple upcoming trips
       * Collect emails on Twitter
   * Broadcasts
     * Broadcasts in Customer.io
     * Using API Triggered Broadcast data in your messages
     * API Triggered Broadcasts - Common API errors
     * API Triggered Broadcasts - Formatting Broadcast Data
   * Transactional emails
     * Transactional API
     * Transactional API - Examples
     * Transactional API - Common API errors
   * Workflow builder
     * Branches
     * Visual Workflow Builder
     * Action Conditions
     * Grace Periods
     * Copy Workflow Items
     * Delays
       * Delivery Time Window
       * Wait Until...
     * Attribute Updates
       * Attribute Update - Getting Started
       * How-to: Use Attribute Updates to Fix Typos in Your Data
       * How-to: Use Attribute Updates to Reformat Timestamps
     * Message drafts & timing
       * Why wasn't my customer sent a message from my campaign?
       * How To Use Drafts To Deliver Error Free Messages
       * Queue Draft for Campaign QA
       * Send messages in users' time zones
       * Supported time zone formats
       * Message Limits
 * Message Channels
   * Email
     * How We Deliver Your Email
     * Introduction to Creating Emails
     * Testing Your Emails
     * Deliverability
       * Email Deliverability Best Practices
       * Domain Authentication
       * Email suppression lists
       * Deliverability Dos and Don'ts
       * Custom SMTP
         * Use Your Own SMTP Server
         * Using Multiple SMTP servers
         * Use your Mailgun Account
         * Use your Mailjet Account
         * Use your Mandrill Account
         * Use your Postmark Account
         * Use your SendGrid Account
         * Use your Sparkpost Account
         * Use your Oracle Dyn Account
       * Verify deliverable email addresses with Kickbox
     * Design & layouts
       * Choosing the Right Email Editor
       * Drag-and-Drop Emails: The Basics
       * Drag-and-Drop Editor FAQ
       * Troubleshooting Your Drag-and-Drop Emails
       * Customizing Email Layouts
       * Archiving Old Layouts
       * Adding a view in browser link
       * Disable CSS pre-processing
       * Introduction to Email Layouts
       * HTML and CSS Email vs. Web
       * Resources for templates, code, and best practices
       * Adapting Foundation's Basic template
       * Adapting MailChimp's Two-Column template
     * Senders & headers
       * How do I add an avatar/logo to my emails?
       * Set Custom Email Headers
       * Set custom preheader/preview text
       * What does the Fake BCC option do?
       * Create Multiple From Addresses
     * Email Recipes
       * Welcome Email Copy
       * Gmail Promotions
       * Send data from Customer.io to Salesforce, Highrise or another CRM
   * Push Notifications
     * Get started
     * Send a push notification
     * Integrate with Customer.io
     * Custom push payloads
     * Tracking push notifications
     * Testing your push notifications
     * FAQ about push notifications
     * Push notifications and React Native
   * Twilio SMS
     * Twilio SMS - Getting Started
     * Twilio SMS - Tracking
     * Twilio SMS - FAQ
     * SMS opt out keywords
     * Send WhatsApp Messages
     * Validate mobile phone numbers
   * Slack Messages
     * Slack Messages - Getting Started
   * Webhooks
     * Send and receive data with webhooks
     * Send in-app messages using webhooks
     * Web push with webhooks
   * links in messages
     * Adding URL parameters to links
     * Checking Link Status
     * Link Tracking
   * Find messages using the message library
   * Image requirements
   * Unsubscribes
   * Message Statuses
   * Messages in different or multiple languages
 * Liquid
   * Liquid tag list
   * Personalizing messages with Liquid
   * Reusing Content With Snippets
   * Collections
   * Composer errors
 * Metrics
   * Metrics Overview
   * Campaign and Broadcast Metrics
   * Workspace Dashboard
   * Run Reports
   * Understanding your A/B test results
   * Getting conclusive results from A/B tests
   * Failed and attempted messages
 * Data & Integrations
   * JavaScript integration
     * Use our JavaScript snippet
     * Track page views
     * Set Up Universal Links
   * Data-in
     * Segment destination actions
     * Segment: Customer.io as a data destination
     * Sync people from a database
     * Backfill historical data
     * HTTPS Link Tracking
     * Zoho integration
     * mParticle integration
     * Integration Libraries
     * Invalid API Requests
     * Using Customer.io with Rails
     * Setting up and using Zapier with Customer.io
   * Data-out
     * Data Warehouse Sync
     * Segment: Customer.io as a data Source
     * Mixpanel or KISSMetrics
     * Reporting Webhooks
     * Data Warehouse integration using Stitch
   * Forms
     * Connect forms to your workspace
     * Typeform
     * Facebook Lead Ads
     * Use Google Forms or Jotforms with Zapier


UNSUBSCRIBES

By using Customer.io’s unsubscribe functionality, you can offer your customers a
way to opt out of your messages. We’ll be able to track the unsubscribe to the
specific message they unsubscribed from. For emails, you can also include an
unsubscribe option in your email headers.


HOW UNSUBSCRIBES WORK

Unsubscribes in Customer.io are managed using a user profile attribute named
unsubscribed that should be assigned a value of true for anyone that is to be
treated as unsubscribed. When someone clicks an unsubscribe link that we
generate for you, we take care of updating the value of the unsubscribed
attribute to true. You can manage this behaviour yourself if you’d like a bit
more control.

The behavior of messages sent after a person’s unsubscribed attrbute becomes
true is determined first by a global campaign setting, then by individual
message settings.


DEFAULT BEHAVIOUR

Messages will not send to a person who is unsubscribed. However, you can choose
to send to them. For campaigns and API triggered broadcasts, you’ll see a switch
in Global Workflow Settings:

This is unchecked by default. To send your entire campaign or broadcast to
unsubscribed users, check this box.

For Newsletters, you can check the “Send to unsubscribed” option on the
recipients page.

You can also click into an individual message and use the Sending to
Unsubscribed dropdown to adjust individual message behavior:

We have more information on sending behaviour here.

 Warning

Please remember that continuing to email someone who has unsubscribed could
result in your breaching anti-spam laws in your country, and we do reserve the
right to terminate your account if you do so.


FAQ


WHAT MESSAGES WILL SOMEONE STOP RECEIVING AFTER UNSUBSCRIBING?

By default, if a customer is unsubscribed, we will not send them:

 * Newsletters
 * Segment triggered campaign messages (including Push and SMS)
 * API Triggered Broadcast messages (including Push and SMS)

Slack and webhooks will send to unsubscribed, as we find these are often used
for internal purposes.

For transactional use cases (password resets or invoices, for example), you can
override this default setting, by flipping this switch in the Global Settings of
your workflow:

You can also adjust this setting on an individual message. On emails, Push, and
SMS messages, you’ll see this option:


UNSUBSCRIBING A PERSON IN THE USER INTERFACE

You can do this on an individual’s Person page, where you can see an
‘Unsubscribe’ button:


UNSUBSCRIBING A PERSON VIA JAVASCRIPT/OUR API

Through the API, you’ll need to identify the customer and set the attribute
unsubscribed equal true.

Copy

<script type="text/javascript">
  // Only send this when a user is logged in
  _cio.identify({
  id: 'user_287',
  unsubscribed: true
});
</script>



HOW DO I ADD AN UNSUBSCRIBE LINK TO MY EMAILS?

There are two Liquid tags that will assist you in generating unique unsubscribe
links for your messages: {% unsubscribe %} and {% unsubscribe_url %}. They work
differently and which one you use will depend on what you need in your message.

The {% unsubscribe %} tag generates the entire link for you and should be placed
anywhere you want us to insert our default unsubscribe link. The {% unsubscribe
%} is automatically untracked; you do not need to add anything to it to prevent
it from tracking clicks.

{% unsubscribe_url %} Use this tag if you want to be able to style the link in
your email. This tag only generates the URL for your unsubscribe link (rather
than generating the entire code for the link); you should place it anywhere you
would normally place the URL for the link you want to use for your link.

When using the code and rich text editors, that means placing the {%
unsubscribe_url %} tag in the href attribute of an <a> element in the HTML as
pictured below:

When using the drag and drop editor, that means placing the {% unsubscribe_url
%} tag in the settings for the link you create as pictured below:

That will result in a custom link that says what you want and is able to be
styled. The default unsubscribe_url link is automatically untracked. When using
the {% unsubscribe_url %} tag you don’t need to add anything to the link or
button to ensure that it is untracked. If you want to track it, add
class='tracked' to the <a> element in the HTML.


HOW DO I REMOVE AN UNSUBSCRIBE LINK FROM MY EMAILS?

An unsubscribe link is added by default in the Empty Layout used for new Rich
Text and Code-based emails. Edit this Layout by going to the Layouts tab in your
Workspace.




In the drag and drop editor, remove the unsubscribe link by editing or deleting
the block.




IF A USER UNSUBSCRIBES FROM EMAIL, WHAT HAPPENS?

For emails, a user clicks the link in the email and arrive at a page that looks
like the image below.

If they click the unsubscribe button, we set the unsubscribed attribute = true
and confirm that they are unsubscribed.

If they accidentally unsubscribe, they have the option to resubscribe. If they
click the resubscribe button, we set the unsubscribed attribute to false and
confirm that they are subscribed once again.


HOW DO I HANDLE MORE COMPLEX MESSAGING PREFERENCES?

There are a couple of ways to do this, depending on your specific setup. We have
a whole doc dedicated to multiple subscription types!


DOES EVERY EMAIL REQUIRE AN UNSUBSCRIBE LINK?

We don’t programmatically enforce it but we encourage it. If you are sending
marketing email, you should adhere to all local laws about customer
communication.


DO YOU REQUIRE US TO USE YOUR UNSUBSCRIBE LINK IN EMAILS?

No. While we require you to include an unsubscribe whenever necessary and legal,
we allow you to use your own unsubscribe functionality if you so choose. If you
do, though, we won’t be able to track which email someone unsubscribed from or
place an unsubscribe in your email header.


HOW DO I SEND MY CUSTOMERS TO AN UNSUBSCRIBE PAGE IN ANOTHER LANGUAGE?

The unsubscribe page will display in the language of your customer’s browser as
long as this language is supported (see our list below).

If you’d like to manually set the unsubscribe page language, append the optional
parameter lang= within the {% unsubscribe_url %} liquid. For example, to
redirect users to a French translation of the unsubscribe landing page use {%
unsubscribe_url lang='fr' %}. This parameter accepts valid IETF Language Codes
for any of the languages we currently we have translations for.

 Notice

Please note the use of single quotes around the language code ('fr'). This is
important if the code is being placed in a link in the drag-and-drop editor.
It’s also important for links enclosed in double quotes ( href="{%
unsubscribe_url lang='fr' %}") that are placed in an href attribute in our
rich-text or code editors. If you nest double quotes inside double quotes OR
single quotes inside single quotes, your link will not work as expected.

CURRENTLY SUPPORTED LANGUAGES:

Language Code Bulgarian br Chinese zh Czech cs Danish da Dutch nl English en
Finnish fi French fr German de Greek el Hungarian hu Italian it Japanese ja
Norwegian no Polish pl Portuguese pt Romanian ro Russian ru Slovak sk Spanish es
Swedish sv Thai th Turkish tr

If an invalid or unsupported language code is provided, we default back to the
English unsubscribe page. We are always willing to add additional languages, so
please let us know if you can provide a translation!

Copied to clipboard!
 * * How unsubscribes work
     * Default behaviour
   * FAQ
     * What messages will someone stop receiving after unsubscribing?
     * Unsubscribing a person in the user interface
     * Unsubscribing a person via JavaScript/our API
     * How do I add an unsubscribe link to my emails?
     * How do I remove an unsubscribe link from my emails?
     * If a user unsubscribes from email, what happens?
     * How do I handle more complex messaging preferences?
     * Does every email require an unsubscribe link?
     * Do you require us to use your unsubscribe link in emails?
     * How do I send my customers to an unsubscribe page in another language?
       * Currently supported languages:



--------------------------------------------------------------------------------

Product
 * Features
 * Customer Success
 * Professional Services
 * Pricing
 * Workflows
 * Ad Audience Sync
 * Watch a Demo Video

Resources
 * Documentation
 * Release Notes
 * Customer.io API
 * Getting Started Guide
 * Integrations Catalog
 * Data Export Methods
 * Security and Compliance

Industry
 * SaaS
 * EdTech
 * Two-Sided Marketplaces
 * FinTech
 * Internet of Things (IoT)
 * Subscription Box
 * Media Companies

Company
 * Blog
 * Support
 * Partners
 * Customers
 * About
 * Careers
 * Contact Us

 * Privacy Policy
 * Terms of Service
 * Status
 * © 2021 Peaberry Software, Inc.