Do not rename the downloaded file - the filename carries the bot's configuration id.
This tab presents the complete project configuration exactly as published - the same JSON the launcher fetches at launch - ready to read, copy, or import into the desktop product.
Back to the overview tab.
Project configuration
Full project JSON for seo-rank-tracker
Canonical byte length: 2,064 - the length of the canonical form the digest covers.
At launch the backend delivers this configuration to the launcher as plain JSON.
The block below is the complete project definition the launcher receives.
What you are reading has machine-readable equivalents, and the JSON at those routes
is the same document as the JSON rendered on this page: the
listing overview,
the per-listing
detail document
and the
configuration document.
The digest and byte count shown in the panel header are computed over that document's canonical
JSON form - recursively sorted keys, two-space indentation, no trailing newline - which is the
form the provisioning pipeline signs and the reconcile control re-digests; it differs from the
highlighted block above in key order and by that trailing newline, so hashing the visible text
will not reproduce the digest.
1-15 minutes depending on list length and slow hosts Uses 2 commandsExports csvwindowsmacosmacos_intellinuxv1.0.0
Frequently asked questions
How do I check my Google ranking for multiple keywords?
Paste one domain into the domain field and one keyword per line into the keywords list. The bot loops the list, runs a live search for each term, and records every result card whose display URL contains your domain, with its position on the page. The run ends with a CSV you can open in Excel or Sheets.
How do I track keyword positions in bulk for free?
The keywords variable is a list, so one run walks the entire list sequentially. The launcher is free and there is no per-run or per-keyword fee - the only cost is your own bandwidth and a few seconds per keyword. The practical bound is politeness: lists of 50 to 100 terms per run are reasonable, and huge daily volumes from one IP will trigger challenges.
How does the bot find my domain in the search results?
It reads the display URL of each organic result card, keeps the text before the first space, and applies the filter condition item.URL.includes(item.Domain). Only cards whose display URL contains the domain you configured survive into the dataset, so the output is your positions, not a copy of the whole results page.
What does the Rank column mean?
Rank is the 1-based index of the result card among the organic results rendered at run time. The index is computed before the domain filter is applied, so it is the true on-page position - a 7 means the card was the seventh organic result, not the seventh row in your file.
Why does a keyword return no rows?
Two very different causes. For a single keyword, no rows is usually the honest answer: the domain does not appear on the first page, and the filter dropped every card. For every keyword at once, the run itself failed - a consent interstitial, a verification challenge (no solver is configured), or a results-page redesign the selectors no longer match. Watch the visible browser window to tell them apart.
How do I export keyword rankings to CSV?
The consolidated Default dataset is written to a local CSV file by the launcher after the loop finishes, with one row per appearance of your domain: Domain, Keyword, URL and Rank. Rename the file with the run date and diff successive files in your spreadsheet to see movement over time.
Can I track a competitor domain instead of my own?
The domain field accepts any string, and the positions recorded are public facts visible to any logged-out visitor. But the platform terms and your local laws still govern how you collect and use the snapshot, and the bot offers no permission system of its own - that judgement is yours.
How often should I re-run the rank tracker?
As often as your volume budget allows; weekly is typical for client reporting and daily is aggressive from a single IP. The bot stores no history, so the workflow is: run, date the CSV, and diff against the previous file. Schedule it with your operating system scheduler if you want unattended weekly runs.
Does the bot use a search API?
No. It loads live results pages in a real browser session, exactly what a logged-out visitor sees. There are no API keys, no request credits and no per-query fees. The trade-off: first page only, web results only, and positions reflect your own IP and region at run time.
Is automated rank checking allowed by search engines?
Automated querying may conflict with the search engine terms of service. This bot keeps volumes human-scale and hands no challenge to a solver - it simply stops - but the decision to run it, and how often, is yours to own under the platform terms and your jurisdiction.
Does the bot need an internet connection to run?
Yes on first run: the launcher fetches its configuration by id from the backend at launch, so an internet connection is required at least the first time it starts.
Can I rename the downloaded file?
No. The downloaded file must keep its exact name - the filename carries the per-bot configuration id, and renaming it breaks the configuration fetch at launch.