Back to Projects

Brand Mention & Rank Monitor

A multi-country SEO monitoring system that tracks Google rankings and detects brand mentions across search results in real-time.

The Problem

When you need to know where your brand appears in Google-across multiple countries, languages, and competitors-manual checking doesn't scale. This client needed to monitor whether their brand was ranking in the US, UK, Germany, France, Canada, and Australia, identify which domains were publishing about them, and get notified immediately when new mentions appeared. Existing rank-tracking tools didn't offer the content detection layer, and certainly not the automated Telegram alerts.

The Solution

I built a monitoring platform that runs daily across six countries, each configured with its own Google domain and language settings. The system searches a growing list of keywords, extracts the top 10 results for each, and automatically catalogs any new domains it discovers. For tracked domains, it scrapes the actual page content looking for brand mentions-not just in titles, but in the full text. When it finds something new, it logs the detection with a content snippet and queues it for a daily Telegram summary. A web dashboard gives the client a birds-eye view: which countries are performing best, which keywords are driving visibility, and how positions are trending over time.

How It Works

  1. 1 Localized Search: Each country has a configured Google domain (google.co.uk, google.de, etc.) and language code. Searches are routed through DataForSEO's API with location-specific parameters.
  2. 2 Rolling Queue Architecture: Rather than batch-processing and waiting, the system maintains ~90 concurrent search tasks. As each completes via webhook callback, the next queues up-maximizing throughput within API rate limits.
  3. 3 Content Detection: For domains flagged for monitoring, the worker fetches page content and scans for brand mentions, extracting a snippet for context. Detections are deduplicated to prevent alert fatigue.
  4. 4 Notifications: Daily summaries are pushed to Telegram, grouped by country and keyword, showing the ranking position and domain for each new detection.

Tech Stack

  • Backend: Python, Flask, SQLAlchemy, Gunicorn
  • Database: SQLite
  • APIs: DataForSEO (search results & page scraping), Telegram Bot API
  • Infrastructure: Docker, Nginx, Hetzner VPS
  • Scheduling: Cron (daily 2 AM runs)

Results

  • Currently monitoring 6 countries with localized Google search results; architecture supports unlimited expansion
  • 90+ concurrent keyword searches per cycle (throttled to current needs, not system limits)
  • Auto-discovers and tracks new domains appearing in results
  • Daily automated scans with 12-hour processing windows
  • Sub-day alerting via Telegram when new brand mentions appear