Weekly streaming Top 10 tracker to Google Sheets

Snapshot the Top 10 movies and series on Netflix, Prime Video, Disney+, Apple TV, Max, and Crunchyroll into one Google Sheet every Monday morning.

Deterministic Code
Streaming AvailabilityGoogle SheetsMarketingOperationsResearch & MonitoringData Sync
PromptCreate

Build me a code workflow that snapshots the weekly streaming Top 10 charts into a Google Sheet so an entertainment newsletter team has a clean append-only history they can mine each week.

Trigger: cron, every Monday at 6:00 AM America/New_York. The schedule should be configurable as a workflow input so it is easy to change later.

Workflow inputs (with defaults):

- country: ISO 3166-1 alpha-2 code, default "us" (lowercase, as Streaming Availability requires).

- spreadsheetId: the Google Sheets spreadsheet ID to write to.

- sheetName: the tab name to append to, default "Top 10".

Step 1 — Fan out over the fixed service list. Hard-code services to exactly the six values that Streaming Availability's Get Top Shows operation supports: netflix, prime, disney, apple, hbo, crunchyroll. Do not make this list dynamic and do not include any other services, because /shows/top returns empty for anything else.

Step 2 — For each service, call Streaming Availability "Get Top Shows" twice: once with show_type=movie and once with show_type=series. So 12 calls total per run (6 services × 2 show types). Pass the configured country on every call.

Step 3 — For each returned title, build one row with these columns in this exact order:

1. Snapshot Date (ISO date of the run, e.g. 2026-06-29)

2. Service (human label: Netflix, Prime Video, Disney+, Apple TV, Max, Crunchyroll)

3. Show Type (Movie or Series)

4. Rank (1–10, from the order the API returns)

5. Title

6. Year (release year for movies, first-air year for series)

7. IMDb Rating (convert the API's 0–100 integer rating into the familiar 0.0–10.0 scale; blank if missing)

8. Runtime (minutes for movies; episode runtime for series; blank if missing)

9. Genres (comma-separated genre names)

10. Deep Link (the streamingOptions deep link for that service in the configured country; fall back to the show's general page link if no deep link is returned)

Step 4 — Append all rows in one call using the Google Sheets "Append Values" operation against the configured spreadsheetId and sheetName. Use valueInputOption=USER_ENTERED so dates and numbers render naturally. The workflow should never overwrite existing rows — it is strictly append-only so the sheet becomes a week-over-week time series.

Error handling: if a single service call fails or returns an empty list, log it and continue with the other services rather than aborting the whole run. The goal is that a partial snapshot still lands in the sheet.

Setup note for the README: the destination tab should have a header row matching the 10 column names above before the first run, so pivots and filters in Google Sheets work out of the box.

Additional information

What does this prompt do?
  • Captures the current Top 10 movies and Top 10 series for each major streaming service every Monday at 6am.
  • Appends every title as its own row in a Google Sheet with snapshot date, service, rank, title, year, IMDb rating, runtime, genres, and a deep link.
  • Builds an append-only history so you can pivot on week-over-week chart movement, new entries, and longest-running titles.
  • Runs hands-off on a weekly schedule so your newsletter or content team starts Monday with fresh chart data instead of clicking through six apps.
What do I need to use this?
  • A Streaming Availability account on RapidAPI (the free tier works for a weekly run).
  • A Google account with edit access to the destination Google Sheet.
  • A blank tab in that Sheet with a header row ready for the snapshot columns.
How can I customize it?
  • Change the country from US to any other supported region (UK, Canada, Australia, etc.) to track a different market.
  • Adjust the schedule to run on a different day or time, or drop in a second run for a midweek refresh.
  • Add or remove streaming services from the list, or split each service into its own tab inside the same Sheet.

Frequently asked questions

Which streaming services does this cover?
Netflix, Prime Video, Disney+, Apple TV, Max (formerly HBO Max), and Crunchyroll. These are the services with official Top 10 chart data available through the Streaming Availability catalog.
Can I track a country other than the US?
Yes. The country is a single setting on the workflow. Swap US for any supported region, such as UK, Canada, Germany, or Australia, and the workflow will pull that country's Top 10 instead.
What does the spreadsheet look like after a few weeks?
Each Monday adds roughly 120 new rows, one per title per service per category. Because nothing is overwritten, you end up with a tidy time series you can pivot by service, by week, or by title to see which shows are climbing or dropping.
Do I need a paid Streaming Availability plan?
No. The free RapidAPI plan covers a weekly run across six services and two content types. If you start running it more often or adding more countries, you may want to move to a paid tier.
What happens if a service has fewer than 10 titles that week?
The workflow appends whatever the chart returns. If a service is missing data for the week, you simply get fewer rows for that service, and the rest of the snapshot still lands cleanly.

Never click through six streaming apps for chart data again.

Connect Streaming Availability and Google Sheets once, and Geni captures the Top 10 across every major service every Monday at 6am.