Case Study

A Marketing Command Center That Runs Itself

How Lets Viz built a fully autonomous SEO and content engine — seven AI agents, one dashboard, zero manual publishing.

Lets Viz is a boutique data and analytics agency with a small, delivery-focused team — no dedicated marketing hire, no agency retainer. To grow inbound leads without pulling consultants away from billable work, we built the solution ourselves: a fully autonomous SEO engine with seven AI agents running 24/7 on a VPS. One dashboard. Zero manual publishing steps. A single approval click to take a fully researched, written, and SEO-scored article live.

B2B SaaS / Data & Analytics · Internal — Lets Viz Technologies·PythonFlaskGoogle Search ConsoleGA4Sanity CMSOpenAIClaude CLIVPS / Docker
Lets VizTasksSEOPinterestLinkedIn
BacklinksCWV IssuesReport

SEO Dashboard

Agent Status

Research

Mon/Wed/Fri 01:00 UTC

[2026-05-28] Agent

Write + Draft

Mon/Wed/Fri 02:30 UTC

[2026-05-28] Task 1

Content Test

Daily 04:00 UTC

[2026-05-28] Agent

Interlinking

Sunday 03:00 UTC

[2026-05-24] Agent

Daily Report

Daily 01:30 UTC

[2026-05-28] Wrote

Backlinks

Tue/Fri 03:00 UTC

[2026-05-28] Agent

18 Core Web Vitals alert(s) — https://lets-viz.com/learn/articles/looker-studio-function-log (81) and 16 more

Drafts Ready for Review

VIEW ALL

AI Analytics for Healthcare Finance Teams: 2026 Guide

AI analytics for healthcare finance teams

In Sanity2026-06-01Studio

Managed Power BI vs In-House BI Team: Mid-Market Cost Guide

managed power bi service vs in-house bi team for mid-market

In Sanity2026-06-03Studio

Power BI Financial Reporting Dashboards: P&L, Cash Flow & Budget

power bi financial reporting dashboard examples

In Sanity2026-06-05Studio

Content Queue

MANAGE
healthcare dashboard design best practices for hospitalsinformationalP10
how to automate monthly financial reporting in power biinformationalP10
how to build an AI analytics strategy for a mid-market companyinformationalP10
when to outsource power bi managementinformationalP10
managed ai analytics consulting services for mid-marketcommercialP6

Keyword Opportunities Added Today

power bi vs tableau for healthcare analyticsinformationalP8
power bi vs tableau cost for healthcare organizationsinformationalP8
power bi dax functions for healthcare reportinginformationalP8
how to choose power bi or tableau for hospital financeinformationalP8
managed power bi services for healthcare organizationscommercialP7

Recent Interlinking Activity

Review & approve →
From Boolean to Brilliant...Automated Invoice TrackingAutomated Invoice Tracking with Power BI & Power Automate
AI Automation for Small Business...AI AutomationAI vs AI Automation: Key Differences, Types & Examples
AI Automation for Small Business...Small BusinessesAI Automation for SMEs in India, UK & US | Growth & Efficiency
AI Automation for Small Business...Common MistakesHow to Audit Your Company for Automation Opportunities
AI Automation for Small Business...Best ToolsBest Low-Code AI Tools for Automating Operations
At a glance

Results That Speak for Themselves

7

AI agents running 24/7 on cron

2,000+

Words per article, SEO-scored before publish

1 click

To approve a researched, written, scored article

< 3 wk

Concept to production deploy

From challenge to outcome

The Problem & Our Approach

Manual SEO Is a Tax on Delivery Capacity

For a small agency, every hour spent on keyword research, article writing, or interlink audits is an hour not spent on client work. The existing approach was entirely ad-hoc: blog posts when there was time, no keyword strategy, no tracking of what was ranking, and no way to know whether published content was technically healthy.

  • No content pipeline — articles were written reactively, with no keyword research process, no queue, and no publishing cadence. Months could pass between posts.
  • No performance visibility — click-through rates, Core Web Vitals, canonical issues, and indexing status lived across three separate Google tools with no unified view.
  • Interlinking was ignored — internal links, one of the highest-leverage on-page SEO signals, were never systematically audited or updated as the content library grew.
  • Reporting required manual effort — no automated summary of what was working. Decision-making relied on gut feel rather than weekly GSC and GA4 signal.
  • The real cost wasn't the missing content — it was the cognitive load of managing SEO manually on top of a full client workload.

Seven Agents. One Command Center. Zero Manual Publishing.

Lets Viz designed and deployed a multi-agent SEO engine running entirely on its own VPS. A head agent orchestrates six specialist agents on independent cron schedules. Every piece of content flows through a managed queue, gets SEO-scored before it leaves the pipeline, and lands as a Sanity CMS draft awaiting a single human approval click. Nothing auto-publishes. The team stays in control; the agents do the work.

  • agent0 (Head Orchestrator) — runs daily at 02:00 UTC. Reads findings from all agents, auto-generates fix tasks (CTR fix, PSI fix, canonical fix), and queues them for review. The single coordination point.
  • agent1 (Research) — runs Mon/Wed/Fri. Queries SerpAPI for keyword gaps, synthesises topics via Claude CLI, populates the content queue with Jaccard-filtered ideas (60% overlap threshold blocks near-duplicates).
  • agent2 (Writer) — runs daily. Pulls the top-priority keyword, writes a 2,000–2,500-word article with 5 FAQs, scores against an SEO rubric, and rewrites up to twice if score is below 70. Timeout: 900s.
  • agent3 (Tester) — runs daily at 04:00 UTC. Checks every live URL for Core Web Vitals (PSI API), GSC index status, and canonical correctness. Flags issues for the head agent to route.
  • agent4 (Interlink Auditor) — runs every Sunday. Scans the full content library using verbatim noun-run extraction with hard post-filter verification — zero hallucinated anchors.
  • agent5 (Reporter) — runs daily at 01:30 UTC. Emails a formatted HTML digest with real GSC clicks/impressions, GA4 sessions, top pages, and week-on-week deltas at 07:00 IST.
  • agent6 (Backlink Prospector) — runs Tue/Fri. Discovers backlink opportunities and outreach targets in the BI / analytics niche.

What We Achieved

Full pipeline operational in under 3 weeks — agents 1–6 went live between May 8 and May 9 2026
7 agents live on VPS, all on independent cron schedules — zero manual triggers required
0 manual publishing steps — content is researched, written, scored, and pushed to Sanity CMS automatically
1 click to approve a fully researched, written, and SEO-scored article
Semantic dedup cleaned 6 near-duplicates on first run (42 → 36 queue items)
One dashboard replaced three tools — GSC, GA4, and CMS tab-switching eliminated
Infrastructure self-heals: OAuth refresh cron, Docker prune cron, stuck-task reset all automated

Seven Agents — What Each One Does

AgentScheduleWhat It Does
agent0 — Head OrchestratorDaily 02:00 UTCReads all agent findings, auto-generates fix tasks, queues for review. Single coordination point.
agent1 — ResearchMon / Wed / FriSerpAPI keyword gaps + Claude CLI topic synthesis. Jaccard dedup at 60% threshold.
agent2 — WriterDaily2,000–2,500-word article + 5 FAQs. SEO score loop: write → score → rewrite (max 2×). Pushes to Sanity CMS.
agent3 — TesterDaily 04:00 UTCPSI Core Web Vitals, GSC index status, canonical correctness on every live URL.
agent4 — Interlink AuditorEvery SundayVerbatim noun-run extraction across full content library. Zero hallucinated anchors.
agent5 — ReporterDaily 01:30 UTCHTML email digest: GSC clicks/impressions, GA4 sessions, top pages, WoW deltas. 07:00 IST delivery.
agent6 — Backlink ProspectorTue / FriDiscovers backlink opportunities and outreach targets in BI / analytics niche.

Built-In Quality Guardrails

Autonomous content at scale introduces two failure modes that defeat the purpose: duplicate ideas clogging the queue, and hallucinated interlinks breaking live pages. Both were engineered out of the pipeline explicitly.

  • 60% Jaccard overlap threshold — semantic dedup cleaned 6 live near-duplicates on first run, reducing the queue from 42 to 36 items.
  • SEO score loop (≤70 triggers rewrite) — the write → score → rewrite → score → publish loop runs inside agent2. Articles below the threshold never leave the queue.
  • 0 hallucinated interlink anchors — agent4's suggestions are verified against verbatim noun runs in the target article before surfacing in the dashboard.
  • 900s writer timeout — handles the longest comparison-cluster articles without triggering a stuck-task state.
  • Docker cache pruning cron (Sunday 04:30 UTC) — keeps disk utilisation below 20% automatically. Recovered 43 GB on first run.
We review one draft, click Approve, and the content is live. The research, writing, scoring, and interlinking happened while we slept.
Lets Viz Team·Internal — Marketing Command Center

What the Engine Produces Each Week

On a typical week the engine runs on autopilot: three research cycles, seven write attempts, one interlink audit, seven test runs, and seven email reports — all without a single manual trigger.

  • 3×/week — keyword research + content queue refresh (Mon/Wed/Fri)
  • Daily — new article draft in Sanity, SEO-scored and ready to review
  • Weekly — full interlink audit across all published content
  • Daily — GSC + GA4 email digest delivered at 07:00 IST
  • 1 click — the only human step: approve a finished, scored draft to publish it

The Pattern — Not Just the SEO Problem

The lv-seo-engine is not a bespoke SEO tool. It is an instance of a pattern Lets Viz applies across every engagement: replace a manual, expertise-dependent workflow with an instrumented, agent-driven pipeline that a small team can oversee from a single dashboard. The same architecture — cron agents, managed queue, human approval gate, automated reporting — can be applied to client reporting, lead qualification, proposal generation, or any repeatable knowledge-work loop that consumes disproportionate attention.

  • Designed for lean teams: every output goes through a human approval gate before it touches a live system.
  • Modular agent architecture: add or disable a channel (Pinterest, LinkedIn, email) by wiring one new agent into the existing head orchestrator.
  • Built on observable infrastructure: all agent runs, queue states, and test results are visible in the dashboard — no black boxes.
  • Self-healing by design: startup guards, timeout tuning, cron-based maintenance, and OAuth refresh run without human intervention.
  • Transferable to any domain where expert throughput is the bottleneck.

Discuss a similar B2B SaaS / Data & Analytics project

Lets Viz runs a paid discovery audit ($500–1,000, credited toward the project) to scope your requirements, data model, and architecture before writing a line of code.

From Lets Viz

Helping companies make data-driven decisions to achieve their Goals

Experience superior data analysis with our custom dashboards. Specialising in all tools and technologies, we turn data into visually compelling, actionable insights.

NDA-safe · No obligation · Clear next steps