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

How to Sync Shopify Inventory to Google Sheets with Zapier

Automatically update your inventory tracking spreadsheet whenever product stock levels change in Shopify.

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

Best for

Store owners who update inventory 1-500 times monthly and need reliable spreadsheet syncing without coding.

Not ideal for

High-volume stores needing real-time updates or complex multi-location inventory calculations.

Sync type

polling

Use case type

sync

Real-World Example

πŸ’‘

A 12-person clothing boutique uses this to keep their master inventory sheet current across 3 staff members who check stock levels throughout the day. Before automation, they updated the sheet manually twice daily and often sold items that were actually out of stock, leading to customer complaints and refund requests.

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 admin or staff access
Google Sheets spreadsheet with existing product rows
Column in your sheet containing Shopify product IDs
Zapier account (free tier works for basic usage)
Products in Shopify with inventory tracking enabled

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Product IDid
Inventory Quantityinventory_quantity
4 optional fieldsβ–Έ show
Product Titletitle
SKUvariants__sku
Updated Atupdated_at
Available Statusvariants__available

Step-by-Step Setup

1

Dashboard > Create Zap > Trigger

Create new Zap with Shopify trigger

Start a fresh Zap and connect it to your Shopify store. You'll use the 'Updated Product' trigger to catch inventory changes.

  1. 1Click 'Create Zap' from your Zapier dashboard
  2. 2Search for 'Shopify' in the trigger app dropdown
  3. 3Select 'Updated Product' as your trigger event
βœ“ What you should see: You should see the Shopify logo with 'Updated Product' selected as your trigger.
Zapier
+
click +
search apps
Google Sheets
GO
Google Sheets
Create new Zap with Shopify …
Google Sheets
GO
module added
2

Trigger > Account

Connect your Shopify account

Zapier needs permission to read product updates from your store. Use your admin login credentials to authenticate.

  1. 1Click 'Sign in to Shopify' button
  2. 2Enter your store's .myshopify.com URL
  3. 3Log in with your Shopify admin credentials
  4. 4Click 'Install app' to authorize Zapier
βœ“ What you should see: Green checkmark appears next to Shopify with your store name displayed.
⚠
Common mistake β€” You need admin or staff permissions with 'Products' access - basic customer accounts won't work here.
Zapier settings
Connection
Choose a connection…Add
click Add
Google Sheets
Log in to authorize
Authorize Zapier
popup window
βœ“
Connected
green checkmark
3

Trigger > Event

Configure product update settings

Tell Zapier which product changes should fire the trigger. Focus on inventory-related updates to avoid unnecessary runs.

  1. 1Leave 'Product ID' field blank to monitor all products
  2. 2Set 'Updated Fields' to 'inventory_quantity' if available
  3. 3Click 'Continue' to save trigger settings
βœ“ What you should see: Trigger configuration panel shows your selected options and a 'Continue' button.
⚠
Common mistake β€” Don't leave 'Updated Fields' blank - this fires on ANY product change including title edits, which wastes tasks.
4

Trigger > Test

Test Shopify connection

Zapier pulls a recent product update to verify the connection works. This sample data shows what fields you can map later.

  1. 1Click 'Test trigger' button
  2. 2Wait for Zapier to fetch a sample product record
  3. 3Review the sample data to confirm inventory fields are present
βœ“ What you should see: Sample product data appears showing fields like 'inventory_quantity', 'title', and 'id'.
Zapier
β–Ά Turn on & test
executed
βœ“
Google Sheets
βœ“
Shopify
Shopify
πŸ”” notification
received
5

Action > App & Event

Add Google Sheets action

Now set up the action that updates your tracking spreadsheet. You'll modify existing rows rather than creating new ones.

  1. 1Click the '+' button to add an action step
  2. 2Search for 'Google Sheets' in the app list
  3. 3Select 'Update Spreadsheet Row' as your action event
βœ“ What you should see: Google Sheets appears as your action app with 'Update Spreadsheet Row' selected.
⚠
Common mistake β€” Choose 'Update Row' not 'Create Row' - you want to modify existing inventory records, not duplicate them.
6

Action > Account

Connect Google Sheets account

Grant Zapier access to read and edit your Google Sheets. Make sure you use the Google account that owns your inventory spreadsheet.

  1. 1Click 'Sign in to Google Sheets'
  2. 2Select your Google account from the list
  3. 3Click 'Allow' to grant Sheets permissions
βœ“ What you should see: Google Sheets shows as connected with your email address visible.
7

Action > Data

Select your inventory spreadsheet

Point Zapier to the specific Google Sheet that tracks your inventory. The sheet needs existing product rows to update.

  1. 1Select your inventory tracking spreadsheet from the dropdown
  2. 2Choose the worksheet tab that contains inventory data
  3. 3Select the column that contains Shopify product IDs for matching
βœ“ What you should see: Your spreadsheet name and worksheet appear in the configuration with available columns listed.
⚠
Common mistake β€” Your sheet must have a column with Shopify product IDs - Zapier needs this to find the right row to update.
8

Action > Data

Map inventory fields

Connect Shopify's inventory data to your spreadsheet columns. This determines what gets updated when stock levels change.

  1. 1Set 'Lookup Column' to your Product ID column
  2. 2Map 'Lookup Value' to Shopify's 'ID' field
  3. 3Map your inventory quantity column to Shopify's 'Inventory Quantity'
  4. 4Map any other fields like product title or updated date
βœ“ What you should see: Field mapping shows Shopify data fields connected to your spreadsheet columns.
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
9

Action > Test

Test the Google Sheets update

Run a test to make sure Zapier can find and update the right row in your spreadsheet. Check that the data flows correctly.

  1. 1Click 'Test action' to run the update
  2. 2Wait for the test to complete successfully
  3. 3Open your Google Sheet to verify the row was updated
  4. 4Check that the inventory quantity matches Shopify's data
βœ“ What you should see: Test success message appears and your spreadsheet shows the updated inventory data.
⚠
Common mistake β€” If no row updates, check that your Product ID column contains exact matches for Shopify's product IDs.
10

Zap Editor > Publish

Turn on your Zap

Activate the automation so it starts monitoring your Shopify inventory. From now on, stock changes update your sheet automatically.

  1. 1Click 'Publish Zap' button in the top right
  2. 2Give your Zap a descriptive name like 'Shopify Inventory Sync'
  3. 3Click 'Turn on Zap' to activate it
βœ“ What you should see: Zap status shows 'On' with a green toggle switch.

Drop this into a Zapier Code step.

Copy this template{{inventory_quantity__value}} > 0 ? "In Stock" : "Out of Stock"
β–Έ Show code
{{inventory_quantity__value}} > 0 ? "In Stock" : "Out of Stock"

... expand to see full code

{{inventory_quantity__value}} > 0 ? "In Stock" : "Out of Stock"

Scaling Beyond 500+ inventory updates/day+ Records

If your volume exceeds 500+ inventory updates/day records, apply these adjustments.

1

Switch to webhook triggers

Upgrade to Shopify Plus for reliable webhook delivery. Replace the polling trigger with Webhooks by Zapier using Shopify's inventory update endpoint to get real-time updates.

2

Batch Google Sheets updates

Use Zapier's Digest feature to collect 10-50 inventory changes and update your sheet in batches every 15-30 minutes. This reduces API calls and prevents rate limiting.

3

Add location-specific filtering

If you have multiple Shopify locations, add filters to only sync specific warehouses or aggregate inventory totals before updating sheets. Otherwise you'll get separate updates for each location.

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 have under 1,000 inventory updates per month and want something that works in 15 minutes without coding. The Google Sheets integration is bulletproof and handles lookup/update operations better than Make's version. Skip Zapier if you need real-time updates - it polls Shopify every 5-15 minutes depending on your plan, so immediate stock changes won't sync instantly.

Cost

This workflow uses 1 task per inventory update. At 500 updates monthly, that's 500 tasks total - fits the Starter plan at $20/month with room to spare. Make charges $9/month for 1,000 operations but their Shopify polling is less reliable. N8n is free for self-hosting but you'll spend 3-4 hours debugging the Google Sheets lookup logic that Zapier handles automatically.

Tradeoffs

Make's Shopify module has better webhook support for real-time updates instead of polling. N8n lets you batch multiple row updates in one operation if you're syncing hundreds of products simultaneously. But Zapier's Google Sheets integration is more mature - it handles row lookups, creates missing rows automatically, and formats data types correctly without custom functions.

Shopify's webhook reliability varies by plan - Basic Shopify misses about 2-3% of inventory webhooks under heavy load. Google Sheets API sometimes returns stale data for 30-60 seconds after updates, so your Zap might overwrite fresh changes. If you track inventory across multiple Shopify locations, you'll need filter steps since Zapier gets separate events for each location's stock changes.

Ideas for what to build next

  • β†’
    Add low stock alerts to Slack β€” Set up a filter that posts to Slack when inventory drops below 10 units, so your team knows when to reorder.
  • β†’
    Create backup inventory snapshots β€” Build a second Zap that copies your entire inventory to a separate 'History' sheet daily for trend analysis and backup.
  • β†’
    Sync pricing changes to sheets β€” Extend this workflow to also update product prices in your spreadsheet when they change in Shopify.

Related guides

Was this guide helpful?
← Google Sheets + Shopify overviewZapier profile β†’