Skip to main content
AMZ Selling Tools logo

Amazon product data in Google Sheets, refreshed daily

Copy one Apps Script into your own spreadsheet and an AMZ Selling Tools menu appears. It imports the latest check for every tracked listing, or the full history, into a tab you own.

Google Sheets setup page with the copy-paste Apps Script that pulls tracked Amazon data into a spreadsheet

Most people who track Amazon listings end up in a spreadsheet anyway — that is where the margin formula lives, where the buyer’s list is, and where the weekly report gets built. So AMZ Selling Tools puts the data there directly: one Apps Script pasted into your own spreadsheet, and a menu that imports every tracked listing into a tab. No add-on to install, no Google Cloud project, no connector to buy.

How the connection works

The script runs inside your spreadsheet and calls your own read-only API key. Setup takes about two minutes:

  1. Open the Apps Script editor. In the Google Sheet you want the data in, use the Extensions menu, then Apps Script. A code editor opens in a new tab.
  2. Paste the script. Delete the sample code, paste the script from your account’s Google Sheets page — the copy shown there already has your API key filled in — and save.
  3. Reload the spreadsheet. After a few seconds an “AMZ Selling Tools” menu appears next to Help.
  4. Run the first import. Choose “Import latest check” from that menu. Google asks for authorisation the first time, because the script needs permission to edit that spreadsheet and to call our API. Approve it and run the item again.
  5. Done. A tab named “AMZ Data” is created and filled. Rename the tab if you like — one constant at the top of the script tells it where to write.

Nothing on our side connects to Google. There is no OAuth grant to us, no shared document and no third-party access to your Drive: the only authorisation in the whole flow is the one Google itself asks for, inside your own spreadsheet, for a script you pasted there.

What lands in the sheet

The menu offers two imports, and they answer different questions.

  • Import latest check — one row per tracked listing, as of its most recent check. This is the working sheet: today’s price, stock, Buy Box, rank and delivery promise for everything you follow.
  • Import full history — every check ever recorded, one row each, fetched 500 rows at a time until the history is exhausted. This is the analysis sheet: the series behind a chart or a pivot table.

Values are matched to the header names in row 1, so a sheet you have already arranged keeps its column order; any field the sheet has no column for is added at the end rather than dropped. Each import is written below what is already there, separated by a blank row — the script appends, it never clears your sheet, so yesterday’s import stays where it is and the file grows into a series.

The available columns are the same 92 the API documents, in eleven groups: identity, product, ranking, ratings, availability, pricing, sellers, content, media, details and the error column that records a check that could not be completed. In practice that means price, list price and sale price, deal and coupon fields, the Buy Box winner and the top three offers with their fulfilment types and prices, the availability line, delivery dates and fee, both Best Sellers Rank slots, rating, review count, the “bought in past month” figure, the title, bullets and image URLs — each row stamped with the ASIN, the marketplace, the location and the time of the check.

Four steps, once

1. Your key already exists

Every verified account has a personal read-only key. There is no plan gate and nothing to request — the script you copy comes with it filled in.

2. Paste the script

Extensions, then Apps Script, then paste and save. It is one file of plain Apps Script — readable, editable and yours.

3. Import from the menu

Latest check for a working sheet, full history for analysis. Both write into an AMZ Data tab in the spreadsheet you ran them from.

4. Add a daily trigger

A time-driven trigger in Apps Script runs the import each morning, so the sheet fills itself with your laptop shut.

Refreshing every morning

The import is a menu item until you schedule it, and scheduling is Google’s job rather than ours — which is why it is worth doing deliberately. In the Apps Script editor, open Triggers, add a trigger for the import function, choose Time-driven, a Day timer, and an hour that sits comfortably after your checks have finished. Checks run overnight in each marketplace’s local time, so an early-morning window is the usual choice. Google may ask for authorisation once more; after that the import runs on its own, every day, with nothing open on your machine.

Because imports append, a daily trigger gives you a dated block per day rather than a sheet that overwrites itself. If you would rather keep one flat current view, run the latest-check import into a fresh tab, or clear the tab before the run — the script writes wherever its sheet-name constant points.

A worked example

Say you follow forty competitor ASINs in two US cities — eighty tracked rows. You add them once, set the daily schedule, and add a trigger for 07:00. Each morning the sheet gains eighty rows carrying yesterday’s price, the Buy Box winner, the availability line, the delivery date each city was promised and both rank slots. A pivot on the ASIN column gives you a price-by-day matrix; a filter on the availability column gives you every rival that went out of stock this week; a chart on the rank column gives you the line Amazon does not keep. At eighty rows that costs $8.00 a month, and the spreadsheet is entirely yours — formulas, tabs, sharing and all.

If you would rather export a file

A sheet is not the only way out. Export the tracker to CSV, TSV or a plain text file: the columns you have on screen, in the order you have them, for the rows you have selected, with the full check-by-check history rather than just the latest reading. You can narrow an export to one marketplace or to checks before a given date, and timestamps come out in your own timezone. It is the right tool for a one-off hand-off to a client or an accountant, where a live connection would be overkill.

Or call the API yourself

Underneath both routes is a read-only REST API, and you are welcome to use it directly — the Apps Script is simply the friendliest client for it. A personal key goes in an Authorization: Bearer header, and seven GET endpoints cover the account, the marketplaces, the column dictionary, your tracked ASINs, the latest snapshot per listing, the full snapshot history and the history for a single ASIN. It returns JSON, it never writes anything, and the same 92 columns are documented field by field with types and examples. Rate limits are published: generous on the light endpoints, and per-minute, per-hour and per-day ceilings on the history ones. Power BI, a Python notebook, a cron job on your own server — anything that can send a header can read it.

Both the Sheets connection and the API are included on every plan and during the trial. There is no data add-on, no export tier and no per-seat charge: if a column is on your screen, it is in your sheet.

What it costs

Tracking is a flat $0.10 per ASIN per month — 30 daily checks of all 92 columns, across 12 marketplaces and 22 shopper locations, with alerts, CSV, Google Sheets and the API included. Fifty listings is $5.00 a month. Every new account starts with a free 30-day trial of up to 10 products and 10 checks a day, with no card required, and the Sheets connection works during the trial exactly as it does afterwards.

  • Competitor tracker — prices, stock, Buy Box and delivery for any ASIN, which is the sheet most people build first.
  • BSR tracker — daily Best Sellers Rank, main and sub-category, the series worth charting.
  • Listing monitoring — title, images, A+ content and the rest of the page, compared check to check.
  • Bought in past month tracker — the demand badge, recorded daily alongside everything else.
  • Compared with Keepa — where a live listing tracker and a price-history database do different jobs.

Common questions

How do I get Amazon product data into Google Sheets?

Open your spreadsheet, use Extensions then Apps Script, paste the script from your account’s Google Sheets page and save. Reload the sheet and a new menu appears with two imports: the latest check, or the full history.

Does the sheet update automatically?

Once you add a time-driven daily trigger in Apps Script, yes — Google runs the import each morning with nothing open on your machine. Out of the box the import is a menu item you run yourself.

Does importing overwrite what is already in my sheet?

No. Each import is appended below the existing rows with a blank separator row, into a tab named AMZ Data, and values are matched to the header names already in row 1.

Do I need an add-on or a Google Cloud project?

Neither. It is one Apps Script file inside your own spreadsheet, and the only authorisation involved is the one Google asks you for the first time you run it. We hold no access to your Drive.

Which columns can I pull into a sheet?

All 92 documented columns, in eleven groups spanning identity, product, ranking, ratings, availability, pricing, sellers, content, media and details — price, Buy Box, stock, delivery, rank, reviews, images and the rest.

Is the Google Sheets connection an extra?

No. CSV export, the Google Sheets connection and the read-only API are included on every plan and during the trial, on top of the flat $0.10 per ASIN per month.

Pricing

One flat price. No hidden costs.

One price per ASIN, whatever you track — no volume games, no add-ons. Every new account starts with a free 30-day trial (10 products, checked daily, no card), and one-time credit packs never expire.

  • From $5 / month
  • One flat rate per ASIN
  • Free 30-day trial

A fraction of Keepa (€29/mo) or Helium 10 (from $99/mo). See how we compare: vs Keepa · vs Helium 10