An agentic SEO program launch is the ninety-day arc that turns a new domain — or a long-neglected one — into a compounding source of organic and LLM-citation traffic. The work splits into three phases: a thirty-day audit-and-crawler month, a thirty-day velocity-and-citation month, and a thirty-day refresh-and-ROI month. Each phase has a finite deliverable, a single owner, and a gate that has to close before the next one opens.
The reason the phased shape matters is that agentic SEO compounds on a quarterly clock, not a monthly one. New domains rarely move in the first thirty days — index coverage is still being built, topical authority has not yet accumulated, and citation engines have not finished sampling the new corpus. Programs that measure success at thirty days typically fire the agency, switch tactics, and miss the inflection that arrives between day seventy and day one hundred. The ninety-day shape is calibrated against that curve.
What follows is the program we run. The thirty-day audit covers a hundred technical and editorial checks, builds the agentic crawler, and produces the topical map. The sixty-day mid-phase ramps content velocity, ships schema discipline, and stands up the citation tracker. The ninety-day finish installs the refresh cadence, the visibility scorecard, and the monthly ROI review with quarterly projection. Each phase is broken down with milestones, owners, and the pitfalls that flatten programs at scale.
- 01Agentic SEO compounds quarterly, not monthly.Indexing latency, topical authority accumulation, and citation-engine sampling cycles all run on a roughly ninety-day clock. Programs measured at thirty days routinely cancel before the inflection.
- 02Citation tracking is the new ranking signal.Share-of-citation across ChatGPT, Perplexity, and Gemini for your priority queries is now the leading indicator that organic traffic will follow. The program stands up the tracker in month two and treats it as core, not optional.
- 03Topical authority needs a cluster strategy.Random posts on disconnected topics produce random traffic. A topical map — pillar plus supporting clusters, internal-link graph, deliberate publication order — is what compounds. The audit phase produces the map; the velocity phase executes it.
- 04Refresh cadence prevents decay.Half of organic traffic decline is content rot, not algorithm change. A refresh queue — surfaced from the agentic crawler, prioritised by traffic-at-risk — installed in month three turns the program from a publishing pipeline into a compounding asset.
- 05ROI measured monthly, projected quarterly.Monthly review keeps the program honest — leading indicators (citations, impressions, crawl health) move first; lagging indicators (sessions, conversions, revenue) follow. Quarterly projection sets executive expectations against the actual compounding curve.
01 — Why 90 DaysAgentic SEO compounds quarterly, not monthly.
The single most common reason agentic SEO programs underperform is not the strategy or the execution — it is the measurement window. Programs measured at thirty days are measured before the mechanism has had time to operate. Index coverage on a new corpus of a hundred posts takes roughly four to six weeks to stabilise. Topical authority builds across the cluster as supporting posts link to and contextualise the pillar, which requires the cluster to actually exist — typically a sixty-to-ninety day arc. LLM citation engines sample, embed, and rank your pages on cycles that are measured in weeks, not days. The compounding curve is quarterly by construction.
The ninety-day program is the smallest window that lets the mechanism actually run. The first thirty days are foundation — audit, crawler, topical map — none of which produces traffic on its own. The middle thirty days are the velocity ramp — twenty to forty posts published against the map, schema discipline tightened, citation tracking installed. The last thirty days are where the compounding shows up: the refresh queue catches decay, the scorecard surfaces citation share, and the monthly ROI review compares actuals against the quarterly projection.
A pragmatic note on expectations. The first thirty days will not move organic traffic in any reliable way. The second thirty days will move impressions and citation share but rarely sessions yet. The third thirty days is when the indicators begin to compound — and the curve typically steepens between day ninety and day one-eighty rather than flattening. Programs that survive into the second quarter capture roughly three times the cumulative traffic of programs that stop at ninety. The phased plan below is designed to make survival more likely by setting the right expectations at each gate.
The other piece of context worth setting at the start: a ninety- day program is a launch, not a destination. The program shape described below is what runs through the first quarter. After day ninety the cadence changes — the audit becomes a quarterly spot-check, the velocity ramp becomes a steady-state publishing rhythm, and the refresh queue becomes the largest single source of recovered traffic. The program does not end at day ninety; it transitions into the steady-state operating model.
"The most expensive moment in any SEO program is the day a stakeholder asks why the thirty-day report does not show traffic growth. The answer is always the same: the mechanism has not started yet."— Our agentic SEO program retrospectives
02 — Days 1-30100-point audit, crawler build, topical map.
Month one is foundation. The deliverables are concrete — a scored hundred-point audit with prioritised remediation, a working agentic crawler running weekly against the production domain, and a topical map that names every pillar, every supporting cluster, and the publication order. None of these move traffic by themselves; together they are what the next sixty days execute against.
The audit is severity-weighted across five domains: crawl and index, on-page editorial, schema and structured data, internal link graph, and LLM-citation readiness. Critical findings block the velocity ramp until they are fixed — there is no point publishing forty new posts onto a base with broken canonicals or duplicate H1s. High findings are scheduled into the first sprint of month two. Medium and low findings get parked in the backlog. The audit takes roughly five working days; the remediation work fills the remaining three weeks of the phase.
100-point audit
Crawl · On-page · Schema · Links · LLMFive-domain audit, severity-weighted. Findings exported as a remediation backlog with owners. Critical findings block phase two — no velocity ramp on a broken base.
Deliverable: audit reportAgentic crawler build
Orchestrator · Auditor · ReporterStand up the trinity (see the linked crawler tutorial). Schedule on a weekly cron. The crawler becomes the regression catch and the refresh queue feeder for the rest of the program.
Deliverable: weekly crawl reportTopical map
Pillars · Clusters · Internal linksIdentify three to seven priority topical clusters. Each cluster: one pillar, eight to twelve supporting posts, an explicit internal-link plan. The map is what month two publishes against.
Deliverable: cluster mapCitation readiness pass
Schema · Authorship · CitabilityTighten author bios, add Article + Organization + Person schema, fix canonical drift, ensure each page answers a specific question with a clean extract. LLM engines reward citability, not keyword density.
Deliverable: citation-ready basePhase 1 closure
Audit closed · Crawler live · Map signed offHard gate: critical findings remediated, weekly crawler producing reports, topical map approved by content lead. Phase two does not open without these three; this is the program's single most-violated discipline.
Owner: SEO leadA note on the crawler. The agentic crawler is not a vanity artefact — it is the program's production infrastructure from week two onwards. The weekly run catches template regressions (a CMS change that strips canonicals, a redesign that drops H1s on a section), feeds the refresh queue in month three, and provides the audit data the monthly ROI review depends on. Teams that skip the crawler build in month one end up running a content-only program that cannot see its own foundation move under it. The full build is documented in our agentic crawler tutorial — three subagents, one orchestrator, weekly cron.
The topical map is the other deliverable that does disproportionate work. Without it, month two becomes a stream of disconnected posts; with it, month two becomes the execution of a strategy. The map names every pillar (high-volume head term, three-to-five-thousand-word definitive piece), every supporting cluster (eight to twelve mid-volume specific posts), and the explicit internal-link plan tying them together. Cluster depth — eight to twelve supporting posts per pillar — is what produces topical authority signals; randomly publishing in adjacent topics does not.
03 — Days 31-60Velocity ramp, citation tracking, schema discipline.
Month two is the velocity month. The audit is closed, the crawler is running, the map is approved — now the program ships content against the map at the velocity tier the engagement is sized for. The three velocity tiers are covered in detail in section five; the short version is roughly ten, forty, or a hundred posts per quarter depending on the engagement scope. Month two delivers the middle third of whatever the quarterly target is.
Velocity alone does not compound; velocity plus discipline does. The other two month-two workstreams are citation tracking installation and schema discipline. The citation tracker queries ChatGPT, Perplexity, and Gemini for the program's priority queries on a weekly cadence and measures share-of-citation. Schema discipline is the template-level enforcement that every published post ships with the right structured data — Article, FAQ where appropriate, Author, Organization — and validates against the schema.org spec. Both are infrastructure, both compound, both are most often skipped at this phase by teams that treat month two as a publishing sprint rather than a program operation.
Velocity ramp begins
Publish · Cluster executionBegin publishing against the topical map. Pillar pieces first, then supporting cluster posts in deliberate order. Maintain pace through week eight — the velocity tier sets the count.
Deliverable: cluster #1 completeCitation tracker online
ChatGPT · Perplexity · GeminiStand up the citation tracker. Query the three engines weekly for the priority query set, log citation share, dashboard the result. This is the leading indicator that organic will follow.
Deliverable: weekly citation reportSchema discipline pass
Article · FAQ · Author · OrganizationLock the schema template per content type. Validate every published post on commit. The agentic crawler enforces it weekly. Schema-as-code, not schema-as-afterthought.
Deliverable: schema CI gateInternal-link execution
Pillar ↔ cluster wiringAs the cluster fills out, wire the internal links per the map. Each supporting post links up to the pillar; the pillar contextually links down. The link graph is what tells engines the cluster is a unit.
Deliverable: link graph livePhase 2 closure
Velocity hit · Tracker live · Schema gatedGate criteria: the month-two velocity target shipped, citation tracker producing weekly reports, schema CI gate enforced. Refresh phase opens; the program shifts from build to operate.
Owner: content leadOne operational note worth emphasising: the velocity tier chosen at the start of the program determines the team shape in month two. Ten-posts-per-quarter is one editor and one agentic writer pair, running weekly. Forty-per-quarter needs three writer pairs and a dedicated editor running daily. Hundred-per-quarter needs a managed editorial pod with a content lead, two editors, and four to six writer pairs. Trying to ramp velocity without the team shape behind it is the most common reason month-two programs miss their gate.
Schema discipline is worth a second mention. The single highest-leverage move in month two is wiring schema validation into the deploy pipeline — a published post with invalid Article schema or a missing canonical does not ship. The cost is one engineer-day of CI wiring; the benefit is removing an entire class of regression that otherwise eats roughly fifteen to twenty percent of organic-eligible traffic on a typical mid-sized site. The agentic crawler catches what the CI gate misses, but the CI gate prevents most of the problems from ever reaching production.
04 — Days 61-90Refresh cadence, visibility scorecard, monthly ROI.
Month three transitions the program from build to operate. The two new workstreams — the refresh queue and the visibility scorecard — are what convert the published corpus from a one-shot asset into a compounding one. Without them, the content from months one and two decays on a roughly six-to-nine-month curve and the program plateaus by month nine. With them, the corpus continues to compound through the second quarter and beyond.
The refresh queue is sourced from the agentic crawler. As the crawler runs weekly, it surfaces posts whose indicators have regressed — declining impressions, lost featured snippets, schema drift, broken citations, outdated facts. Each regression becomes a refresh ticket with a fixed scope (rewrite the lede, update one stat, re-validate schema; or full rewrite if the page is beyond minor fixes). The queue is prioritised by traffic- at-risk, not by publication date. Two refresh tickets per writer per week is a typical steady-state load and is what month three installs.
Refresh queue installed
Crawler-sourced · Priority-weightedStand up the refresh workflow. The crawler surfaces decay signals weekly; the queue prioritises by traffic-at-risk; writers pick two tickets per week. Refresh becomes a steady-state habit, not a quarterly chore.
Deliverable: refresh queue liveVisibility scorecard
Citations · Impressions · Sessions · ConvDashboard the four leading-to-lagging indicators. Citation share moves first, impressions second, sessions third, conversions last. The scorecard tells the executive sponsor where the program is on the curve.
Deliverable: scorecard liveMonthly ROI review
Leading · Lagging · ProjectionFirst formal monthly review. Actuals against the projection: leading indicators should be moving sharply; lagging indicators just beginning. Conversation calibrates expectations for the next quarter.
Deliverable: month-3 ROI reportQuarterly projection
Trajectory · Investment · PlanProject the next ninety days from the month-three actuals. Sets the velocity tier for Q2, the refresh cadence, the citation-tracking expansion. The program does not end at day ninety — it transitions.
Deliverable: Q2 planPhase 3 closure
Refresh live · Scorecard live · ROI signed offFinal program-launch gate. Refresh queue operating, visibility scorecard live, monthly ROI review accepted by the sponsor, Q2 plan approved. Steady state begins; the launch is over.
Owner: program sponsorThe visibility scorecard is the artefact the executive sponsor reads each month. The format is deliberately four-tile: citation share (leading), impressions and click-through (intermediate), sessions and conversion rate (lagging), and revenue or pipeline (terminal). On a healthy curve, citation share is moving sharply by month three, impressions are accelerating, sessions are beginning to inflect, and revenue indicators are largely flat or just beginning to move. That is the right shape of a ninety-day report; anything else is either an underperforming program or a program ahead of schedule.
The monthly ROI review is the discipline that keeps sponsors invested. The format is simple: actuals against projection across the four scorecard tiles, narrative on why each one is where it is, three forward-looking decisions for the next thirty days. The conversation most worth having at the day-ninety review is not "is the program working" — the leading indicators answer that. It is "what is the right velocity tier and refresh cadence for the next ninety days" — and that conversation requires the scorecard, the projection, and the actuals to all be on the table.
05 — Velocity Tiers10, 40, 100 posts per quarter.
Three velocity tiers cover the majority of program engagements. Each tier is defined by the quarterly publishing target, the team shape required to sustain it, the kind of business it suits, and the expected quarterly ROI envelope. Choosing the wrong tier at program kickoff is the second most common cause of phase-two missed gates. The deliberate framing below is what the kickoff conversation runs against.
Foundation velocity
Ten posts per quarter — roughly one per week. One editor plus one agentic writer pair. Suits small businesses, new domains, niche verticals, or programs where editorial depth matters more than breadth. Cluster depth is the trade-off — expect one pillar plus eight supporting posts in ninety days.
Small / new domainsStandard velocity
Forty posts per quarter — roughly three per week. Three writer pairs plus a dedicated editor. Suits mid-sized B2B SaaS, professional services, and most established domains. Three to four clusters covered in the quarter; production pattern for most engagements.
Production defaultScale velocity
One hundred posts per quarter — roughly eight per week. Managed editorial pod: one content lead, two editors, four to six writer pairs. Suits enterprise, multi-product, multi-language, or category-leading domains. Covers six to nine clusters in the quarter.
Enterprise / multi-localeBelow 10 / quarter
Below ten posts per quarter is generally too thin for the agentic SEO mechanism to operate — clusters do not fill out, internal-link density is too low, citation engines do not have enough surface to sample. If the budget supports only this volume, reshape the engagement around refresh-only rather than new content.
Avoid for new programsThe tier choice is not just about budget; it is about the business case. Forty-per-quarter is the production default because it is the lowest velocity at which the mechanism reliably compounds — clusters fill out within a quarter, internal-link density crosses the threshold for topical signal, citation engines sample broadly enough to surface share movement. Below that, the programme can still deliver value (especially on a small domain with strong existing authority) but the compounding curve is flatter and the day-ninety inflection arrives later. Above that, the marginal returns are real but the team-shape complexity increases sharply.
The framing matters because tier selection is the single most strategic kickoff decision. Selecting Tier 40 with a Tier 10 team shape produces a phase-two blowout by week six; selecting Tier 10 against a Tier 40 budget under-deploys the team and leaves money on the table. The conversation at kickoff is always honest about which tier the budget, team, and domain support — and the answer is usually clearer to an outside agency than to the in-house sponsor.
"Below ten posts a quarter, you are not running an SEO program — you are running an editorial side project. The mechanism needs a minimum density to compound."— Our program kickoff playbook
06 — TemplatesAudit template, citation tracker, refresh playbook.
Three template artefacts do most of the program's heavy lifting. The audit template defines the hundred-point checklist the week-one audit runs against. The citation tracker is the small script that queries the LLM engines weekly and logs share-of-citation. The refresh playbook is the decision tree the writer uses to decide whether a regressed post needs a lede rewrite, a stat update, a schema refresh, or a full teardown. Each is small in line count and large in leverage.
# audit-template.md — 100-point audit (excerpt)
## A. Crawl & index (20 points)
- [ ] robots.txt sane and not blocking key paths
- [ ] sitemap.xml present, valid, submitted in GSC
- [ ] canonical present and self-referential on indexable URLs
- [ ] no orphaned high-value pages (depth > 3 from homepage)
- [ ] log-file analysis: Googlebot hitting priority paths
- [ ] index coverage clean in GSC (no soft-404, no excluded-canonical)
- [ ] no infinite-pagination or facet traps
- [ ] no chained redirects (max 1 hop)
... (12 more)
## B. On-page editorial (25 points)
- [ ] title tag 30-60 chars, unique, intent-matched
- [ ] meta description 120-160 chars, unique, CTR-tuned
- [ ] single H1 per page, intent-matched
- [ ] H2/H3 outline answers the query's sub-questions
- [ ] lede paragraph contains the primary entity in first sentence
... (20 more)
## C. Schema & structured data (15 points)
- [ ] Article schema on every blog post, validates
- [ ] Author + Person schema with sameAs to a verifiable profile
- [ ] Organization schema present site-wide
- [ ] FAQ schema where applicable (no spam patterns)
- [ ] BreadcrumbList on every navigable page
... (10 more)
## D. Internal link graph (20 points)
- [ ] every pillar reachable from homepage in <= 2 clicks
- [ ] cluster posts link up to pillar with descriptive anchor
- [ ] pillar links contextually down to cluster posts
- [ ] no orphans, no PageRank sinks
- [ ] anchor distribution: brand 30%, exact 5-10%, partial 60-65%
... (15 more)
## E. LLM citation readiness (20 points)
- [ ] each post answers a specific question with a clean extract
- [ ] author bio with credentials, sameAs, verifiable identity
- [ ] facts cited with primary sources, dated, linked
- [ ] structured data validates and reflects on-page content
- [ ] no duplicate content across the site (canonical or rewrite)
... (15 more)
## Severity
- Critical findings block phase 2.
- High findings scheduled into weeks 5-6 of phase 2.
- Medium findings into refresh queue in phase 3.
- Low findings parked in backlog.The citation tracker is a small script — typically under two hundred lines of Node — that runs on a weekly cron, queries each engine for the program's priority query set, and logs whether a citation to the domain appears in the response. The result feeds the visibility scorecard.
// scripts/citation-track.mjs — weekly LLM citation check
import { writeFile, readFile } from "node:fs/promises";
const QUERIES = JSON.parse(await readFile("queries.json", "utf8"));
const DOMAIN = "example.com";
const ENGINES = ["chatgpt", "perplexity", "gemini"];
const results = [];
for (const engine of ENGINES) {
for (const query of QUERIES) {
const response = await askEngine(engine, query);
const cited = response.citations?.some((c) =>
c.url?.includes(DOMAIN)
) ?? false;
const position = cited
? response.citations.findIndex((c) =>
c.url?.includes(DOMAIN)
) + 1
: null;
results.push({
engine,
query,
cited,
position,
timestamp: new Date().toISOString(),
});
}
}
const share = ENGINES.map((engine) => {
const total = results.filter((r) => r.engine === engine).length;
const hits = results.filter(
(r) => r.engine === engine && r.cited
).length;
return { engine, share: hits / total, hits, total };
});
await writeFile(
`.citations/${new Date().toISOString().slice(0, 10)}.json`,
JSON.stringify({ results, share }, null, 2)
);
console.log("Share-of-citation this week:", share);The refresh playbook is the decision tree that turns a crawler-surfaced regression into a writer ticket. The tree is shallow on purpose — three branches plus a fallback — because writers do not need a forty-page manual; they need a clear rule on what each kind of regression deserves.
# refresh-playbook.md — regression → action mapping
## Trigger: impressions declining > 20% over 4 weeks
→ Lede rewrite + intent re-check.
Read the SERP for the target query; compare lede against the
intent the SERP rewards now. Rewrite the lede paragraph and
the H1 if intent has drifted. ~30 min ticket.
## Trigger: featured snippet lost
→ Snippet-block rewrite.
Add a 40-60 word direct-answer block after the H1, structured
as the SERP rewards (paragraph / list / table). ~20 min ticket.
## Trigger: schema validation failing
→ Schema refresh + CI check.
Re-validate against schema.org, fix the missing field, add
CI assertion so it cannot regress. ~15 min ticket.
## Trigger: citation share for target query < 5%
→ Citability pass.
Add author bio with credentials, cite primary sources with
dates, ensure the post answers a specific question with a
clean extract. ~45 min ticket.
## Trigger: fact / stat older than 18 months on a date-sensitive topic
→ Stat update + republish date refresh.
Update the stat with a current source, update the modifiedTime
in schema, signal the freshness. ~15 min ticket.
## Fallback: post older than 24 months + traffic flat
→ Teardown decision.
Either full rewrite (if topic still strategic) or 301 redirect
to nearest cluster post (if topic decommissioned). Editor's
call. ~2 hr or 5 min depending on direction.For teams modelling the financial case before committing to a velocity tier, our agentic SEO ROI calculator covers the math — cost-per-published-post by tier, expected traffic curve by quarter, break-even timing against the upfront audit and crawler build. The calculator is what most program kickoff conversations run against when the sponsor asks the financial question.
07 — PitfallsFour ways the program flatlines.
Across the programs we have run, four failure modes account for the majority of stalled launches. Each is avoidable; each is also routinely repeated. Naming them at the start is part of the kickoff conversation, not an afterthought at month two.
Cancelling at thirty days
Most common, most expensive. The mechanism has not started, leading indicators have not moved, sponsor sees no traffic and reads the program as failed. The pre-emptive fix is setting the day-ninety expectation at kickoff in writing.
Sponsor educationRamping velocity without team shape
Selecting Tier 40 with one writer is the second-most common cause of phase-two blowout. By week six the editor is buried, quality drops, schema errors creep in, and the gate slips. Match tier to team shape at kickoff.
Team shapeSkipping the refresh cadence
Programs that publish for months one and two but never install a refresh queue in month three plateau by month nine. Half the curve is content rot, not algorithm change. The refresh queue is what turns the corpus from one-shot to compounding.
Steady-state habitMeasuring vanity metrics
Reporting post-count, word-count, or domain-authority as program ROI lets sponsors lose trust. The scorecard format — citations, impressions, sessions, conversions — keeps the conversation honest and the program credible.
Scorecard disciplineThe unifying theme across all four is the same: agentic SEO programs fail by drifting from a phased plan into an ad-hoc publishing rhythm. The ninety-day shape, the gate criteria, the velocity tier, the scorecard — all of these exist precisely to keep the program from drifting. Most stalled programs are not stalled because the strategy was wrong; they are stalled because the discipline lapsed somewhere between week three and week six and was not recovered.
For programs that need the full strategic context before committing to a launch, our agentic SEO service page covers the engagement model, the deliverables per phase, and how the steady-state operation continues beyond day ninety. The ninety-day program is the launch; the work continues on the curve described in section four.
Agentic SEO is a 90-day investment that compounds quarterly.
The ninety-day program is the smallest window that lets the agentic SEO mechanism operate. Thirty days of foundation — audit, crawler, topical map — followed by thirty days of velocity, citation tracking, and schema discipline, followed by thirty days of refresh cadence, visibility scorecard, and monthly ROI review. Each phase has a gate that has to close before the next one opens, and the gates are the program's single most-violated discipline.
The compounding curve is quarterly by construction. The first thirty days will not move traffic; the second thirty days will move citation share and impressions but rarely sessions; the third thirty days is where the indicators begin to compound. Programs that survive into the second quarter capture roughly three times the cumulative traffic of programs that stop at ninety. The day-ninety gate is therefore not a finish line — it is a transition from launch to steady-state operation, and the program shape changes accordingly.
The broader pattern matters beyond a single launch. The ninety-day arc is the cadence on which agentic SEO actually compounds; the four failure modes — cancelling early, mismatched team shape, skipped refresh, vanity metrics — are routine and avoidable; the templates are small and high-leverage. Teams running this for the first time should expect to learn one full cycle before the steady state feels routine. Teams running their second program tend to ship the audit in a week, the crawler in two days, and the topical map in an afternoon — the templates carry forward, the discipline carries forward, and the second-quarter inflection arrives roughly a month earlier than it did the first time.