---
schema_version: "1"
id: f87a17d1cf349c7024c833e3ba919774df7f4a55a6443f4af512f61bcfe47f73
title: Data Deletion for Heroku
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/data_deletion_heroku.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.data_deletion_heroku.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 7c09f6f0b461ce3a3e6e5c440fbe5da7ee58f43efd0c005f1bd3f8149ef17dc5
description: Sometimes it’s necessary to delete a customer’s personal data to comply with various data protection and privacy regulations. We give you examples of common requests and things to consider, so you can comply with the regulations that apply to you.
products:
  - Security
  - Cross Cloud
release: "264"
---
# Data Deletion for Heroku

Sometimes it’s necessary to delete a customer’s personal data to comply with various data protection and privacy regulations. We give you examples of common requests and things to consider, so you can comply with the regulations that apply to you.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: All Editions</td></tr></tbody></table>

Many data protection and privacy regulations can require you to delete customers’ personal data when customers request it, or when it’s no longer necessary to keep it. We’ve listed a few of the regulations that are important to many companies collecting and processing their customers’ data.

- General Data Protection Regulation (GDPR), European Union
- Personal Information Protection Act (PIPA), Japan
- Privacy Act, Australia

If you have customers or users who want the data that you’ve collected on them deleted, review these common requests and the procedures related to them.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d19575e57">Common Customer Request</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d19575e59">Actions to Consider</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d19575e61">Things to Consider</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Common Customer Request" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e57 ">A client of ours moved out of the country where we’re not licensed to do
              business. So the client wants us to purge their data.</td>
            <td data-label="Actions to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e59 ">Heroku Services give you the ability to fully manage the development, design,
              and functionality of applications you deploy. Using Heroku Services, you can design
              and develop application-layer functionality that allows your organization to fulfill
              data deletion requests from your application’s end users.</td>
            <td data-label="Things to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e61 ">&nbsp;</td>
          </tr>
          <tr class="">
            <td data-label="Common Customer Request" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e57 ">I’ve deleted sensitive data from my primary Heroku Postgres database and now I
              need to delete that same data from database backups. </td>
            <td data-label="Actions to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e59 ">
              <p>The following backups of data stored in your organization’s Heroku Postgres
                database might be created depending on the Heroku Postgres plan your organization
                has selected and the features your organization have utilized.</p>
              <p>Salesforce Heroku
                provides <a href="https://devcenter.heroku.com/articles/heroku-postgres-backups" target="_blank">Heroku PGBackups</a> to
                assist your organization in creating manual or scheduled logical backups of Heroku
                Postgres databases. The retention period for backups created using Heroku
                PGBackups is described in the documentation and depends on the Heroku Postgres
                plan selected. Customers can also initiate the deletion of completed backups at
                anytime using the command "heroku:pg:backups:destroy &lt;BACKUP_ID&gt;." (Note: you
                can generate a list of all completed backups for an application via the command
                "heroku pg:backups -a app_name.")</p>
              <p style="margin-bottom:0;">For selected Heroku Postgres plans, your
                organization can <a href="https://devcenter.heroku.com/articles/heroku-postgres-fork" target="_blank">fork</a> a database. This creates a new
                database containing a snapshot of an existing database at the current point in
                time. You can also create a <a href="https://devcenter.heroku.com/articles/heroku-postgres-follower-databases" target="_blank">Follower</a> database
                which replicates any changes performed on your primary Heroku Postgres database.
                Your organization can use the “heroku addons:destroy” command to initiate deletion
                of a primary, forked or follower Heroku Postgres database.</p>
            </td>
            <td data-label="Things to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e61 ">
              <p>Salesforce Heroku provides access to the <a href="https://devcenter.heroku.com/articles/heroku-postgres-import-export#export" target="_blank">pg_dump PostgresSQL tool</a>
                which allows your organization to create and manage your own logical Heroku Postgres
                backups and retention schedule.</p>
              <p>Salesforce Heroku also offers selected <a href="https://devcenter.heroku.com/articles/heroku-postgres-data-safety-and-continuous-protection" target="_blank">Heroku Postgres Continuous
                  Protection</a> (physical backups) for Heroku Postgres. The retention period
                depends on the plan selected and once the retention period is reached, the data
                deletion process is automatically initiated.</p>
              <p style="margin-bottom:0;"><a href="https://devcenter.heroku.com/categories/heroku-connect" target="_blank">Heroku Connect</a> synchronizes data
                between your Salesforce Services org and a Heroku Postgres database. Therefore
                copy(ies) of your Heroku Postgres data might reside in your Salesforce Services
                org.</p>
            </td>
          </tr>
          <tr class="">
            <td data-label="Common Customer Request" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e57 ">I’ve deleted sensitive data from my Heroku Redis database and now I need to
              delete database snapshots.</td>
            <td data-label="Actions to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e59 "><a href="https://devcenter.heroku.com/articles/heroku-redis" target="_blank">Heroku Redis</a> is an in-memory,
              key-value data store and is not meant for long-term data persistence. After your
              organization deletes data stored in Heroku Redis, it initiates the data deletion
              process for any Heroku Redis database snapshots that Heroku Services
              created.</td>
            <td data-label="Things to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e61 ">Only selected Heroku Redis plans include persistence and High Availability
              options that result in database snapshots being created.</td>
          </tr>
          <tr class="">
            <td data-label="Common Customer Request" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e57 ">I would like to delete sensitive data from Heroku Kafka.</td>
            <td data-label="Actions to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e59 "><a href="https://devcenter.heroku.com/articles/kafka-on-heroku" target="_blank">Heroku Kafka</a> supports
              time-based retention and log compaction. When the retention window is reached, the
              data clean up and removal process is initiated. Customers can configure the
              time-based retention period for<a href="https://devcenter.heroku.com/articles/kafka-on-heroku" target="_blank"> Heroku Kafka</a> to a shorter period at
              anytime to hasten the initiation of the data cleanup and the removal
              process.</td>
            <td data-label="Things to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e61 ">The Heroku Kafka retention period for time-based retention is configurable and
              depends on the Heroku Kafka plan selected as described in the documentation.</td>
          </tr>
          <tr class="">
            <td data-label="Common Customer Request" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e57 ">I want to delete logs for an application I've deployed on Heroku.</td>
            <td data-label="Actions to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e59 ">
              <p><a href="https://devcenter.heroku.com/articles/logging" target="_blank">Heroku’s Logplex</a> is designed for
                collating and routing log messages, not for storage of log data on a longer term
                basis. It keeps a minimum number of lines of consolidated logs that expire after 1
                week. Your organization can choose to drain logs to a drain service provided by a
                third-party add-on or implement your own log drain to gain additional control over
                your logs.</p>
              <p style="margin-bottom:0;">Shield Private Spaces also includes the feature <a href="https://devcenter.heroku.com/articles/private-space-logging" target="_blank">Private Space Logging</a> which enables
                you to configure log capture at the space level instead of the app level. This
                feature allows your organization to forward all log events from applications and
                Heroku system services in the space to a single external log capture destination
                as described in the documentation.</p>
            </td>
            <td data-label="Things to Consider" class="slds-cell-wrap" style="vertical-align:top;" headers="d19575e61 ">
              <p>If a third-party add-on is utilized to store logs, then your organization needs
                to work with the add-on provider to determine steps to minimize third-party add-ons
                from capturing your users’ personal data. Work with your legal team to ensure that
                you have the appropriate contractual terms in place with the provider of the add-on.
                Also make sure that you have the right processes to help manage your GDPR compliance
                obligations when using the add-on.</p>
              <p style="margin-bottom:0;">If the Shield Private Spaces feature Private
                Space Logging is utilized, then logs are not stored within Heroku Services and
                your organization would need to delete the logs from the location where the logs
                were sent.</p>
            </td>
          </tr>
        </tbody>
      </table>