Back to Blog

How to Export Data from Salesforce: CSV, Google Sheets and Excel Options Explained

Frankly speaking, Salesforce documentation is rather complicated. You have to jump between multiple pages to understand the options you have for exporting data from Salesforce, and how they work. In some cases, Stackoverflow is an even better source of information. We don’t want you to have this experience, so we decided to compile all of the useful instructions into one guide. Read on to discover how you can export Salesforce data manually or automatically; natively or using a third-party app; as a CSV file or to a spreadsheet, and so on.

Export data from Salesforce: What options you have

You can export data from Salesforce in three formats: CSV, Excel, and Google Sheets.

Salesforce export data to CSV

  • Data Export — This is the native Salesforce functionality to download data as a CSV file. You can run export manually or automatically, at weekly or monthly intervals. Weekly data export is available in Enterprise, Performance, and Unlimited Editions. 
  • Data Loader – This is a client application for the bulk import/export of data. We won’t cover this option here, since it deserves a separate guide on how to install, configure, and use the Data Loader. 
  • dataloader.io — This is an app to both export from and import to Salesforce. Data Loader allows you to automate data export/import on an hourly, daily, weekly or monthly basis. After the export, you need to manually download the exported CSV file to your device. Optionally, you can automate data export to an FTP server, Dropbox, or Box account. 

Manually export data from Salesforce to Excel

Microsoft Office Professional Edition provides its users with a built-in Salesforce-to-Excel integration. With it, you can pull Salesforce objects, as well as Salesforce reports, directly into your worksheet. 

Automate Salesforce data export to Google Sheets, Excel, or BigQuery

Coupler.io offers a dedicated Salesforce integration that allows you to export data to Google Sheets, Excel, or BigQuery. You can automate exports on a custom schedule without any coding. The Salesforce integration supports hundreds of entities available for export including Campaigns, Products, etc. This is a perfect solution to optimize your reporting and eliminate challenges associated with it. 

Export data via the Salesforce REST API

This is a code-based option that opens wide exporting capabilities. However, to be able to export data via the Salesforce API, you’ll need to create a Connected App in Salesforce, obtain an access token, and actually write code to fetch data. 

We’ll check out one by one, so you can select the best option for your needs. The native method goes first.

How to export data from Salesforce using the native Data Export functionality 

Export data using Lightning Experience 

Salesforce promotes Lightning Experience as a way to boost productivity. So, let’s check out first how you can export data using this UI. In the left panel, go to Data => Data Export. You’ll see two options: 

  • Export Now
  • Schedule Export
9 salesforce lightning data export

Export Now

This option lets you manually pull your data from Salesforce once per month. You need to select which data you want to export, then click Save. When file(s) are ready for download, you will receive an email notification. 

The files will be available for download for 48 hours. The link in the email will lead you back to your Salesforce Data Export page, where you’ll find a link to download the file(s).

Once you click Download, a ZIP archive (containing a CSV file) will be downloaded to your device. 

Warning: The Export Now option is only available once per month. Users of Enterprise, Performance, and Unlimited Editions can export data every week.

Schedule Export

This option lets you automate data export from Salesforce on a monthly schedule. You’ll need to specify the frequency and choose the exported data. Click Save when ready. 

The export file will be exported automatically on the chosen schedule. However, you’ll still need to download it manually to your device.

Export data using Salesforce Classic

If you need to export data using Salesforce Classic, click Setup, then expand Data Management on the left side of the page and select Data export.

The rest of the flow is the same as with Lightning Experience. 

How to export a Salesforce report 

Exporting reports from Salesforce has a different flow. You need first to open your report, then you can find the Export option in the Edit drop-down menu on the right.

export report

Then you’ll be able to select the Export view: Formatted report or Details Only.

export view
  • Formatted reports are available for export as Excel files.
  • Details Only are available as both Excel and CSV files.

Click Export to download the chosen format to your device. Read more about how to export Salesforce reports to Excel.

Salesforce data export limits

  • Monthly exports, both manual and schedules, are available for all Salesforce editions and let you export data from Salesforce once per 29 days. 
  • Weekly exports let you export data once per 7 days, but this option is only available in Enterprise, Performance, and Unlimited Editions.
  • ZIP archives with CSV files are available to download for 48 hours; then they’ll be removed.
  • Each CSV file is approximately up to 512 MB. However, the total size of a ZIP archive can be greater than 512 MB. 

Now, let’s switch to third-party options that significantly enhance your Salesforce exporting experience.

Salesforce data export on a schedule with Coupler.io

Coupler.io is a solution for importing data from different sources into Google Sheets, Google BigQuery, or Microsoft Excel. You can automate import on a schedule starting at every 15 minutes! There are around 20 data sources supported including Salesforce, of course 🙂 

Figure 2.4.3. Coupler.io to import data from Facebook into Excel Google Sheets and BigQuery

To export Salesforce data, sign up to Coupler.io – you can do this with your Google or Microsoft account. Then click Add new importer, give it a name and complete the following steps.

Set up source 

  • Select Salesforce as a source application. Click Continue.
1 salesforce as source
  • Connect your Salesforce account. You will need to log in to Salesforce if you have not already. 
2 connect salesforce account
  • Select a data entity from a drop-down list that contains hundreds of data categories to export. You can start typing to find the desired data category faster. Click Continue.
3 data entity salesforce

Note: The full list of standard data entities counts 1000+ items

  • Optionally you can specify the data entity’s last updated date to export data changed after or before this date. Another optional parameter is to set up a filter for your query using the Salesforce Object Query Language (SOQL). For example, here is a query to filter the records for the Account entity by two criteria:
Rating = 'Hot' AND NumberOfEmployees < 10000
  • The value 'Hot' in the column Rating
  • The values in the column NumberOfEmployees should be less than 10,000.
4 optional query parameters

Now you’re ready to set up the destination.

Set up destination

  • Select a destination app from the drop-down list: Google Sheets, Microsoft Excel, or Google BigQuery. 
  • Connect your Google or Microsoft account if your destination is a respective spreadsheet app. For BigQuery, you’ll need to connect your BigQuery project.
  • Select a file, as well as the sheet where to load the Salesforce data if your destination is Google Sheets or Excel. For BigQuery, you’ll need to enter the name of the dataset and table.
  • Optionally you can change the first cell for your data and the import mode. Read the Coupler.io documentation for more details.

Here is what the destination setup for the Salesforce to Google Sheets integration looks like.

5 destination google sheets

Eventually, click Save and Run to export the data from Salesforce. You can view the results by clicking the respective button.

6 view results salesforce export

Here is what the data exported with the Salesforce-Google Sheets integration look like.

7 salesforce data google sheets

Schedule data export Salesforce

During the setup, you’ve noticed the third step that we omitted – Schedule. This allows you to automate exports of data from Salesforce at a custom frequency. To do this, toggle on Automatic data refresh.

8 toggle on automatic data refresh

Then configure the frequency for your schedule.

9 stackby google sheets schedule

Export data from Salesforce to Excel

Well, there are a few options here. Coupler.io allows you to set up a Salesforce to Excel integration if you choose Excel as a destination application.

13 - coupler excel destination

Another solution is to use the built-in Salesforce to Excel connector. But it’s a premium feature supported at:

  • Microsoft Office Professional Edition
  • Microsoft Office 365 ProPlus subscription

Here is how it looks. Open your Worksheet, go to Data => New Query => From Online Services => From Salesforce Objects.

In some editions, the path is a bit different:

Data => Get Data => From Online Services => From Salesforce Objects

After that, you’ll need to connect to the Salesforce account. The rest of the flow is quite intuitive:

  • Select the objects to export
  • Mark the Select multiple items checkbox if you’re going to select more than one object to export
  •  Click Load and welcome your Salesforce data into your worksheet

Unfortunately, most regular Excel users do not have access to this Salesforce to Excel connector. You’re lucky if you have it. 

If you don’t, you can try to connect Excel to Salesforce via ODBC (you need to install an ODBC driver) or Microsoft Query Wizard. But we think that the path provided by Coupler.io is simpler and more user-friendly.

Export Salesforce data as CSV using Dataloader.io

Dataloader.io is a Salesforce-oriented app for data export/import. Its main benefit is that you can export data as CSV as often as you need. In addition, you can pull data directly to Dropbox, Box, or an FTP server. However, the free plan limits the number of exported rows to 10,000. Let’s discover how it works.

  • Login with Salesforce to begin. There is no need to install Dataloader.
  • Click New Task and select Export.
  • Choose your connection and object (data entity) to export from Salesforce. Click Next to proceed.
  • You need to select fields of the Object (that you chose in the previous step). You can also set up filters and how to order the exported data. The parameters you choose will generate an SOQL query. 

You can create a custom SOQL query yourself and paste it in the SOQL query field. In this case, you won’t be able to use the dropdown parameters of the query generator. 

Click Next when you’re ready to proceed.

  • Now, you can either manually run the export task or automate it on an hourly, daily, weekly, or monthly schedule. To do this, choose Schedule Task and customize the schedule. 

The Advanced section lets you specify the Date format, Timeout, and other parameters:

In the Add Destination Folder section, you can connect to an FTP server, Dropbox, or Box to send a copy of the exported data there.

Note: Database option is not available yet.

  • Click Save & Run when ready and….do not expect to get your CSV file downloaded straight away. Your data export task will be queued. After that, you’ll get a note about a successful run. In our case, it looks like this: 
Task Run 38230965: 19 successes

You need to click it once again to get the file downloaded to your device.

Export data from Salesforce using API

In this section, we’ll show how you can set up a Salesforce to Google Sheets integration using the Salesforce REST API. Before we proceed, check out whether your Salesforce edition provides access to the REST API.  

Editions with API AccessEditions without API Access
– Enterprise
– Unlimited
– Developer
– Performance
– Group
– Essentials
– Professional

API access available? Let’s go then. First, we’ll need to get an access token and instance URL. 

How to get an access token in Salesforce

Create a Connected App in Salesforce

In this example, we’ll be using the Salesforce Developer edition and Lightning Experience UI since it looks tidier in my opinion. First, we need to switch to Setup by clicking the gear wheel symbol on the toolbar.

Then go to Apps => App Manager, or just find it using the search setup field.

Click New Connected App to create one.

Configure the app by filling out the following fields:

  • Connected App Name – name your app
  • API Name – it will be populated automatically after you name your app
  • Contact Email – specify your email address

You also need to mark Enable OAuth settings checkbox, which expands a few more parameters:

  • Checkbox Enable for Device Flow – it will populate the Callback URL field
  • In the Available OAuth Scopes field, select Manage user data via API and click Add to add it to the Selected OAuth Scopes.

Сlick Save then Continue to save your connected app and get initial credentials: Consumer Key and Consumer Secret. We’ll be using those to get an API token.

IP Relaxation 

We need to edit OAuth Policies before proceeding further. To do this, click Manage and then Edit Policies.

Edit two parameters:

  • Permitted Users to All users may self-authorize
  • IP Relaxation to Relax IP restrictions 

Click Save.

Access token to integrate Google Sheets with Salesforce

Cheer up, we’re almost there! Let’s get an access token to integrate Google Sheets with Salesforce. To do this, you need to send a POST request to the following URL:

https://login.salesforce.com/services/oauth2/token

The request should must supply the following body parameters:

grant_type=password
client_id={insert-your-customer-key}
client_secret={insert-your-customer-secret}
username={insert-your-username}
password={insert-your-password}

To send a POST request, we’ll use Postman, a Google Chrome app for interacting with HTTP APIs. Do the following:

  • Enter the request URL in the field
  • Change the request type from GET to POST
  • Enter the required body parameters 
  • Click Send

The access token, as well as the instance URL, will be provided in the response to our POST request.

Now we can use it to connect to the Salesforce API.

Connect to the Salesforce REST API without coding

In most cases, you’ll need to write a code to retrieve data from Salesforce and load it to your destination. But if you’re exporting data to Google Sheets, Excel or BigQuery, you can connect to the Salesforce API without a single code line using Coupler.io. 

Actually, this is how we exported data from Salesforce CRM before the Salesforce integration was released 🙂

The Destination and Schedule steps remain the same, but the Source setup will change as follows:

  • Choose JSON as your source application.
10 json source salesforce

JSON is a tool to connect to third-party apps via APIs. At the same time, Coupler.io provides many ready-to-use Google Sheets integrations, such as Pipedrive, HubSpot, Xero, and so on. Besides, you can connect those sources with different destinations, for example, HubSpot integration with Excel or BigQuery.

  • In the JSON URL field, insert the API URL to the Salesforce API in the following format:
{instance-URL}/services/data/{API-version}/sobjects/{salesforce-object-resource}
  • {instance-URL} – the instance URL, which you obtained along with the access token 
  • {API-version} – the version of the API; you can learn the available API versions be sending the GET request to {instance-URL}/services/data
  • {salesforce-object-resource} – the type of data you want to export; you can learn the list of objects and resources by sending the GET request to {instance-URL}/services/data/{API-version}/sobjects/

For example, here is the JSON URL to obtain a list of Salesforce API versions:

https://zrecords-dev-ed.my.salesforce.com/services/data
11 salesforce api versions url
  • Click Continue. Then, in the request headers field, you need to specify your access token in the following format:
Authorization: Bearer {your-access-token}
12 request headers

Complete the Destination setup and Schedule, if necessary, and click Save and Run to load data. For example, here is a list of available API versions exported to Google Sheets:

Let’s go further and export something substantial.

Export data from Salesforce for a specific table

If you want to export other data from Salesforce (let’s say, Contacts), you’ll need to use a query (like we did when we exported data with Dataloader.io). 

The logic of getting data from Salesforce via API is query based. This means you need to build a query that specifies the fields and/or filters to export data. Once you have the list of fields, you can build a custom query to retrieve data using the following template:

query/?q=SELECT+{names-of-fields-separated-by-comma}+FROM+{Salesforce-object}

For example, here is a custom query to export Contacts with three fields – id, name, and email:

q=SELECT+id,name,email+FROM+Contact

And here is the configuration of the JSON Client 

JSON URL.../services/data/v50.0/query/?q=SELECT+id,name,email+from+Contact
HTTP headersAuthorization: Bearer {your-access-token}

Click Save and Run, and a list of Salesforce tables will be transferred to Google Sheets:

Check out the Salesforce API documentation to learn other cases and objects you can export to Google Sheets using Coupler.io.

Can I auto-pull Salesforce data to Google Sheets?

Coupler.io allows you to automate data export from Salesforce on a custom schedule. You simply need to enable Automatic data refresh functionality and customize the export frequency. 

However, the access token stops working when the session expires. Once the session is logged out or expires, you have to obtain a new access token. The maximum session timeout value that you can set is 24 hours.

How often can you export data in Salesforce?

The available frequency of exports depends on the method you use. The native Data Export Service allows you to export data as CSV manually or automatically:

  • Once every 29 days for monthly exports
  • Once every 7 days for weekly exports that are available in Enterprise, Performance, and Unlimited Editions.

With the Salesforce integration by Coupler.io, you can schedule exports at:

  • Every 15 min
  • Every 30 min
  • Every hour
  • Every day
  • Every month

This refers to both the ready-to-use Salesforce integrations and the custom connection to the Salesforce API.

The Dataloader.io allows you to automate exports as CSV on an hourly, daily, weekly, or monthly schedule. 

Salesforce weekly data export

Manual weekly data exports in Salesforce using the native functionality are only available in Enterprise, Performance, and Unlimited Editions. With Coupler.io or Dataloader.io, you can automate exports on a weekly basis for any Salesforce subscription plan.

Which is the best way for exporting Salesforce data?

If you need to load your Salesforce data directly into a spreadsheet app, Google Sheets or Microsoft Excel, Coupler.io seems to be the best option. Besides, it supports another destination – Google BigQuery! Another benefit is the automation of exports on a schedule.

Dataloader.io also provides scheduling, but it exports data as CSV, so as the native Data Export functionality. The latter, however, only lets you import data once a month (or week). The Salesforce API opens wider exporting options, but you’ll need to write a piece of code to export data programmatically, or again opt for Coupler.io or another API connector.

You can give each solution a try to find out which one will work best for you. Good luck with your data!

Back to Blog

Comments are closed.

Access your data
in a simple format for free!

Start Free