To help customers routinely back up their data, Salesforce offers several native options that are available for no additional cost to customers. These are available to backup both data and metadata but not in a combined system. There are also several third-party options that can be leveraged from partners on the AppExchange.
SALESFORCE NATIVE DATA BACKUP OPTIONS:
Data Export Service: Your Salesforce org can generate backup files of your data on a weekly or monthly basis depending on your edition. You can export all your org’s data into a set of comma-separated values (CSV) files in several different interval options. Backup files can be generated manually once every 7 days (for weekly export) or 29 days (for monthly export). In Professional Edition and Developer Edition, you can generate backup files only every 29 days. You can schedule backup files to generate automatically at weekly or monthly intervals (only monthly intervals are available in Professional Edition and Developer Edition).
If you need help with the step by step process of Data Export Services in your edition read THIS article.
Data Loader: Data Loader is a client application for the bulk import or export of data. Use it to insert, update, delete, or export Salesforce records. When importing data, Data Loader reads, extracts, and loads data from .CSV files or from a database connection. For backup purposes Data Loader will be exporting data into a .CSV files. You’ll get an e-mail notification when your exported data is ready and you have 48 hours to download the .CSV file and store it. If you miss the download window you’ll need to wait until your next export.
Chances are you have used Data Loader to import data when your org set up or for ongoing imports. If you need guidance on how to use Data Loader for exporting bulk data read THIS article.
Report Export: This is another tool that you probably already use often. Report Export allows you to work with report data in a dedicated tool, such as a spreadsheet, by exporting report data as a .XLS or .CSV file. It doesn’t replace an entire comprehensive backup process but it can help you rebuild your system with historic information if the need arises.
SALESFORCE NATIVE METADATA BACKUP OPTIONS:
Change Sets: Normally you use change sets to send customizations from one Salesforce org to another. For example, you can create and test a new object in a sandbox org, then send it to your production org using a change set. Change sets can contain only modifications you can make through the Setup menu. For example, you can’t use a change set to upload a list of contact records. Change sets contain information about the org. They don’t contain data, such as records. So, in the case of metadata backup needs the Change Sets copy metadata from your production org to a sandbox or developer org. For more information see this article: Change Sets Overview
Sandbox Refresh: By refreshing a related sandbox, your configuration metadata is copied over automatically. Keep in mind that while it is possible to use a sandbox as a metadata backup, for data you would need a different strategy as all the types of sandbox that allow data to be included, such as full copy can only be done at infrequent intervals. For more information see this article: Creating or Refreshing a Sandbox.
Force.com Migration Tool: This is a Java/Ant-based command-line utility for moving metadata between a local directory and a Salesforce org. This tool is a bit more complicated for admins and developers who don’t come from traditional programming background. It is possible to setup an Ant script to retrieve all the metadata from your Salesforce instance then commit the metadata to git source control so that you can begin scheduling routine backups of all your customizations. The automation can give you peace of mind that behind the scenes all the metadata is being backed up to source control! For more information see this page: ANT Migration Tool.
APP EXCHANGE OPTIONS:
There are also many third-party options on the AppExchange. As a matter of fact, Salesforce itself has been recommending for some time that you use a third-party option for your backup needs. Some Apps are more comprehensive than others in that they allow you to automate backups for both your data AND metadata, and provide a mechanism by which to restore that data easily. You can search for these by visiting the AppExchange directly and searching for keyword backup.
Some things to consider if you decide to go with a third-party App Exchange backup option:
1. Comprehensive: Can the App provide a full backup of all of your Salesforce data, metadata, and attachments?
2. Secure: Backup data should be saved to secure cloud storage – not on an office laptop! For certain compliance requirements the data may also need to be encrypted both in transit and at rest.
3. Consistent: Can you schedule your backups to run on a set schedule which is easy to define and monitor. Ideally you want to have a daily backup, but perhaps your company is comfortable with a weekly or bi-weekly process.
As you consider your data recovery options you need to carefully consider setting standards for how much data your company can afford to lose before it begins a data recovery protocol as well as the time you can afford to lose in the event of a breach and need for backup. Obviously, no one wants to lose any data or time, but the reality is you need to have a plan for both.
We recommend that you consider multiple backup apps and carefully read the reviews provided by other customers before selecting one. Two apps that we are recommend you look into are OwnBackup and Prodly. OwnBackup can be invoked through their API for automated data management. Prodly has tools especially build for declarative data sets (CPQ, FSL).
Do you really need a data recovery plan?