Google Sheets URL Monitor Actor avatar

Google Sheets URL Monitor Actor

Pricing

from $30.00 / 1,000 results

Go to Apify Store
Google Sheets URL Monitor Actor

Google Sheets URL Monitor Actor

Google Sheets URL Monitor turns a plain spreadsheets into a **no-code web monitoring dashboard**. It reads the URLs listed in your sheet's `URL` column, visits each page in a real browser, extracts the values you care about (prices, titles), and writes the fresh values straight back into the sheet.

Pricing

from $30.00 / 1,000 results

Rating

0.0

(0)

Developer

Tin

Tin

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Google Sheets URL Monitor

What does Google Sheets URL Monitor do?

Google Sheets URL Monitor turns a plain Google Sheet into a no-code web monitoring dashboard. It reads the URLs listed in your sheet's URL column, visits each page in a real browser, extracts the values you care about (prices, titles, star counts — anything you can point a CSS selector at), and writes the fresh values straight back into the sheet, stamping an UPDATED column with the time of the last check.

Because it runs on the Apify platform, you get scheduling, API access, proxy rotation, monitoring, and integrations (Slack, email, webhooks) out of the box.

Why use Google Sheets URL Monitor?

  • Track prices of products on e-commerce sites (eBay, Amazon, any shop) directly in a spreadsheet.
  • Watch competitors — headlines, product names, availability.
  • Monitor GitHub repos — stars, watchers, releases.
  • No code, no database — the spreadsheet is both the configuration and the output. Add a row, get data.
  • Schedule it — run hourly or daily with Apify Schedules and always have fresh numbers in your sheet.

How does the spreadsheet work?

The sheet itself defines what gets scraped:

Column headerMeaning
URLThe page to visit (one per row).
Any CSS selector, e.g. .x-price-primary > spanThe text of the first matching element on that row's page is written into this cell.
A plain field name, e.g. PriceExtracted from the page text by AI (requires an OpenAI API key). No selector needed.
UPDATEDReceives the date and time of the last successful check (UTC).

A header counts as a CSS selector when it contains selector syntax (., #, [], >, +, ~, :) or consists only of HTML tag names (h1, td strong). Anything else — Price, Product Name, Stars — is treated as an AI-extracted field.

The AI prompt can even create new columns: if your aiPrompt asks for extra fields (e.g. "add a DiscountPercentage column"), the Actor appends them as new columns at the end of the sheet and fills them — on later runs they behave like regular AI columns.

Selectors that don't match a page (e.g. an eBay price selector on a GitHub row) simply leave the cell empty — so one sheet can mix many different sites.

How to use Google Sheets URL Monitor

  1. Create a Google Sheet with a URL column, one or more CSS selector columns, and optionally an UPDATED column.
  2. Create a Google Cloud service account, enable the Google Sheets API, and download its JSON key.
  3. Share the spreadsheet with the service account's client_email as an Editor.
  4. Paste the spreadsheet URL and the JSON key into the Actor input and click Start.
  5. Watch the values and timestamps appear in your sheet. Add an Apify Schedule to keep them fresh automatically.

Tip: No service account yet? Just share the sheet as "Anyone with the link can view" and run the Actor without a key — it runs in read-only mode, storing extracted values in the dataset so you can verify your selectors before enabling write-back.

Input

FieldDescription
spreadsheetUrlFull URL of the Google Sheet to monitor (required). Row 1 must contain a URL column; every other header is a CSS selector or an AI-extracted field name.
googleServiceAccountKeyContents of the Google service account JSON key file (secret). The sheet must be shared with the service account's email as an Editor. Omit to run in read-only mode (results go to the dataset only).
aiPromptOptional instructions guiding the AI columns: value formats, language, disambiguation rules (e.g. "Price is the current selling price only"), and even new columns to add (e.g. "add a DiscountPercentage column when the page shows a discount").

Further advanced options (OpenAI model, concurrency, retries, delays, proxy) are available on the Actor's Input tab.

Output

Every processed row is also stored in the dataset. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

{
"url": "https://www.ebay.com/itm/335522548886",
"rowNumber": 3,
"data": {
".x-item-title__mainTitle": "Size 9 - Nike Air Jordan Pro Strong Playoff",
".x-price-primary > span": "US $109.19",
".article-heading": null
},
"error": null,
"updatedAt": "2026-07-18T09:12:45.000Z"
}
FieldDescription
urlThe monitored page.
rowNumber1-based row number in the sheet.
dataExtracted text per CSS selector (null when the selector didn't match).
errorError message if the page failed to load, otherwise null.
updatedAtISO timestamp of the check.

How much does it cost to monitor URLs from a Google Sheet?

Each row opens one page in a headless Chrome browser. A run over a few dozen rows typically consumes only a fraction of a compute unit, which fits comfortably within Apify's free tier. Costs scale linearly with the number of rows and how often you schedule the Actor.

Tips and advanced options

  • Bot-protected sites (eBay, Amazon): enable residential proxies in the Actor input to avoid blocks.
  • Slow, JavaScript-heavy pages: increase the selector timeout in the Actor input.
  • Broken selector? A previously working cell coming back empty usually means the site changed its markup — update the column header.
  • Failed pages are logged and left untouched in the sheet, so a temporary outage never wipes your data.

FAQ, disclaimers, and support

Scraping publicly available data is generally legal, but you are responsible for complying with the target websites' Terms of Service and applicable laws. Do not use this Actor to collect personal data.

Found a bug or need a feature? Open an issue on the Actor's Issues tab. For custom monitoring solutions, feel free to reach out.