Monitoring Commercial MOFU

Keyword rank tracking with target positions and drop alerts

Track target keyword positions on top of Google Search Console data and get a Telegram or Slack alert the moment they drop below threshold or fall by a full page.

Keyword rank tracker for example.com showing target positions, average position over a 7-day window, and triggered drop alerts
Per-keyword rank panel with target threshold, 7-day average position, and the most recent drop-step alert.

Google Search Console shows where your pages actually rank. Content monitoring shows when those pages change. Until now, the missing piece between them was a simple question: did this position drop below an acceptable level — and should someone be paged? Keyword rank tracking adds that layer. You name a few keywords that matter, set a target position for each, and 2-UA watches them on top of the daily Search Console import. The moment a keyword crosses the line, an alert lands in Telegram or Slack with the exact reason.

What it does in one sentence

Keep a watchlist of keywords per site. Every night after the GSC import, 2-UA checks each keyword against two rules — a target average position and a sudden drop step — and sends one consolidated alert per site if any keyword crosses a threshold.

Keyword rank tracker dashboard for example.com with three tracked keywords, target positions, current 7-day average, and one keyword flagged below target
The per-site keyword rank panel: target positions, 7-day average, latest position from the most recent GSC day, and a status badge.

Two alert rules, both off by default

Each watched keyword has two independent triggers — and both are configurable per keyword:

  • Target position threshold. Set a number — say 10. If the keyword's average position over a rolling window (default 7 days) is worse than that target, the keyword fires an alert. Averaging smooths out single-day spikes from Google ranking volatility.
  • Drop-step alert. If today's position is at least N positions worse than yesterday's reading, fire. Default step is 10 — a full page of search results. This catches sudden falls even when the average is still on target. Available on paid plans.

Both rules read from the same Search Console data — so there is no extra fetcher, no scraping, and no separate billing for Google API calls. The numbers you see are exactly what GSC reports, just with custom thresholds on top.

Site-wide and per-page modes

A keyword can be tracked in two modes:

  • Site-wide (default) — 2-UA aggregates positions across every page that ranks for that query. Best for keywords where Google may shift the landing page over time, or when you simply care that something from your site holds the position.
  • Page-bound — pin the keyword to one tracked URL on your site. Best for landing pages where a specific URL is supposed to rank for that exact term. The alert fires only when that page's rank slips, not when Google promotes a different URL.

For site-wide tracking the average and latest position are computed across all pages on the latest day, so the signal stays stable when Google rotates landing URLs for the same query.

What the notification looks like

Alerts are aggregated per site — one message lists every keyword that crossed a threshold, regardless of how many. Two real-shape examples:

🔻 Keyword rank alert: 1 keyword below target — https://example.com

· "best seo monitoring tool" — avg position 14.2 over 7 days is below target 10

Open dashboard: https://2-ua.com/site/123/keywords
🔻 Keyword rank alert: 3 keywords below target — https://example.com

· "best seo monitoring tool" — avg position 14.2 over 7 days is below target 10
· "website change tracker" — position dropped by 11.5 (from 4.5 to 16.0)
· "competitor seo watch" — avg position 22.0 over 7 days is below target 15

Open dashboard: https://2-ua.com/site/123/keywords

The message goes to all configured destinations for the site — Telegram chats, Slack channels, or both. There is also a 24-hour cooldown per keyword, so a single regression cannot turn into a flood. Cooldown is consumed only when the message is actually delivered, so quiet hours and template filters do not silently swallow alerts.

Plan-aware limits

Keyword tracking is plan-aware:

  • Free 7-day trial — up to 5 watched keywords per site, 14-day position history, threshold alert only.
  • Monitor Lite — up to 5 watched keywords per site, 30-day position history, threshold alert only.
  • One website plans — up to 50 keywords per site, 90-day history, both threshold and drop-step alerts.
  • Enterprise / Giga plans — start at 100 keywords per site and 120-day history, then scale with the selected tier.

Position history is retained for the period above. Older rows are trimmed automatically once a day.

Tracked keywords are never lost in the long tail

The daily import takes the top 5 000 search rows for each site. On large sites a target keyword can easily fall outside that window — historically that meant no data, ever. To prevent this, after the bulk fetch 2-UA loops through every active watched keyword on the site and runs a targeted GSC query for any keyword that did not appear in the bulk rows. The result is filed into the same table as the bulk import, so the threshold and drop-step rules always have data to evaluate.

How alerts are computed

  1. Every morning at 04:00 UTC, the GSC import pulls the previous day's date / query / page rows.
  2. At 04:30, the keyword check service walks every active watched keyword on every confirmed site.
  3. For each keyword, it computes the average position over the configured window and compares the latest day's position to the previous reading on file.
  4. If a rule is triggered and the site's alert policy allows the event right now (no quiet hours, no template suppression), the keyword is added to the per-site dispatch list.
  5. One consolidated message is sent and the per-keyword cooldown timestamp is updated.

The 04:45 UTC retention job then trims any history rows older than the plan limit.

How to start

  1. Open Site → Keyword tracker from the per-site overview.
  2. Add a keyword. Pick a target position (the lower the more strict — 10 means the first page).
  3. Optionally set the averaging window (1–30 days) and the drop-step threshold.
  4. Optionally bind the keyword to a specific tracked URL on the site for page-bound monitoring.
  5. Wait for the next nightly import. Status updates the next morning.

Telegram and Slack delivery use the same routing as every other site notification — no extra setup needed if your site already has notifications wired up.

When to use this versus the GSC overlay

The GSC integration in 2-UA already overlays clicks, impressions, CTR, and average position with content-change markers — that view is for diagnosis. Keyword rank tracking is for routing. If you want to investigate why traffic moved, use the GSC chart. If you want to be told when a specific keyword needs attention, add it to the keyword tracker. Most teams use both: the chart to debug, the tracker to be paged.