Zum Hauptinhalt springen
tsecurity.de LIVE
Echtzeit-Radar & Feeds
Alle RSS Feeds
👥 Community & Social
Sichere ProgrammierungRefreshed repository pull requests page generally available(22.09.2026 um 03:25 Uhr)
Sichere ProgrammierungThe Joy of Learning the Basics Again(22.09.2026 um 03:28 Uhr)
Sichere ProgrammierungZero-Code OpenTelemetry Tracing for Dagster(22.09.2026 um 03:39 Uhr)
Linux Tipps & Hardening`prime-all`(22.09.2026 um 02:28 Uhr)
IT Security Toolsopensoho v0.15.2(22.09.2026 um 03:33 Uhr)
IT Security NachrichtenUS Proposes AI Incident Alert System in Talks With China, Bessent Says(22.09.2026 um 04:01 Uhr)
Sichere ProgrammierungRefreshed repository pull requests page generally available(22.09.2026 um 03:25 Uhr)
Sichere ProgrammierungThe Joy of Learning the Basics Again(22.09.2026 um 03:28 Uhr)
Sichere ProgrammierungZero-Code OpenTelemetry Tracing for Dagster(22.09.2026 um 03:39 Uhr)
Linux Tipps & Hardening`prime-all`(22.09.2026 um 02:28 Uhr)
IT Security Toolsopensoho v0.15.2(22.09.2026 um 03:33 Uhr)
IT Security NachrichtenUS Proposes AI Incident Alert System in Talks With China, Bessent Says(22.09.2026 um 04:01 Uhr)
Intelligence View
⚡ tsecurity.de Intelligence

Stop Paying $200/Month for Rank Tracking — Automate It with Apify in 30 Minutes

If you're tracking keyword rankings for a site or client, you've hit the same wall: rank trackers are expensive. SEMrush starts at $130/month. Ahrefs at $99. Moz at $99. But here's what those tools are actually doing: fetching Google HTML…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!

If you're tracking keyword rankings for a site or client, you've hit the same wall: rank trackers are expensive. SEMrush starts at $130/month. Ahrefs at $99. Moz at $99.



But here's what those tools are actually doing: fetching Google HTML and parsing it. That's a solved engineering problem — and you can automate it yourself for about $1/month.



I built this pipeline to track 47 keywords across 3 small client sites. It runs every Monday without me touching it and logs results to a Google Sheet. This article shows you exactly how to replicate it.









The Real Pain



You have a site. You want to know if it's ranking for 20–50 keywords. You don't need competitive intelligence dashboards or backlink graphs. You just need: "Where does my site show up for this query today?"



Manual checking doesn't work. You forget. You get inconsistent results based on your location, login state, and device. After keyword #10, you stop doing it entirely.



Scheduled automation fixes all three problems.









What We're Building



A simple 3-part pipeline:




[Apify Actor] → runs on schedule → [webhook] → [n8n workflow] → [Google Sheet]








  1. Apify's Google SERP scraper fetches real search results on a cron schedule


  2. Apify webhook fires when the run succeeds and triggers n8n


  3. n8n workflow fetches the dataset, finds your domain's rank, and appends a row to Google Sheets



No servers. No databases. No DevOps. All free or near-free.









Step 1: Set Up the Actor



The actor: lanky_quantifier/google-serp-scraper — community-built, 98.3% success rate across 172+ external runs in the last 30 days. Reliable enough to trust for weekly tracking.



Input JSON:




{
"queries": [
"best python web scraping tutorial",
"apify vs scrapy",
"automate google search python"
],
"countryCode": "US",
"languageCode": "en",
"maxPagesPerQuery": 1
}






Run it once manually to verify your keywords return data. Check that your domain appears in organicResults. If you're not in the top 10, organicResults won't contain your URL — that's expected and useful signal.









Step 2: Understand the Output



Each result looks like:




{
"searchQuery": { "term": "best python web scraping tutorial" },
"organicResults": [
{ "position": 1, "url": "https://realpython.com/...", "title": "..." },
{ "position": 2, "url": "https://yourdomain.com/...", "title": "..." }
]
}






To find your rank across all keywords:




def find_rankings(results, your_domain):
"""
Returns a list of (keyword, position_or_None) tuples.
position is None if domain not found in top 10.
"""
rankings = []
for item in results:
keyword = item["searchQuery"]["term"]
position = None
for result in item.get("organicResults", []):
if your_domain in result.get("url", ""):
position = result["position"]
break # Found it — stop scanning this keyword's results
rankings.append((keyword, position))
return rankings







Note: The outer loop iterates keywords; the inner loop scans positions within that keyword's results. The break is inside the inner loop — we stop scanning positions once we find the domain, then move to the next keyword. Don't nest your return inside the outer loop or you'll only ever process the first keyword.










Step 3: Automate with n8n + Google Sheets






3a. Set up the Google Sheet



Create a sheet called Rankings with these headers:














Date Keyword Position URL





3b. Create the n8n workflow



n8n is free to self-host. The workflow has 4 nodes:





  1. Webhook trigger — receives the Apify notification


  2. HTTP Request — fetches the run's dataset from Apify API:




   GET https://api.apify.com/v2/datasets/{{$json.resource.defaultDatasetId}}/items








  1. Code node — finds your domain's position (same logic as the Python snippet above, in JavaScript)


  2. Google Sheets node — appends rows






3c. Wire the Apify webhook



In Apify → Actor → IntegrationsWebhooks:





  • Event type: ACTOR.RUN.SUCCEEDED


  • URL: Your n8n webhook trigger URL


  • Payload template (default is fine — n8n gets resource.defaultDatasetId from it)



That's it. Now every time the scheduled run completes successfully, the sheet gets updated.









Step 4: Schedule the Actor



In Apify → Actor → Schedules, create a schedule using cron syntax:




0 9 * * 1






Every Monday at 9am UTC. Your data arrives before the workweek begins.









What This Costs
































Component Cost
Apify free tier $5/month credit included
~50 keyword checks/week ~$0.50–$1.00/month
Google Sheets Free
n8n (self-hosted) Free
Total ~$1/month


vs. $99–$200/month for a SaaS rank tracker.



The math works because PAY_PER_EVENT billing means you only pay for actual compute — not for the product team, sales team, and VC returns baked into SaaS pricing.









What You See After 4 Weeks






































Date Keyword Position URL
Mar 25 best python scraping tutorial 7 https://...
Mar 18 best python scraping tutorial 9 https://...
Mar 11 best python scraping tutorial 12 https://...
Mar 4 best python scraping tutorial Not in top 10


Position 12 → 7 in 3 weeks. That's actionable signal. You can chart it in Sheets in 2 minutes, or set up a Sheets formula to alert you when any keyword drops below position 15.









Caveats Worth Knowing



Geo variance: Google results differ by location. The countryCode input pins the location, but results can still vary slightly. Good enough for trend tracking; not reliable for precise position reporting to clients who check manually.



Top 10 only: maxPagesPerQuery: 1 returns ~10 organic results per keyword. If you're not on page 1, you'll see null — which is still useful ("not ranking yet").



Google's anti-bot measures: The actor handles proxy rotation. You don't need to manage this, but it's why running this at home without proxies tends to fail. The Apify platform's residential proxy pool is what makes the 98.3% success rate possible.









The Pattern Scales Further



The same architecture works for other data types:





  • Price monitoring → swap for lanky_quantifier/amazon-product-scraper, track competitor prices weekly


  • Job market signals → use lanky_quantifier/linkedin-job-scraper to track skill demand in your market


  • Content gap analysis → run SERP checks on competitor brand keywords to find topics they're ranking for that you're not



The Apify platform handles proxies, browser rendering, and rate limiting. You write the business logic.









Get Started





  1. Create a free Apify account — $5/month credit, no card required

  2. Open lanky_quantifier/google-serp-scraper and run it with your keywords

  3. Set up the Google Sheet + n8n workflow (~20 minutes)

  4. Add the schedule and webhook



The first week you'll catch a ranking change you'd have missed. By month two, you'll have a trend line that tells you whether your content efforts are actually working.






Stack preferences vary — the same pattern works with Airtable, Notion, or a plain SQLite file on a VPS. The actor output is JSON. Pipe it wherever you want.

Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Stop Paying $200/Month for Rank Tracking — Automate It with Apify in 30 Minutes

Thematisch verwandte Begriffe: Stop, Paying, 200Month, Rank · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-49449 | Joplin is an open source note-taking and to-do application that organise…
Advisory →
TTS Reader • tsecurity.de Voice
tsecurity.de Icon
tsecurity.de App
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag
Themen-Radar & Intelligence Matrix
Echtzeit-Taxonomie nach Angriffsvektoren & Plattformen

tsecurity.de Live Threat Radar

🔴 LIVE RADAR
MONITORING
AKTIV
CVE-DATENBANK
LIVE
🔍
Community Radar & Live Chat
Sentinel Bot online • Live-Stream
Dein Cluster: Security Explorer
Match:
lädt…
Verbindung zum Community-Stream wird aufgebaut...
Bearbeitungsmodus — Senden überschreibt deine Nachricht
Community-Puls — was gerade passiert
lädt…
Aktivitäten deiner Analysten
lädt…
Neues Thema oder Eilmeldung einreichen

Reiche interessante Links, Zero-Days oder Debatten ein. Die Community entscheidet per Upvote über die Veröffentlichung.

Heiß diskutierte Einreichungen
🔖 Gespeicherte Artikel
📂 Keine gespeicherten Artikel vorhanden.
Zurück Ziehen Vor
Links: vorheriger Artikel Rechts: nächster Artikel unten: schließen
News NIS-2 Frühwarnung Tier-1 Intel ⏱️ 3 Min vor 10 Min
Artikeldaten werden geladen...

Zurück: vorheriger Vor: nächster
↗ Original-Quelle
Social Reaktionen Deine Reaktion zählt
Einstufung & Relevanz-Poll 0 Stimmen
In sozialen Netzwerken teilen 1-Klick