All businesses, whether they are for-profit or not-for-profit, have a bottom line and keeping the organization’s expenses in check is a main goal. Part of a healthy company is investing in tools or technology to assist in growth and another part is in not spending unnecessarily.
Salesforce is an example of one of the investments companies make to enable growth. Being a multi-tenant environment, there are limits in place in order to ensure that our orgs perform consistently. One such area is Storage.
Salesforce Storage is divided into two types, each with it’s own limits - File Storage and Data Storage.
File Storage is comprised of the following:
Files in attachments
Salesforce CRM Content
The custom File field on Knowledge articles
- Site.com assets
Data Storage includes the data records stored within your Standard and Custom objects. For example, Account, Contact, and Campaign to name a few.
Salesforce Data Storage Limits
Data Storage limits for Contact Manager, Group, Professional, Enterprise, Performance and Unlimited editions are calculated at either 1 GB or on a per user limit (20 MB per user) whichever is greater for production orgs.
File Storage for Contact Manager, Group, Professional, Enterprise, Performance and Unlimited editions is 10 GB per org. Orgs do have additional File Storage allocated based on the number of user licenses. The additional File Storage is allocated as follows:
Enterprise, Performance and Unlimited receive an additional 2 GB of File Storage per user license.
Contact Manager, Group and Professional Edition receive an additional 612 MB per standard user license.
One important note is that both Data Storage and File Storage are processed asynchronously meaning that if you are loading data, the storage usage isn’t reflected immediately. If you are near your Data Storage limit, this could cause you to exceed the limit for your org. Salesforce does provide a buffer, but at some point, an error message will be received indicating that the Storage limit has been exceeded.
Analyzing Your Data Storage Usage
To understand how your Data Storage is being consumed you will want to analyze your Data Storage. The analysis of your Data Storage (and File Storage) in Salesforce can be achieved by viewing which objects are consuming the most storage space. To do this, go to Setup>Storage Usage.
Please note that each record stored in Salesforce consumes 2 KB. For example, object records such as Leads, Contacts, Accounts, etc. are all 2 KB each. Here are some exceptions to this rule:
Person Accounts are 4 KB.
Campaigns are 8 KB.
Articles are 4 KB.
- Email Messages are based on actual size of email, so a 100 KB email will tie up 100 KB storage.
Identifying Your Deletion Criteria
After you have analyzed your Data Storage usage, you will identify the criteria to define which records you wish to delete from Salesforce. For example, your criteria might include Cases closed over a year ago or old Campaign clicks, opens, etc. You may use reports for this until you establish the accurate criteria to use.
Options for Optimizing Your Usage of Salesforce Data Storage Limits
Once you have identified the object(s) and criteria for deleting your unwanted data, you will want to clean up the data.
TIP: Before we go any further, always make sure to do a backup before you delete. Read our section on Data Backup Tools to learn about the options and process.
There are several options for optimizing your Salesforce Data Storage.
Option 1: Clean Up Unnecessary Data MANUALLY
One way to cleanup your data is to use a tool that will help you to remove the data.
There are a number of tools that you can use to delete some of your data manually:
Salesforce’s Mass Delete Wizard - This is the native/web-based deletion wizard for Salesforce. Go To Setup>Mass Delete Records to access the tool. This wizard will allow you to delete Accounts, Leads, Activities, Contacts, Cases, Solutions, Products and Reports. Currently, Mass Delete is limited to 250 records and is limited to the named objects so while it will help you to delete some data it will not be your silver bullet solution. This feature is available in all Salesforce editions except for Database.com where it is only available via the API and only for custom object removal.
ETL (Extract Transform Loading) Tools which are typically used for data migration can also be used for data removal. One of the most popular ETL Tools is the Salesforce Data Loader (supported in Enterprise, Performance, Unlimited, Developer and Database.com Editions). The Salesforce Data Loader also has the capability to delete data from Salesforce and can access all Standard and Custom objects. A .CSV file with the records to be deleted or a SOQL relationship query will be needed. There are other popular ETL tools such as Dataloader.io and JitterBit. Most of the ETL tools are paid and will require significant investment and evaluation to make sure they meet your requirements. Also, make sure that the ETL tool supports your edition of Salesforce.
These solutions will work for you, but won’t be the most efficient option. In addition to monetary cost, they will also require a substantial investment of your time. You will have to constantly repeat your backup and deletion processes manually and if you make a mistake it could be catastrophic.
Option 2: Clean Up Unnecessary Data AUTOMATICALLY
If you do not want to spend a lot of time removing your data, you can automate the removal of your data using - Storage Helper, a native Salesforce AppExchange app. While Storage Helper does have a paid, Premium Edition, you can get started for free using the Free Edition. The Premium Edition is priced very economically given the amount of storage costs you will save. One customer saved $13,000 per year (€12,192.83).
Option 3: Purchase Additional Data Storage From Salesforce
If removing your data is not an option, then you will need to purchase more data. Purchasing additional storage is really expensive. See the table below for the latest pricing (subject to change).
Another way of upgrading your Data Storage is to take advantage of the higher per user Data Storage limits available to Performance and Unlimited Edition users. Depending on the number of licenses required, the upgrade option can also be quite costly.
The nice thing about purchasing additional storage is that you do not have worry about removing the data. The unfortunate thing is that more data means more capital tied up in things that aren’t going to grow your organization, and may cause slower reports, slower page loads, and applications that might perform slower searchers. Also, think about all the useless data your users will have to sift through to find what they need. Wouldn’t it be better to cleanup your org’s unnecessary data first before your users and system integration just clog it with more unnecessary data?
With all these options, it can be daunting to figure out what to do. We recommend trying out the free version of Storage Helper to get started. Storage Helper has a built in warning system that will detect how close you are to hitting your Data Storage limit and it will alert you BEFORE you must take action. Storage Helper also has a nifty calculator showing you your accumulated data savings. This will give you better visibility into to your efforts to clean up your data and when you may need to purchase additional Data Storage or cleanup more.
Salesforce Data Backup
If you do identify data that you no longer need within the org and want to do a clean up, it is critical that you first backup your data in case you ever need to return it to your org.
There are applications available on the AppExchange like Spanning or CloudAlly that will backup and restore your data for you and they include all the bells & whistles you may need for a doomsday scenario, but keep in mind that these apps are paid.
The free options are Salesforce Data Export service or Storage Helper. The Salesforce Data Export service is a monthly export service available to you for free that will backup your data from the entire org. In my opinion, a couple of nice features of using the Salesforce Data Export service are that the data is still housed by Salesforce for a period of time and the backup can be scheduled to run monthly. You receive .CSV files in case you ever need to return the org to a previous state, but make sure you download these to safe area within 48 hours of a backup running.
If you are using Storage Helper, there are options to either backup all fields or selected fields from the records that Storage Helper Deletes. Bare in mind this does not backup the entire org like the Salesforce Data Export service does, only the records that meet the criteria in the Storage Recycle Job that is running so we recommend that you still run the Salesforce Data Export service to catch all your data just in case a user or other systematic process corrupts or overwrites your data.
To export backup data from Salesforce: Setup>Data Export
If you ever get into a situation where you do NOT have a backup, the last resort is Salesforce Data Recovery Service. There is a flat $10,000 (€9,378) fee for this service for the one Organization that is being recovered. Salesforce will provide .CSV files for the date/time you specify and then you have to load the data back into your org. The process usually takes a minimum of 20 business days.