1. Run production SEO smoke before submitting
npm run seo:smokeConfirm homepage, canonical, robots.txt, sitemap.xml, llms.txt, trust copy, and high-risk YMYL phrase checks pass before touching Search Console.
Evidence: Passing command output
Post-launch operations
A practical operating cadence for a Google SEO calculator site after launch. It separates daily launch watch, weekly SEO review, monthly growth review, and incident response so optimization does not disturb the locked calculation engine.
Search Console submission loop
Use this loop after major releases, tax-data updates, or new SEO page clusters. It starts with the local smoke command, then moves into Google Search Console only after canonical and crawl signals are clean.
Confirm homepage, canonical, robots.txt, sitemap.xml, llms.txt, trust copy, and high-risk YMYL phrase checks pass before touching Search Console.
Evidence: Passing command output
Submit https://www.roth-conversion-calculator-ai.shop/sitemap.xml and confirm Search Console can fetch it without parsing errors.
Evidence: Submitted sitemap row and last-read status
Confirm priority URLs return 200, expose the expected canonical URL, appear in sitemap.xml, and do not send noindex signals before URL Inspection retries.
Evidence: Passing JSON output with priority URL status, canonical, sitemap, and noindex fields
Inspect homepage, /methodology, /tax-data-update, /tax-brackets/2026, /roth-conversion-irmaa-guide, and /seo-monitoring after major releases.
Evidence: Inspection result, Google-selected canonical, and crawl/index state
Use request indexing for newly published or materially updated priority URLs after the live page, canonical, and sitemap are correct.
Evidence: Requested indexing confirmation or reason not requested
Compare indexed, not indexed, discovered, crawled, duplicate, and alternate canonical statuses against sitemap and internal-link expectations.
Evidence: Affected URL examples and status trend
Record affected URLs, status, likely cause, corrective action, and follow-up date; convert repeated issues into tests or smoke checks.
Evidence: Progress entry, issue note, or regression guard
GSC validation follow-up plan
Once Page indexing shows Validation started, use npm run seo:gsc-validation-follow-up-validate to validate the next review window, allowed outcomes, blocked actions, and privacy boundary before returning to Search Console.
GSC validation action record
After a reviewer clicks Validate fix for a Page indexing issue, keep screenshots local when they show account UI and sync only sanitized JSON evidence. Validate that record with npm run seo:gsc-validation-action-validate before adding it to a Search Console follow-up note.
GSC indexing record template
Use docs/search-console-indexing-record-template.json after manual URL Inspection or Page indexing review. Generate a prefilled draft with npm run seo:gsc-indexing-record-draft -- --url https://www.roth-conversion-calculator-ai.shop/seo-monitoring --artifact tmp-round107-final-artifact --out docs/search-console-indexing-record-draft.json, run npm run seo:gsc-indexing-record-ready -- path/to/record.json to list the reviewer-supplied GSC fields still missing, run npm run seo:gsc-indexing-record-summary -- path/to/record.json after the record is completed, run npm run seo:gsc-indexing-records-manifest to inventory archived records and screenshot hashes, then validate the filled record with npm run seo:gsc-indexing-record-validate -- path/to/record.json before attaching it to a Search Console retry note. Site-side evidence can support the record, but it must not infer private Google Search Console status.
SEO evidence artifact review
The SEO Smoke workflow keeps a 30-day production-seo-evidence artifact. Use this review checklist before sitemap resubmission, URL Inspection retries, indexing incident notes, or production SEO regression triage.
Open the downloaded production-seo-evidence artifact and confirm the smoke result has ok: true for the canonical production host.
Review the priority URL array for statusCode, canonicalUrl, inSitemap, noindex, sitemapLastmod, and lastmodFresh fields.
Review the GSC discovered-not-indexed sample URLs for HTTP status, canonical URL, sitemap inclusion, /site-index internal discovery, noindex status, lastmod, and title coverage.
Review the sanitized Page indexing validation action record after clicking Validate fix in Google Search Console.
Review the sanitized follow-up plan after the Page indexing validation action starts, before checking GSC again.
Review the site-side Search Console verification evidence after Google property, DNS, or HTML verification changes.
Review DNS and HTTPS evidence for the apex host and canonical www host after domain-provider changes or Vercel domain warnings.
Review the live production response headers for CSP, HSTS, nosniff, referrer policy, permissions policy, frame ancestors, base URI, form action, and framework fingerprinting.
Review the live /api/health evidence for HTTP status, no-store cache control, tax-year metadata, content counts, enabled feature counts, pending professional-review status, and secret-key exposure checks.
Review robots.txt, sitemap.xml, feed.xml, and llms.txt evidence for status, canonical host coverage, URL counts, RSS item counts, and AI-discovery coverage.
Review sitemap URL health and site-index coverage to confirm production internal discovery pages return HTTP 200, retain the canonical host, avoid noindex, and expose core internal links.
Review production HTML quality evidence for HTTP 200 status, html lang, one H1 per page, title and meta description coverage, canonical tags, image alt text, button names, and form labels.
Review the professional review packet evidence before changing public review status or sending the site to a CPA, EA, or qualified tax professional.
Review the GitHub main evidence scan before syncing private GSC screenshots, account UI images, or docs/evidence image files.
Review the CI-safe AI endpoint security evidence after AI route, CSP, rate-limit, or environment-default changes.
Review deterministic AI verifier pass, fail, and fallback evidence after AI route, verifier, disclaimer, or model-fuse changes.
Confirm the retained validator result reports ok: true after checking smoke, GSC priority URLs, GSC discovered samples, DNS, security headers, health, crawl discovery, internal links, HTML quality, professional review packet, performance, structured data, blog discovery, professional UI evidence, private evidence boundary, AI security evidence, and AI verifier regression evidence together.
Confirm the retained UI source guard scanned src/app and src/features for old glass-template surface classes.
Confirm the manifest records artifactName, artifactSchemaVersion, generatedAt, eventName, gitHubRepository, gitHubServerUrl, gitHubRunId, gitHubRunAttempt, gitHubRunUrl, gitHubSha, gitHubCommitUrl, gitHubWorkflow, retentionDays, retained file names, byte sizes, and sha256 checksums for each source evidence file. Re-run npm run seo:evidence-manifest-validate after downloading the artifact.
Open the retained manifest checksum validation result after downloading the production-seo-evidence artifact.
Sitemap freshness evidence
Priority pages need more than sitemap inclusion. The GSC evidence command now parses sitemap entries and records whether freshness-critical URLs still expose current lastmod coverage before Search Console retry work.
Must remain fresh after result-positioning, trust-copy, or first-viewport calculator updates.
Must remain fresh after Search Console retry, exception, or evidence-loop changes.
Must remain fresh after methodology, canonical, or tax-data source disclosure changes.
Must remain fresh when tax-year update operations or IRS-source review workflows change.
Must remain fresh after bracket-data, bracket-room, or tax-year reference updates.
Indexing retry protocol
Use this protocol after a transient Request indexing failure. The site must pass production evidence checks before GSC retries, and a failed Google submission should not trigger unrelated calculator, sitemap, or YMYL copy changes.
Record: Command output, affected URL, timestamp, and the failing field if a command fails.
Record: Property used, inspected URL, indexed state, live-test result, and canonical result.
Record: Request indexing response, exact Google error text, retry date, and whether the failure is site-side or Search Console-side.
Record: Page indexing trend, affected URL examples, chosen corrective action, test coverage, and follow-up date.
Search Console exception queue
Record Search Console failures as evidence-backed exceptions before changing production code. If live tests pass and the sitemap is successful, indexing can proceed through normal discovery while retry windows are respected.
Evidence to record: Verification method, Google error text, visible TXT records, and provider save timestamp.
Evidence to record: Submitted sitemap path, last-read date, status, and discovered URL count.
Evidence to record: Inspected URL, live-test result, HTTP status, resource loading result, console messages, and request-indexing response.
Query opportunity matrix
Use actual GSC queries to choose the next page, result-copy refinement, or internal-link update. Each cluster keeps a review gate so high-intent tax questions do not become personal recommendations.
User wants an immediate estimate and clear assumptions before reading a guide.
User is modeling bracket capacity and wants the result translated into a planning range.
User suspects a conversion may affect income-linked taxes, premiums, or credits beyond regular brackets.
User is comparing how tax payment method changes modeled after-tax value and cash needs.
User needs state-rate and filing-status assumptions reflected without expecting full state tax law modeling.
User is preparing records, filing review, or advisor conversation after running an estimate.
GSC query opportunity record
Use docs/search-console-query-opportunity-template.json after a Search Console Performance export or screenshot. Once a reviewer supplies a real query row, run npm run seo:gsc-query-opportunity-draft -- --query "roth conversion irmaa impact" --start 2026-06-01 --end 2026-06-05 --impressions 44 --clicks 2 --ctr 4.5 --position 9.4 --evidence docs/evidence/gsc-query.png --out docs/search-console-query-opportunity-draft.json to draft the safe cluster, intent, target surface, action, and review gate. Then run npm run seo:gsc-query-opportunity-ready -- path/to/query-record.json to list what AI can draft and what still requires a reviewer-supplied GSC query row, metric export, or screenshot. Validate the filled record with npm run seo:gsc-query-opportunity-validate -- path/to/query-record.json before using it for metadata, internal-link, guide-refresh, or professional-review work. Run npm run seo:gsc-query-opportunity-backlog to summarize local query records by status, risk, cluster, and next action before content planning. The record keeps GSC query observations private and prevents keyword data from turning into personal tax advice.
Catch indexing, uptime, analytics, and crawl issues during the first launch window.
Review indexing status, sitemap fetch state, and newly discovered pages.
Escalation: If valid pages are excluded unexpectedly, inspect canonical tags, robots rules, and sitemap URLs.
Track early impressions for Roth Conversion Calculator, Roth IRA Conversion Calculator, and long-tail pages.
Escalation: If impressions appear but CTR is weak, review title and meta description clarity.
Verify privacy-safe calculator events and page views without sending exact financial inputs.
Escalation: If events disappear, check NEXT_PUBLIC_GA_MEASUREMENT_ID and production consent/privacy settings.
Open /api/health and review production status, feature counts, and tax-year metadata.
Escalation: If the endpoint fails, inspect Vercel deployment status and recent release notes.
Improve crawl depth, content coverage, and performance after initial indexing begins.
Run production Lighthouse/PageSpeed checks for homepage, calculator hubs, and content hubs.
Escalation: If LCP, INP, or CLS regresses, review recent UI modules and bundle changes.
Compare submitted sitemap URLs with indexed URLs and inspect important missing routes.
Escalation: If route groups are missing, confirm static generation, internal links, and canonical metadata.
Check that site-index, blog, glossary, state, and tax-reference pages link users back to the calculator.
Escalation: If a cluster is isolated, add a contextual link from a hub page rather than modifying the calculator core.
Add or update educational pages based on GSC query data and user questions.
Escalation: If a topic touches personal tax decisions, keep content educational and route users to professional review.
Use search data to plan content, technical SEO, and product improvements without changing locked core logic.
Group performance by calculators, blog, glossary, states, tax brackets, basis, and operations pages.
Escalation: If a cluster underperforms, improve hub copy, internal links, and metadata before creating new features.
Review crawl requests, response codes, and large changes in crawl behavior.
Escalation: If crawl errors spike, compare against recent release notes and Vercel logs.
Check dependencies, tax-year labels, methodology notes, and IRS update windows.
Escalation: If tax rules change, route work through a reviewed tax-data update rather than a small content-only release.
Respond quickly when rankings, crawlability, compliance, or production health deteriorates.
Compare the incident time with the latest deployment and feature registry entry.
Escalation: If a new module caused the issue, disable or roll back that module before changing unrelated code.
Pause tax-sensitive copy edits until compliance language and source assumptions are reviewed.
Escalation: If AI or calculator pages are involved, verify disclaimer visibility and no-advice boundaries first.
Record affected URLs, symptoms, action taken, rollback path, and verification output.
Escalation: If the same class of incident repeats, convert the finding into a regression test or launch checklist item.
This Roth Conversion Calculator is for educational and illustrative purposes only. It does NOT constitute tax, financial, legal, or investment advice. The calculation results are based on the information you provide and the latest IRS tax rules, which are subject to change. We do not guarantee the accuracy of the results. Please consult a licensed Certified Public Accountant (CPA), financial advisor, or tax professional before making any financial decisions.