At the moment Mailchimp doesn’t include a way to delete a large segment of subscribers in a list. You can delete an entire list, unsubscribe a list of emails or delete subscribers one page at a time. Deleting an entire list that contains history is usually a bad idea and unsubscribing may affect how you add the subscribers to the same list later. Deleting subscribers is okay, but it’s limited to 100 subscribers at a time.

There is a quick hack though to delete many subscribers at once:

screenshot from mailchimp warning about deleting subscribers

Quick Overview

The restriction to 100 subscribers is artificial and applies only to the local page. This hack uses the browser to change the number of subscribers displayed per page and the existing bulk delete action to delete more at once. The Mailchimp system may have an upper limit on the number of subscriber IDs per request, but it’s at least 1000.

Details

This requires a modern browser with a fast Javascript engine.

I needed to delete 14,000 subscribers in a segment of a list and wasn’t willing to click a series of buttons 140 times. Without any other obvious solution, this is what I did instead.

Get Mailchimp to the point where lists the segment to be deleted, 10 entries per page. Right click on the element that chooses how many subscribers are shown per page. Use the browser’s Inspect Element feature (right click) to change the 100 option to 1000.

screenshot from mailchimp showing controls for paging through a table of subscribers

<span class="pager-rowinfo">
Show rows:  
  <span class="row-option-select">    
  <select>      
    <option value="10">10</option>
    <option value="25">25</option>      
    <option value="50">50</option>
    <option value="1000">1000</option> <!-- changed -->    
  </select>
  </span>
11 - 20 of 10128
</span>

The table refresh takes several seconds for me. Mailchimp use the Dojo javascript framework that inspects the DOM for markup before rendering it. It’s very slow parsing large HTML structures which is probably why Mailchimp restrict the table to 100 rows per page. When the table is finally rendered with 1000 rows, click on “Select Visible” and then Bulk Actions -> Delete.

screenshot from mailchimp showing subscribers submenu with delete option

That’s it. MailChimp queues the subscribers for deletion. It performs a single POST that contains all the IDs of subscribers to be deleted. I like MailChimp so I didn’t push the relationship with a higher number of deletions per request. Just repeat the process to delete more.