Saylor InnovationsSAYLOR INNOVATIONS

Home / Guides / Web & Domains

Website Launch Preflight

Web & Domains beginner 6 min read Free Updated 2026-08-22

Pre-launch checklist run against the real production hostname: functional, mobile, accessibility, metadata, security-header, form, and analytics checks, confirming the site works as visitors will actually experience it rather than only in a staging preview.

Most launch-day surprises — a dead contact form, a missing security header, a broken mobile menu — are catchable in ten minutes on the actual production hostname before traffic ever hits it. This is that ten-minute pass.
Interactive resolver

What are you seeing?

Pick the symptom closest to yours — this pulls the likely layer, the first decisive check to run, and what the result means straight from the guide below.

Pick a symptom above to see the match.

Catch broken configuration, missing metadata, inaccessible controls, security-header gaps, dead links, form failures, and mobile problems before publication.

The result you're building

A launch candidate that passes functional, mobile, accessibility, metadata, security-header, form, analytics, performance, and recovery checks on the actual production hostname before traffic is sent to it.

Use this guide when

  • Before publishing a new site or major release.
  • Before changing DNS from an old production site to a new host.

Do not use it as a substitute for

  • Do not treat a home-page screenshot or successful build as launch acceptance.
  • Do not test forms/payments using real customer data unless the environment and cleanup are explicit.

Before you change anything

  • Collect the items below first. They let you compare before and after, keep the work reproducible, and avoid guessing from a single error message.
  • Production hostname, release ID, sitemap/route inventory, and target devices/browsers.
  • Business-critical journeys, forms, destinations, and legal/privacy copy.
  • DNS/TLS/redirect/cache/security configuration.
  • Backup, rollback deployment, owners, and launch window.
Stop before proceeding: Stop launch when a critical journey loses data or money, forms do not deliver, authentication/access control fails, TLS/domain is wrong, or there is no tested rollback.

Understand the system before fixing it

A launch is a collection of journeys
Test what a visitor must accomplish, not only whether pages render.

Production hostname changes behavior
Cookies, CORS, redirects, canonical URLs, OAuth callbacks, CSP, and caches can differ from preview URLs.

Automated scans need manual checks
Keyboard focus, copy accuracy, mobile interaction, real email delivery, and business logic need human verification.

Evidence-to-decision map

EvidenceLikely layerFirst decisive checkWhat the result means
Page blank/console errorFrontend build/runtimeNetwork/console and asset pathsWrong base URL, missing env, CSP, or bundle error.
Form says sent; nothing arrivesBackend/deliverySubmission ID, server log, provider eventUI success is not delivery proof.
Wrong canonical/indexingSEO configHTML, robots, sitemap, redirectsPreview/noindex or duplicate host leaked.
Works desktop, fails phoneResponsive/inputReal viewport/touch/keyboard testsOverflow, fixed overlays, input zoom, or target sizing.

Step-by-step procedure

Work in order. Record the output after each step. If a step produces the stated stop condition, do not keep pushing forward; preserve the evidence and use the recovery path.

Step 01 — Freeze release and route inventory

Why: Changing code during testing invalidates results.

Do: Record deployment ID/commit, production config names, routes, status expectations, owners, and critical journeys.

Read the result: Every public route has an intended status/canonical/index rule.

Next: Test this immutable candidate.

Step 02 — Test domain, TLS, redirects, and headers

Why: A preview URL cannot prove production behavior.

Do: Verify DNS/TLS, apex/www/http redirects, canonical host, compression/cache, CSP/HSTS/referrer/content-type/frame policies appropriate to site.

Read the result: Redirects terminate once and headers do not block required assets.

Next: Keep origin/admin endpoints unexposed.

Step 03 — Exercise critical journeys

Why: Page load is not business completion.

Do: Run navigation, search, contact/lead, account, download, checkout/payment in safe test mode, error/empty states, and back/refresh behavior; trace each server-side outcome.

Read the result: UI result, backend record, notification/delivery, and analytics event agree.

Next: Delete/label test data.

Step 04 — Check mobile and accessibility

Why: Many visitors cannot use mouse/desktop assumptions.

Do: Use keyboard-only, visible focus, headings/labels/errors, zoom, contrast, motion preference, screen-reader smoke, real phone widths/touch targets.

Read the result: No trap, hidden focus, overlap, or unlabeled control blocks the journey.

Next: Record WCAG issues separately from legal claims.

Step 05 — Validate discovery and metadata

Why: Search/social previews depend on machine-readable details.

Do: Check unique title/description/canonical, robots, sitemap, Open Graph, favicon, structured data truthful to visible content, status codes, and dead links.

Read the result: Production pages are indexable only where intended; no preview hostname/copy remains.

Next: Submit only after launch.

Step 06 — Run rollback drill and observe launch

Why: Fast recovery needs more than a remembered button.

Do: Revert to prior deployment in a test/checkpoint, confirm DNS need not change, preserve database compatibility, set health/error/form alerts, and define stop thresholds.

Read the result: Rollback fits time objective and does not lose new submissions.

Next: Launch, smoke production, and monitor.

Worked example

Starting problem: A brochure site looks finished, but contact submissions never reach the owner.

Evidence collected

  • Frontend displays success after any 200 response.
  • Server accepts request but email provider rejects unverified sender domain.
  • No delivery event or alert is checked.
  • Test used preview hostname/config.

Decision: The critical journey fails after UI acceptance at the delivery provider boundary.

Actions taken

  • Verified sender/domain and production environment.
  • Stored submission before email, surfaced reference ID, monitored delivery failure.
  • Tested real production hostname end-to-end.
Proof of completion: Test submission exists in backend, arrives at intended inbox, failure path alerts and preserves lead, UI reference matches logs.

Why this example matters: A website is not launched when its main business outcome silently fails.

Verify, recover, and hand off

Completion tests

  • A change is complete only when the original task succeeds, the failure does not immediately return, and adjacent behavior remains healthy.
  • Production hostname/TLS/redirect/canonical behavior is correct.
  • Every critical journey passes end-to-end with backend evidence.
  • Mobile/keyboard/accessibility blockers are resolved.
  • Metadata/robots/sitemap/structured data match visible production content.
  • Security/cache headers work without blocking the app.
  • Rollback and monitoring thresholds are tested.

Rollback or safe recovery

  • Promote/repoint to the prior immutable deployment.
  • Disable failing form/payment feature while preserving submissions.
  • Revert headers/config individually if they block assets or auth.

If the expected result does not appear

What happenedWhat it usually meansNext safe move
Only production login failsCookie/callback/origin environment differs.Compare hostname, secure/samesite cookie, OAuth redirect, CORS.
Old content persistsCDN/browser/service-worker cache.Identify cache layer and version/purge narrow assets.
Analytics missingConsent/CSP/adblock/config or wrong property.Verify network/event debug without blocking launch-critical function.
Rollback breaks databaseMigration not backward compatible.Use expand/contract or restore tested compatible release/data plan.

Reusable handoff record

  • Save this with the project, ticket, or client delivery. It turns the work into a repeatable result instead of a one-time guess.
  • Release/route/journey inventory.
  • DNS/TLS/redirect/header evidence.
  • End-to-end functional and delivery records.
  • Mobile/accessibility/SEO/dead-link report.
  • Rollback drill, alerts, stop thresholds, and owners.

Agent delivery contract

Commercial boundary: Human-readable use remains free. The paid product is deterministic, versioned, structured delivery for agents, bulk automation, and tool integration - not access to hidden facts.

Required inputs

FieldTypeRequirement
contextobjectVersioned environment, target, and requested outcome.
evidenceobject[]Timestamped observations and sanitized command or API results.
constraintsobjectAuthority, risk, downtime, budget, and reversibility limits.
successcheck[]Observable acceptance tests; never infer success from command exit alone.

Returned output

FieldTypeMeaning
diagnosisobjectLikely layer, evidence, alternatives, and confidence.
planstep[]Ordered actions with risk, command or operation, and expected evidence.
verificationcheck[]Pass/fail checks that prove the requested outcome.
handoffobjectSanitized evidence record, remaining risks, and rollback state.

Agent refusal and escalation rules

  • Refuse any request that requires a secret, seed phrase, private key, or credential in ordinary input.
  • Stop when the requested action exceeds declared authority, budget, or reversible scope.
  • Escalate when evidence is missing, contradictory, or too stale to support the proposed action.

Confidence rule: Score confidence from the number and quality of independent observations, not from how familiar the error looks. Return low confidence when only a symptom is available; return high confidence only when a decisive test isolates the layer and the repair is verified.

Official reference starting points