Top 5 Backup Solutions for Salesforce
It is a common misconception that cloud systems such as Salesforce do not require backups.
While it’s true that cloud service providers manage disaster recovery and can restore data if something goes wrong on their end, this protection does not extend to routine usage. In reality, even in the cloud, data can still be accidentally deleted or overwritten by users. Therefore, a reliable backup strategy remains essential to safeguard your data.
Historically Salesforce was able to perform a disaster recovery (“Disaster Recovery” service) as a last resort (and costly) restore option. However, this service was discontinued on July 31, 2020. In 2022 Salesforce introduced its own, native Backup & Restore service. While this is a valuable addition, it’s generally recommended to use a third-party backup provider for enhanced data security and vendor diversity. For this reason, Salesforce’s Backup & Restore service is not included in the list below. |
Possible Causes of Data Loss
Data loss can occur in various scenarios, including:
- Human error: Accidental changes, such as altering the value of a field, deleting a record, or removing metadata (e.g., a report).
- Data import or mass update: Overwriting existing data with incorrect values during bulk operations.
- Automated processes: Workflow rules, triggers, or APEX modifying data in an unintended way.
- Malicious user behavior: Deliberate behavior aimed at altering or deleting data.
Data vs. Metadata
It is important to distinguish between Salesforce data and metadata:
- Data refers records stored in the object store, similar to rows of database tables.
- Metadata is additional configuration data specific to your organization including custom fields, layouts, APEX triggers, rules, reports and others — anything that can be customized or added to a Salesforce org
For organizations with minimal customization, backing up metadata may not be as critical as backing up data, at least in the early stages. However, for organizations with significant customization, metadata can represent a considerable investment or intellectual property. In such cases, protecting it with a reliable metadata backup strategy is essential.
Important | The Salesforce recycle bin does not track updates or metadata changes, and should not be relied upon as the sole method of ensuring data protection. |
Salesforce Backup Methods
Free Tools Provided with Salesforce
Salesforce provides a few options that can be used for simple backups:
- Manual data export (Setup → Data Management → Data Export).
- Data export via reports.
- Data Loader import/export.
- Metadata backup via the Package Manager (Setup → Package Manager).
Using a Full Sandbox
A full sandbox is a 100% mirror of the production instance holding both data and metadata. It costs extra and can be only refreshed every six weeks. Typically, it is used by organizations doing a lot of Salesforce development or testing large data migrations, however it can be used as a backup tool as well.
Managing Metadata with Development Tools
For organizations that have Salesforce development teams, metadata is usually retrieved for development using tools like IntelliJ with Illuminated Cloud or MavensMate and can effectively be versioned and backed up on source code management systems like Git.
Mirroring as a Database
While the underlying Salesforce database is not directly accessible, there are multiple tools (Heroku, cData, Skyvia and others) that enable mirroring of Salesforce object data as a relational database such as Microsoft SQL Server, PostgreSQL, etc.
This is a good option when a RDBMS system is already in place (along with backup). These solutions do not back-up metadata (except for customized object fields) so it has to be backed up separately, e.g., by a development team.
Important | Not all products allow bi-directional synchronization, so restore may require extra steps like export, preparing data files, creating Data Loader scripts, etc. |
Using a Dedicated Backup Tool
This is an ideal solution, particularly for organizations using Salesforce for more than just CRM functions.
For instance, we recommend implementing a backup solution for customers using Nextian products. When customer orders or subscription services are deleted—along with their entire history—it can be extremely challenging to restore them using only the recycle bin or Data Loader export files.
Understanding Salesforce Backup Process
Salesforce backups operate quite differently from traditional filesystem or database backups.
Unlike filesystems or databases, which typically rely on copying files to backup storage, Salesforce does not provide direct access to its database or filesystem. Instead, all data must be accessed and managed through its API.
In this context, a Salesforce backup solution functions more as a sophisticated data import/export tool rather than a traditional file-based backup and restore system.
Because API access doesn’t differentiate between backup operations and other applications, triggers and workflows within Salesforce are still executed during the process. For a successful restoration, it is important to disable these triggers, as well as email notifications and batch jobs.
For instance, OwnBackup recommends the following steps before restoring data:
Top-5 Backup Solutions for Salesforce
Name | URL |
---|---|
OwnBackup | https://www.owndata.com/products-backup-recovery-salesforce/ Nextian choice for full metadata/data backup. |
AvePoint | https://www.avepoint.com/products/cloud/backup/salesforce/ |
CloudAlly | https://www.cloudally.com/products/backup-salesforce/ |
Odaseva | https://www.odaseva.com/backup-salesforce/ |
Spanning | https://spanning.com/products/salesforce-backup/ |
Skyvia | https://skyvia.com/backup/salesforce-backup/ Nextian choice for data-only backup. |
Other solutions can be found on Salesforce AppExchange.
Salesforce vs. Relational Databases Data Restoration
There are some differences for the restore process in Salesforce vs. a relational database because object ids and auto-generated names cannot be set by users.
The lookup fields to new objects are easily handled by the most backup packages, however auto-generated fields are a bigger problem.
Consider the following scenario:
- An object with an auto-generated name of SRV-000001 was deleted.
- Restore operation is invoked and the object is re-created.
- Next available name will be generated, for example SRV-000002.
Possible workarounds for this include:
- Temporarily changing object names to text rather than auto-generated for the restore time.
- Designing objects names as text fields generated via a trigger with an option to bypass the trigger.
Tip | It is always a good idea to have a setting disabling trigger processing for your own code for backups and data migrations. |
Additional Benefits of Backup Tools for Salesforce
Salesforce backup tools often come with a range of extra features that enhance the overall administration capabilities, including:
- Alerts & notifications for deleted or modified objects, making it easier to detect unwanted or unusual activities (such as the deletion of accounts).
- Ability to generate diffs between backups to identify when a change was made. This reduces need for field history tracking in Salesforce, which in turn leads to lower storage requirements and cost. As a result, change tracking in Salesforce can be limited to critical objects/fields only.
- Cross-instance data and metadata restoration for testing or data migration. Some tools also offer the option to anonymize data, adding an extra layer of security and privacy during these operations.
Conclusions
Even though Salesforce operates in the cloud, having a solid backup strategy and configuration remains crucial.
We highly recommend integrating backup into your overall Salesforce development and disaster recovery plans to ensure data security and business continuity.
Contact us today to find out how we can help you!