๐Ÿ“Š Track weekly Bing keyword rankings with Apify and Google Sheets

โšก 5 views ยท ๐Ÿ“Š Market Research & Insights

Description

Quick overview

Most rank trackers charge per keyword per month. This one runs on your schedule and writes to your sheet. Before each search it reads the history back, so every row carries where the result sat last week, how far it moved, and whether that is up or down.

How it works

  1. Runs every Monday morning on a scheduled trigger.
  2. Loads your keyword list plus tracking settings (your domain, market, and device).
  3. Searches Bing once per keyword using the Apify Bing Search API actor.
  4. Filters the returned dataset to keep only organic search results.
  5. Formats each organic result into a single Google Sheets row, flags results that match your domain, and adds the current โ€œWeek ofโ€ date.
  6. Appends this weekโ€™s rows to the same Google Sheets tab, which becomes the history that the next run reads.

Setup

  1. Create an Apify account, add your Apify API token as an Apify credential in n8n, and ensure the workflow can run the johnvc~bing-search-api actor.
  2. Connect Google Sheets credentials and select the target spreadsheet document and sheet tab in the Google Sheets append step.
  3. Replace the example keywords and set your yourDomain, market (for example en-US), and device (for example desktop) values.
  4. On the very first run there is no history yet, so every row comes back as New and the movement columns stay empty. That is expected, and the second run starts reporting movement.

Requirements

Customization

Additional info

How do I track Bing rankings automatically? Put your keywords and your domain in one Set node and let the weekly schedule run. Each run appends one row per organic result, stamped with the run date, and the sheet becomes a rank history you own rather than a dashboard you rent.

What makes this different from exporting a rank list? The comparison. Before it searches, the workflow reads the existing rows back out of your sheet, finds the most recent snapshot for each keyword and URL, and fills in three columns: where that result sat last week, how many places it moved, and whether that is Up, Down, Flat or New. A rank list tells you where you are. This tells you what changed.

Which way does the Movement number run? Rank counts upward but a better position is a smaller number, so Movement is last weekโ€™s rank minus this weekโ€™s. Positive means it climbed. New means the URL was not in the last snapshot at all, which is either a genuine arrival or a result that dropped out and came back.

What happens on the very first run? There is no history yet, so every row comes back as New and the movement columns stay empty. That is expected. The read node is configured to carry on if the tab does not exist, so the first run cannot fail there: it creates the tab, and the second run starts reporting movement.

Why did I get so few organic rows? Commercial queries return far fewer organic results because Bing gives the ads more of the page. A thin result set on a high intent keyword is the search engine, not the workflow.

What does it cost? The template is free. A keyword costs a fraction of a cent per run, so a 20 keyword weekly check is a few cents a month.

About Apify. Bing Search API runs on Apify, a platform of ready-made scrapers and APIs for sources that have no usable public API. Actors are pay per use with no subscription, and they run in the cloud, so nothing runs on your machine and nothing breaks when the source changes its markup.

New to Apify? You can set up a free account and get the API token this template needs in a couple of minutes.

๐Ÿ”— Nodes Used

Google Sheets, Slack, Schedule Trigger, Filter, Summarize

๐Ÿ“ฅ Import

Download workflow.json and import into n8n: Workflow menu โ†’ Import from File

๐Ÿ“– Importing guide ยท ๐Ÿ”‘ Credential setup