

How to Export Salesforce Pipeline to Google Sheets with Make
Daily automation that queries Salesforce for open opportunities and writes them to a Google Sheet with current pipeline data.
Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.
Best for
Sales teams that need daily pipeline visibility in Google Sheets with custom field selection and data formatting
Not ideal for
Teams wanting real-time sync or complex data transformations beyond basic field mapping
Sync type
scheduledUse case type
exportReal-World Example
A 25-person B2B software company uses this to give their executive team daily pipeline visibility without Salesforce licenses. Before automation, the sales ops manager spent 20 minutes each morning manually exporting and formatting opportunity data. Now leadership gets a clean Google Sheet in their inbox at 8 AM with current pipeline values, stage distribution, and close dates.
What Will This Cost?
Drag the slider to your expected monthly volume.
Each platform counts differently — Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.





Prices shown for annual billing. Based on published pricing as of April 2026.
Estimated ROI
1000
min saved/mo
$583
labor value/mo
Free
no platform cost
Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.
Implementation
Import this workflow directly into Make
Copy the pre-built Make blueprint and paste it straight into Make. All modules, filters, and field mappings are already configured — you just need to connect your accounts.
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Opportunity Name | Name | |
| Deal Amount | Amount | |
| Sales Stage | StageName | |
| Expected Close Date | CloseDate | |
3 optional fields▸ show
| Account Name | Account.Name |
| Opportunity Owner | Owner.Name |
| Days in Stage | LastStageChangeDate |
Step-by-Step Setup
Scenarios > Create new scenario > Schedule
Create New Scenario
Start a fresh scenario in Make and set up the basic structure. This will be a scheduled automation that runs once daily.
- 1Click the blue 'Create a new scenario' button on Make dashboard
- 2Click the gray circle and search for 'Schedule'
- 3Select 'Schedule' from the results
- 4Choose 'Every day' and set time to 8:00 AM
Module > Salesforce > Search Records
Connect Salesforce Module
Add Salesforce to query open opportunities. You'll use the Search Records module to find opportunities with specific criteria.
- 1Click the + button after the Schedule module
- 2Search for 'Salesforce' and select it
- 3Choose 'Search Records' from the action list
- 4Click 'Add' next to Connection and enter your Salesforce credentials
Salesforce module > Search Records > Search Criteria
Configure Opportunity Query
Set up the search to find only open opportunities. This filters out closed deals and focuses on active pipeline.
- 1Set Record Type to 'Opportunity'
- 2In Search Criteria, click Add item
- 3Set Field to 'StageName'
- 4Set Operator to 'not equal to'
- 5Set Value to 'Closed Won,Closed Lost'
Salesforce module > Search Records > Limit
Set Result Limit
Control how many records the module returns. Too many records can cause timeouts or hit API limits.
- 1Scroll down to 'Limit' field in the Salesforce module
- 2Enter '1000' as the maximum number of results
- 3Leave 'Order By' blank for fastest query performance
Run once > Salesforce module output
Test Salesforce Connection
Run the scenario to verify your Salesforce query works. This ensures you're getting real opportunity data.
- 1Click 'Run once' button at the bottom of the screen
- 2Wait for execution to complete
- 3Click the Salesforce module to see output data
- 4Verify you see opportunity records with Name, Amount, Stage fields
Module > Google Sheets > Clear Values
Add Google Sheets Module
Connect Google Sheets to receive the opportunity data. You'll clear existing data first, then add fresh pipeline information.
- 1Click + after the Salesforce module
- 2Search for 'Google Sheets' and select it
- 3Choose 'Clear Values' action
- 4Connect your Google account when prompted
Google Sheets > Clear Values > Spreadsheet/Range
Configure Sheet Clearing
Set up the clear operation to wipe yesterday's data. This ensures your sheet always shows current pipeline without duplicates.
- 1Select your target spreadsheet from the dropdown
- 2Choose the worksheet tab (usually 'Sheet1')
- 3Set Range to 'A2:Z1000' to preserve headers
- 4Leave 'Value Input Option' as default
Module > Google Sheets > Add Rows
Add Bulk Insert Module
Add another Google Sheets module to insert all opportunities at once. Bulk operations are faster than individual row inserts.
- 1Click + after the Clear Values module
- 2Search 'Google Sheets' and select 'Add Rows'
- 3Select the same spreadsheet and worksheet
- 4Set 'Value Input Option' to 'RAW'
Google Sheets > Add Rows > Values
Map Opportunity Fields
Connect Salesforce opportunity data to Google Sheets columns. This determines what pipeline information appears in your daily export.
- 1Click in the 'A' column field and select 'Name' from Salesforce data
- 2Set column 'B' to map to 'Amount'
- 3Map column 'C' to 'StageName'
- 4Map column 'D' to 'CloseDate'
- 5Map column 'E' to 'Owner.Name'
Run once > Google Sheets
Test Complete Workflow
Run the full scenario to verify data flows from Salesforce to Sheets correctly. Check that clearing and inserting both work.
- 1Click 'Run once' to execute the complete scenario
- 2Monitor each module for successful execution
- 3Open your Google Sheet to verify data appears
- 4Confirm column headers match your mapped fields
Scenario > Toggle ON > Save
Enable Scenario
Turn on the automation so it runs daily. The scenario will execute every morning at 8 AM automatically.
- 1Click the 'ON' toggle switch at bottom left
- 2Verify the schedule shows 'Every day at 8:00 AM'
- 3Click 'Save' to store your scenario configuration
Drop this into a Make custom function.
JavaScript — Custom Function{{formatNumber(2.Amount; ".2"; ","; "."; "$")}} - Formats Salesforce Amount field as currency with proper thousands separators and two decimal places▸ Show code
{{formatNumber(2.Amount; ".2"; ","; "."; "$")}} - Formats Salesforce Amount field as currency with proper thousands separators and two decimal places... expand to see full code
{{formatNumber(2.Amount; ".2"; ","; "."; "$")}} - Formats Salesforce Amount field as currency with proper thousands separators and two decimal placesScaling Beyond 300+ opportunities daily+ Records
If your volume exceeds 300+ opportunities daily records, apply these adjustments.
Use pagination for large datasets
Add an iterator module after Salesforce search to process records in batches of 100. This prevents timeout errors and reduces memory usage during execution.
Split into multiple sheets
Create separate scenarios for different opportunity criteria (by stage, owner, or region). This distributes the API load and makes data more manageable for end users.
Going live
Production Checklist
Before you turn this on for real, confirm each item.
Troubleshooting
Common errors and how to fix them.
Frequently Asked Questions
Common questions about this workflow.
Analysis
Use Make for this if you need precise control over data formatting and have complex Salesforce queries. Make's visual interface makes it easy to add filters, data transformations, or conditional logic. The bulk operations handle large opportunity lists efficiently. Skip Make if you just want a simple daily export with no customization - Zapier's Salesforce integration is more plug-and-play for basic use cases.
This workflow uses about 4 operations per run - schedule trigger, Salesforce search, sheet clear, and bulk insert. At 30 runs per month, that's 120 operations total. This fits comfortably in Make's free tier (1,000 operations/month). Zapier would need a $20/month Starter plan since their free tier only covers 100 tasks monthly. N8n self-hosted would be free but requires server management.
Zapier handles Salesforce authentication more smoothly - no security token hassles. N8n offers better data transformation functions if you need to calculate pipeline metrics or format currency fields. But Make wins on visual debugging and error handling. When your scenario breaks at 3 AM, Make's execution history shows exactly which module failed and why. Zapier's logs are less detailed for troubleshooting complex workflows.
Google Sheets API has a 100-requests-per-100-seconds quota that can bite you with large opportunity lists. If you're pulling 300+ opportunities daily, the bulk insert might get throttled. Make's automatic retry handles most rate limit issues, but you'll need to add explicit delays for consistently large datasets. Also, Salesforce's field-level security applies to API queries - if your integration user can't see certain opportunity fields in the UI, they won't appear in Make either.
Ideas for what to build next
- →Add Slack notifications for big deals — Create a filter module that catches opportunities over $50k and sends alerts to your sales channel with deal details.
- →Track pipeline changes over time — Modify the scenario to append data instead of clearing, creating a historical log of how your pipeline changes daily.
- →Build executive dashboard — Connect the Google Sheet to Data Studio or similar tools to create visual charts showing pipeline velocity and stage distribution.
Related guides
How to Share Notion Meeting Notes to Slack with Pipedream
~15 min setup
How to Share Notion Meeting Notes to Slack with Power Automate
~15 min setup
How to Share Notion Meeting Notes to Slack with n8n
~20 min setup
How to Send Notion Meeting Notes to Slack with Zapier
~8 min setup
How to Share Notion Meeting Notes to Slack with Make
~12 min setup
How to Create Notion Tasks from Slack with Pipedream
~15 min setup