mediajunction-remotish-symbols-blue    media junction® and Remotish have merged Read the Press Release

How to Clean Bounced, Spam, and Unsubscribed Contacts from HubSpot CRM

Computer showing an unsubscribe button

As you embark on your journey with HubSpot CRM and start to input all of your business information into the system, it's crucial to maintain the utmost accuracy in your data. Over time, the number of Contacts that have bounced, marked you as spam, or unsubscribed tends to accumulate. Unfortunately, these individuals are no longer engaged in your marketing efforts, and including them in your system only provides a distorted representation of your actual Contacts.

Removing these Contacts from your HubSpot CRM ensures a clean and efficient database, leading to improved email deliverability, reporting, and domain reputation. Additionally, this will save you from paying for an unnecessary tier of Marketing Contacts.

In this blog post, we will guide you on organizing these Contacts in HubSpot and streamlining the process of identifying the Contacts that can be safely deleted.

Preparing to Clean Bounced, Spam, and Unsubscribed Contacts

HubSpot advises two options for cleaning up unsubscribers and Contacts with hard bounce emails:

To perform either action, we recommend performing an export from HubSpot and manipulating and organizing your data in a spreadsheet application. HubSpot Lists can be used to some extent but only supply some of the data you'll need for a full portal cleanout. 

Furthermore, remember that you have the knowledge and expertise to decide which Contacts should be kept in HubSpot. It's important to consider individuals with valuable notes and sales conversation history. Instead of immediately deleting these Contacts, it may be worth exploring options to find new email addresses for them. 

1. Export all bounces, unsubscribes, and spam report Contacts from the CRM

The first step is to export all bounces, unsubscribers, and spam reports systemwide at once. See how to grab them all

  1. In your HubSpot account, navigate to Marketing > Email.
  2. In the left sidebar menu, click the Email bounced tools dropdown menu and select Export unsubscribes and bounces.
  3. Review the email address set to receive the export file.
  4. To include global bounces (recommended), select the Include global bounce and unsubscribes checkbox. (See the next section if you use Marketing email subscriptions.) 
  5. Click Export.

Unsubscribed contact download"

**Pro tip: Don’t be afraid to delete Contacts that are explicitly not interested in hearing from you. This process will narrow down your export significantly and show you only records that are safe to go.

If the portal has multiple active subscription types:

Export Unsubscribed Contacts separately (in step 4 above, in the dialog box, click X next to Unsubscribed Contacts to remove them from your Included Contacts)

Then, export all Contacts who have unsubscribed from emails. This export includes Contacts who unsubscribed from any of your email subscription types and those who opted out of all emails. Since some of these Contacts could be eligible to receive other marketing emails, you'll need to filter this list before deleting your ineligible Contacts.

  • In the left sidebar menu, click the Email bounced tools dropdown menu and select Export unsubscribes and bounces.
  • Confirm the email address set to receive the export file.
  • In the dialog box, click X next to Bounced Contacts and Contacts that reported spam to remove them from your Included Contacts.
  • Click Export.

2. Organize the Columns in the Export File

You'll receive an email with a download link to the exported CSV file. You will need to clean the spreadsheet to narrow down these records a little bit. The following columns will be included in the export:

  • Portal Bounce: if the contact hard bounced on a marketing email sent from your account, you'll see the bounce reason in this column.
  • Portal Spam Report: if the contact marked a marketing email from your account as spam or moved the email from their inbox into their junk folder, you'll see a value of TRUE in this column.
  • Global Bounce: if the contact hard bounced for permanent reasons on marketing emails sent from three or more HubSpot accounts, you'll see the bounce reason in this column. This column will only be included if you select the Include global unsubscribes and bounces checkbox.
  • Portal Unsubscribe: if a contact unsubscribed from all marketing emails sent from your account, you'll see a value of TRUE in this column. Contacts who opted out of a specific email subscription type but didn't opt out of all emails from you will have a value of FALSE in this column.
  • Email subscription types: if a contact opted out of a specific email subscription type, you'll see a value of TRUE in the corresponding column (with your custom subscription name as the column title.) By default, all accounts have a Marketing Information email subscription type and blog subscription emails for each blog in your account.

First, make a tab in the spreadsheet to copy the people you want to delete based on these rules. Name this tab “To Delete” or something similar.

Rules for the Bounced Reason on the exported spreadsheet of bounced/spam/unsubscribes

When you export from the link above, you first want to delete anyone globally bounced or bounced in the portal due to the address unknown or the mailbox full. Here’s how to do that.

1. First, sort the first column, Portal Bounce and cut and paste the people with these values to the delete sheet (paste the whole row of their info):
  • Blank space (Please note: if you see a blank field in the Global Bounce or Portal Bounce column, this means the email address hard bounced for a permanent reason, but the categorization type is not available. )
2. Then, sort the second column, Portal Unsubscribe, and cut and paste the people with these values to the delete sheet:
  • TRUE

3. Then sort by the third column, Portal Spam report and cut and paste the people with this value to the delete sheet:
  • TRUE
4. Then sort by the fourth column, global bounce, and cut and paste the people with these values  to the delete sheet:
  • Blank space

Find definitions of all the bounce reasons here.

The leftover values in the spreadsheet are related to being caught in enterprise spam filters, which are less controllable. We recommend leaving those Contacts because you may finally get accepted if their spam policy becomes more lax or they communicate with you enough to mark you as a friendly sender.

3. Import the Contacts to be deleted or reviewed into HubSpot

  • Save your new "to delete" tab as a separate CSV file.
  • Import this file (only map the recipients field to Email address, don't map other fields) and create a new list of these imported Contacts.
    • Please note: importing a list with a large number of Contacts that previously hard bounced may result in a warning email from the Email Deliverability team about the quality of these Contacts. This is an automated process and will not have any negative impact on your account.

4. Create lists to segment the Contacts

After importing, navigate to Contacts>Lists, create an active list filtering by Imports, and choose the name of your import. Name this list Master List to Delete.

imports (1)

Once you have a master list in HubSpot, click Actions on top right and export a spreadsheet of all Contact record information from these Contacts in case someone is mistakenly deleted. Keep a copy for backup.

Now, create two more lists:

  • Has Activity: One with filters for belonging to the Master List, and last activity date is known. Save and name it Contacts to Delete - Has Activity.
  • No Activity: Create another list with filters for belonging to the master List and last activity date is unknown. Save and name it Contacts to Delete - No Activity.
Add any additional filter that might be relevant for your business to exclude certain Contacts from an unwanted deletion. For example, you may have a Membership property, and you want to ensure that people with that value stay in the CRM regardless. Then make sure to add a filter to exclude those from the two active lists (with and without activity).

Analyzing Your Active Lists and Take Action

If this is the first time the portal has been cleaned out, there could be exceptions to consider. For example, new salespeople were recently hired and imported their old list into HubSpot. In this case, you may want to find alternate email addresses for those recently imported people who bounced--even if they don't have activity yet. 

Aside from these potential exceptions, and with a backup export saved in a safe place, you can delete Contacts in the list: Contacts to Delete - No Activity. These are Contacts with no last activity date and an irreconcilable hard bounce reason. 

For Contacts in the list Contacts to Delete - Has Activity, their last activity date is known! You can decide to either delete the Contacts, find new emails for these Contacts, or keep and create an opt out list. If you are considering deleting them, handle these Contacts manually and make decisions on a case-by-case basis. 

Maintain a Clean HubSpot Database

After the big cleanup is done, be sure to continue your portal data health checks regularly. Here are our favorite tips: 

  1. Set a monthly recurring task in your calendar or project management system to perform another global bounce exporting, review, and deletion; a similar process as the big clean-up we've just reviewed together. 
  2. Create an Active List of the bounces, unsubscribes, and spam reports. Go through this List manually to review who should be deleted from the CRM and for whom you should hunt down a new email address. Save key columns for your List review, like Last Activity Date. 
  3. Define and document your team's or company's "rules" for deleting Contacts. This may require cross-departmental discussion to include the opinions of all HubSpot users. 
  4. Create a global Active suppression List to apply to all workflows that send emails. Include bounced and unsubscribed Contacts. This will make sure that your email deliverability stays unaffected, even if any of your other best practices slip. 


In conclusion, maintaining an accurate and clean database in HubSpot CRM is essential for better email deliverability, reporting, and domain reputation. It also plays a crucial role in enhancing your overall marketing efforts. By following the best practices outlined above and diligently cleansing your portal of un-marketable Contacts, you can optimize your HubSpot CRM and take your marketing strategies to new heights.

If you found this article helpful on the HubSpot CRM, you may also enjoy: 

If you would like further assistance with auditing your HubSpot portal and cleaning your data, don't hesitate to reach out to a HubSpot expert.

Book a Chat
Share this post!

Tags: HubSpot CRM

Related Posts

Check out other great posts on this topic