ActionKit Tutorial

How do I find out the unsubscribe sources for recent unsubscribes?

For unsubscribes that are processed through an unsubscribe page, which is most of them, you can use the query builder to get this info.

You can create a new Actions query type, display the count of unique users, the source, and the mailing ID, and filter on whether the action was taken on an Unsubscribe page type.

query builder 1

This will return to you a table in this format:

distinct_users source mailing_id_subjects_id
24 mailing Mailing Subject Line (1212)
12 website Page Title (2341)

If you wanted to query for the specific unsubscribe page that the user unsubscribed from in the past 24 hours, you could also use the query builder to check:

query builder screenshot 2

Note that users can also be unsubscribed without going through an unsubscribe page.

For example, you can bulk unsubscribe them by uploading a CSV or TSV to an import page. In this case, a page id and a source will be mapped to these actions.

Users can also be unsubscribed via the re-engagement tool, be unsubscribed by a staff user, or be unsubscribed via the spam check system. There isn’t a page id or source associated with these methods.

If you want to see all unsubscribes for a given period broken down by type, you can find that info in the core_subscriptionhistory table. This query will show you counts by the unsubscribe type for a given date:


select csh.change_id,, count(distinct csh.user_id)

from core_subscriptionhistory csh

join core_subscriptionchangetype cst on (

where date(csh.created_at)='{{DATE}}' and change_id in (3,4,5,6,8,10,12) 

group by 1;

The types of unsubscribes are listed in the core_subscriptionchangetype table:

  • unsubscribe_bounce
  • unsubscribe
  • unsubscribe_admin
  • unsubscribe_email
  • unsubscribe_import
  • unsubscribe_spamcheck
  • unsubscribe_reengagement


« Back to tutorials