Beginner~8 min setupProductivity & E-commerceVerified April 2026
Google Sheets logo
Shopify logo

How to Track Daily Shopify Sales in Google Sheets with Zapier

Automatically calculate and log daily revenue, order count, and average order value from Shopify to a Google Sheets performance tracker.

Steps and UI details are based on platform versions at time of writing โ€” check each platform for the latest interface.

Best for

E-commerce stores wanting automated daily sales reporting without manual spreadsheet updates

Not ideal for

High-volume stores processing 200+ daily orders or businesses needing real-time sales dashboards

Sync type

scheduled

Use case type

export

Real-World Example

๐Ÿ’ก

A 12-person dropshipping business uses this to track daily performance across 3 Shopify stores. Before automation, their ops manager spent 30 minutes each morning pulling sales data and calculating AOV in Excel. Now they wake up to complete daily summaries in their master spreadsheet, and can spot trends like weekend sales dips or product launch spikes immediately.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

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

Before You Start

Make sure you have everything ready.

Shopify store with at least a few completed orders to test with
Google Sheets spreadsheet with columns for Date, Revenue, Orders, and Average Order Value
Shopify admin access to generate API credentials
Zapier account (free tier works for low-volume stores)
Basic understanding of your store's timezone and daily reporting needs

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Dateformatted_date
Revenuetotal_price_sum
Ordersfound_orders_count
Average Order Valuecalculated_aov
2 optional fieldsโ–ธ show
Currencyshop_currency
Tax Totaltotal_tax_sum

Step-by-Step Setup

1

Create > Trigger > Shopify > New Paid Order

Create the trigger for Shopify orders

Set up Zapier to detect new paid orders in your Shopify store. This captures each order as it's completed throughout the day.

  1. 1Click 'Create Zap' from your Zapier dashboard
  2. 2Search for 'Shopify' in the trigger app selection
  3. 3Choose 'New Paid Order' from the trigger options
  4. 4Connect your Shopify account using your store URL and API key
โœ“ What you should see: You should see a green 'Connected' badge next to Shopify with your store name displayed.
โš 
Common mistake โ€” Don't select 'New Order' โ€” that includes unpaid orders and will inflate your daily counts with abandoned checkouts.
Zapier
+
click +
search apps
Google Sheets
GO
Google Sheets
Create the trigger for Shopiโ€ฆ
Google Sheets
GO
module added
2

Trigger > Test > Select Record

Test the Shopify connection

Pull in a recent order to verify the data format and field mapping. This shows you exactly what order data Zapier receives.

  1. 1Click 'Test trigger' in the Shopify setup panel
  2. 2Select a recent order from the dropdown list
  3. 3Click 'Continue with selected record'
  4. 4Expand the order data to view available fields
โœ“ What you should see: Order details appear showing fields like 'total_price', 'created_at', and 'line_items_count'.
Zapier
โ–ถ Turn on & test
executed
โœ“
Google Sheets
โœ“
Shopify
Shopify
๐Ÿ”” notification
received
3

Action > Delay > Delay Until

Add a delay step

Insert a delay until 11:59 PM to batch all daily orders together. This prevents creating multiple rows for the same day.

  1. 1Click the '+' button to add a new step
  2. 2Search for 'Delay' in the app list
  3. 3Select 'Delay Until' action
  4. 4Set time to '23:59' and timezone to your business timezone
โœ“ What you should see: The delay step shows 'Delay Until 11:59 PM [Your Timezone]' in the step summary.
โš 
Common mistake โ€” Set your actual business timezone, not UTC โ€” orders will batch incorrectly if timezones don't match.
4

Action > Google Sheets > Create Spreadsheet Row

Add Google Sheets action

Connect your performance tracking spreadsheet where daily summaries will be logged. This creates the destination for your calculated data.

  1. 1Click '+' to add another action step
  2. 2Search for 'Google Sheets' and select it
  3. 3Choose 'Create Spreadsheet Row' action
  4. 4Connect your Google account and authorize Zapier
โœ“ What you should see: Google Sheets shows as connected with your email address displayed below the app icon.
5

Action > Configure > Spreadsheet Selection

Select your tracking spreadsheet

Point Zapier to the specific sheet where you want daily summaries. Make sure the column headers match what you'll map in the next steps.

  1. 1Select your spreadsheet from the dropdown list
  2. 2Choose the worksheet tab (usually 'Sheet1' or 'Daily Sales')
  3. 3Verify the column headers show Date, Revenue, Orders, Average Order Value
โœ“ What you should see: The field mapping section appears with your spreadsheet columns listed as mappable fields.
โš 
Common mistake โ€” If your spreadsheet doesn't appear, refresh the dropdown โ€” newly created sheets take 2-3 minutes to sync.
6

Action > Field Mapping > Date

Map the date field

Set today's date in your tracking sheet. Use Zapier's date formatter to ensure consistent formatting across all entries.

  1. 1Click in the 'Date' field mapping box
  2. 2Select 'Formatter' from the functions menu
  3. 3Choose 'Date/Time' then 'Format'
  4. 4Set input to 'now' and format to 'MM/DD/YYYY'
โœ“ What you should see: The date field shows 'Formatted Date: now as MM/DD/YYYY' in the mapping preview.
Google Sheets fields
Column A
Column B
Email
Status
Notes
available as variables:
1.props.Column A
1.props.Column B
1.props.Email
1.props.Status
1.props.Notes
7

Action > Insert Step > Shopify > Find Order

Calculate total revenue with Shopify search

Use Zapier's Shopify search to find all orders from today and sum their values. This gives you the daily revenue total.

  1. 1Click in the 'Revenue' field mapping box
  2. 2Add a new step before Google Sheets: Shopify > Find Order
  3. 3Set search query to 'created_at:>{{today}}' in the query field
  4. 4Map the sum of all 'total_price' values to the Revenue column
โœ“ What you should see: The revenue field shows a formula summing all order totals from today's date range.
โš 
Common mistake โ€” The search query syntax is picky โ€” use 'created_at:>{{today}}' exactly or the date filter won't work.
8

Action > Field Mapping > Orders

Count daily orders

Map the order count from your Shopify search results. This tells you how many transactions happened today.

  1. 1Click in the 'Orders' field mapping box
  2. 2Select the 'Found Orders Count' field from the Shopify search step
  3. 3Verify the preview shows a number, not an array
โœ“ What you should see: The orders field displays 'Found Orders Count: X orders' where X is today's order volume.
9

Action > Field Mapping > Average Order Value > Formatter

Calculate average order value

Divide total revenue by order count to get your daily AOV. Use Zapier's math formatter to handle the division automatically.

  1. 1Click in the 'Average Order Value' field mapping box
  2. 2Select 'Formatter' then 'Numbers' then 'Perform Math Operation'
  3. 3Set operation to 'Divide'
  4. 4Input A: map total revenue, Input B: map order count
โœ“ What you should see: The AOV field shows 'Math Result: Revenue รท Order Count' with a decimal result in the preview.
โš 
Common mistake โ€” Add error handling for zero orders โ€” the division will fail on days with no sales.
10

Action > Test > View Results

Test the complete workflow

Run the full Zap to verify data flows correctly into your spreadsheet. Check that calculations match your manual math.

  1. 1Click 'Test action' at the bottom of the Google Sheets step
  2. 2Review the test data in the results panel
  3. 3Open your Google Sheet to confirm the row was added
  4. 4Verify the calculated values make sense for your store
โœ“ What you should see: A new row appears in your spreadsheet with today's date, revenue total, order count, and calculated AOV.
11

Trigger > Schedule > Daily

Configure the daily schedule

Set the Zap to run once per day at midnight to capture complete daily data. This ensures consistent daily reporting.

  1. 1Go back to the trigger step configuration
  2. 2Change from 'New Paid Order' to 'Schedule by Zapier'
  3. 3Set frequency to 'Daily' at '12:00 AM'
  4. 4Update timezone to match your business hours
โœ“ What you should see: The trigger shows 'Schedule: Every day at 12:00 AM [Your Timezone]' in the step summary.
โš 
Common mistake โ€” Running at midnight captures orders from the previous day โ€” adjust timing if you want same-day reporting.
12

Publish > Name > Toggle On

Turn on the Zap

Activate the automation to start logging daily sales data. Your first summary will appear tomorrow morning.

  1. 1Click the 'Publish Zap' button in the top right
  2. 2Give your Zap a descriptive name like 'Daily Shopify Sales Summary'
  3. 3Click the toggle switch to turn it on
  4. 4Verify the status shows 'On' with a green indicator
โœ“ What you should see: The Zap dashboard shows your automation as 'On' with next run time scheduled for tomorrow.

Drop this into a Zapier Code step.

JavaScript โ€” Code Step=SUMIF(A:A,TODAY(),B:B)
โ–ธ Show code
=SUMIF(A:A,TODAY(),B:B) 
Use this Google Sheets formula in a summary cell to calculate running totals even if your Zap creates multiple rows per day. Replace B:B with your revenue column.

... expand to see full code

=SUMIF(A:A,TODAY(),B:B) 

Use this Google Sheets formula in a summary cell to calculate running totals even if your Zap creates multiple rows per day. Replace B:B with your revenue column.

Scaling Beyond 100+ orders/day+ Records

If your volume exceeds 100+ orders/day records, apply these adjustments.

1

Switch to hourly batching

Replace the daily schedule with hourly runs and aggregate in Google Sheets using SUMIF formulas. This prevents timeouts on the Shopify search operation and spreads API calls across the day.

2

Use Shopify webhooks instead of search

Replace the scheduled search with individual order webhooks that increment running totals. This reduces API calls from 50+ searches to 1 write per order, avoiding rate limits entirely.

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

VerdictWhy Zapier for this workflow

Use Zapier for this if you want daily sales tracking without coding and your store processes under 100 orders per day. The visual builder makes it easy to modify the calculations later, and the scheduler handles the daily timing automatically. Pick Make instead if you need real-time updates โ€” Zapier's delay function only works in 24-hour chunks, so you can't get hourly breakdowns without multiple Zaps.

Cost

This workflow uses about 15 tasks per day โ€” 1 for the schedule trigger, 10-12 for the Shopify order search (depends on result pagination), and 2 for the Google Sheets write with calculations. At 30 days per month, that's 450 tasks monthly, fitting Zapier's Starter plan at $20/month. Make would cost $9/month for the same volume since their Shopify operations are cheaper. N8N is free if you self-host but requires server management.

Tradeoffs

Make handles the Shopify bulk order search better โ€” their Shopify module can aggregate order totals directly without needing Zapier's math formatter. N8N gives you more control over error handling when orders have missing price data or refund complications. But Zapier's date/time functions are more reliable for daily scheduling, and the Google Sheets integration handles column mapping more smoothly when you need to add fields later.

You'll hit Shopify's API rate limits if your store processes 200+ orders on busy days โ€” the search operation slows down significantly and may timeout. Orders with multiple currencies will break the revenue calculation unless you add a currency converter step first. Google Sheets has a 2-million-cell limit per spreadsheet, so after about 5 years of daily logging, you'll need to archive old data or split into multiple sheets.

Ideas for what to build next

  • โ†’
    Add weekly performance alerts โ€” Create a second Zap that emails you when weekly revenue drops below your target threshold using Google Sheets formulas.
  • โ†’
    Track product performance โ€” Modify the workflow to log best-selling products daily by parsing line_items data from each order in the search results.
  • โ†’
    Connect to dashboard tools โ€” Send the same daily data to Slack or Discord for team visibility, or connect Google Sheets to Data Studio for visual reporting.

Related guides

Was this guide helpful?
โ† Google Sheets + Shopify overviewZapier profile โ†’