Website launch SEO checklist: 40 checks before and after you go live
A website launch SEO checklist for brand-new sites: 40 checks covering indexing, sitemaps, titles, schema, Core Web Vitals, Search Console, Bing and GA4.
A website launch SEO checklist makes sure a brand-new site can be crawled, understood and measured from its first day live. A new domain has no rankings to lose, but it also has no history, no links and no data, so the mistakes that matter are different: a leftover noindex that keeps the whole site invisible, a sitemap full of junk URLs, missing analytics that leave you blind for the first months. Below are 40 checks, grouped by area, that I run before and after a new site goes live.
Quick answer. Before launch: remove every noindex and staging password, settle on one HTTPS host, publish a clean XML sitemap and robots.txt, give every page a unique title, meta description and H1, add Organization and WebSite schema, and test Core Web Vitals on mobile. On launch day: verify the domain in Google Search Console and Bing Webmaster Tools, submit the sitemap, inspect the homepage and request indexing, and confirm GA4 records key events. Then watch the Page indexing report for 14 days.
Who this website launch SEO checklist is for
This checklist is the SEO checklist for new website launches, meaning a site with no search history: a new business, a new product or a new brand on a fresh domain. If you are replacing an existing site that already ranks, the biggest risk is losing what you have, and the work centers on URL mapping and 301 redirects. That is a different job, covered in my website redesign SEO checklist.
The other difference is time. An established site gets crawled every day. A new domain starts with almost no crawl demand, so Google finds pages slowly at first. Everything below is about removing friction from that first crawl and making sure you can measure what happens next.
Crawling and indexing checks (1 to 10)
These are the switches that decide whether Google can see the site at all. Get them wrong and nothing else on this list matters.
| # | Check | How to verify |
|---|---|---|
| 1 | No sitewide noindex left from development |
View source and response headers on several templates; in WordPress, untick "Discourage search engines" under Settings, Reading |
| 2 | Staging password removed from production, staging itself still protected | Open the live site in a private window; open staging and get a login prompt |
| 3 | robots.txt allows crawling | /robots.txt has no Disallow: / under User-agent: * |
| 4 | One canonical host | http://, http://www. and the non-preferred https:// host all 301 to the preferred one in a single hop |
| 5 | HTTPS works everywhere | Valid certificate, no mixed-content warnings in the browser console |
| 6 | Self-referencing canonical on every indexable page | <link rel="canonical"> with an absolute URL matching the page's own address |
| 7 | Consistent trailing slashes | /about and /about/ do not both return 200; one redirects to the other |
| 8 | Missing pages return a real 404 | Request /this-does-not-exist and confirm the status is 404, not 200 |
| 9 | Placeholder content removed | No "Sample Page", "Hello world" post, theme demo items or lorem ipsum anywhere |
| 10 | Utility pages kept out of the index | Thank-you, cart, account and internal search pages carry noindex |
A minimal robots.txt for a new business site looks like this. Do not block CSS or JavaScript, because Google needs them to render pages:
User-agent: *
Disallow: /admin/
Disallow: /search
Sitemap: https://www.example.com/sitemap.xml
One more decision belongs here: AI crawlers. Google's AI Overviews use the normal Googlebot, so allowing Googlebot is enough for Search. Other assistants have their own crawlers (OpenAI's search crawler is OAI-SearchBot, for example). If you want to be cited in AI answers, do not block them by accident with a broad rule copied from a template.
Check 10 needs care in the other direction: never block a page in robots.txt and add noindex to it at the same time. Google's noindex documentation (opens in a new tab) explains that a blocked page is never fetched, so the noindex is never seen.
XML sitemap checks (11 to 14)
A sitemap matters more for a new site than an old one, because there are no external links yet to help Google discover pages. On WordPress, Yoast and Rank Math both generate one (how they compare).
| # | Check | Notes |
|---|---|---|
| 11 | The sitemap lists only canonical, indexable URLs that return 200 | No redirects, no noindexed pages, no tag archives you do not want indexed |
| 12 | lastmod is accurate, or left out |
Google uses lastmod only when it is consistently accurate and ignores priority and changefreq |
| 13 | Within limits | 50,000 URLs or 50 MB uncompressed per file; use a sitemap index above that |
| 14 | Referenced in robots.txt | A Sitemap: line with the full absolute URL |
Those rules come straight from Google's sitemap documentation (opens in a new tab). Also note that Google's old sitemap "ping" URL was retired in 2023. Submitting in Search Console and listing the sitemap in robots.txt are the ways to do it now.
On WordPress, an SEO plugin generates the sitemap. On a custom build, generate it from the database or routes so it stays current. This site runs on Next.js, where app/sitemap.ts and app/robots.ts build both files from the same content source as the pages, so a new article appears in the sitemap the moment it is published.
On-page checks (15 to 23)
This is the part of any new website SEO checklist that gets rushed. Every page that should rank needs the basics in place before launch. Changing titles later is fine, but launching with duplicates or blanks wastes the first crawl.
| # | Check | What good looks like |
|---|---|---|
| 15 | Unique title tag on every page | Main topic first, brand last, roughly 50 to 60 characters so it is not cut off |
| 16 | Unique meta description | One or two sentences that say what the page offers; not a ranking factor, but it shapes the snippet |
| 17 | One clear H1 per page | Describes the page, not the company logo |
| 18 | Clean URLs | Lowercase, hyphens, short, no session IDs or dates unless they mean something |
| 19 | Internal links | Every page linked from at least one other page, descriptive anchor text, key pages within a few clicks of the homepage |
| 20 | Images | Descriptive alt text, compressed files, width and height set |
| 21 | Social sharing tags | og:title, og:description, og:image and a Twitter/X card on every page |
| 22 | Favicon and site name | Square favicon, ideally larger than 48 x 48 px; the site name consistent everywhere |
| 23 | Trust pages | About, contact, privacy policy; real business name, address and phone where relevant |
New sites tend to launch with too many thin pages: ten near-identical service pages, empty category archives, a blog with two posts and twenty tag pages. Fewer, more complete pages index faster and send a clearer signal. If a page has nothing useful on it yet, leave it out of the launch. For the detail on each element, see my on-page SEO checklist.
Structured data checks (24 to 27)
Structured data helps search engines connect your site to your business entity from day one.
| # | Check | Notes |
|---|---|---|
| 24 | Organization (or LocalBusiness) on the homepage |
Name, URL, logo, sameAs links to your real profiles |
| 25 | WebSite on the homepage |
Helps Google show the right site name |
| 26 | Template schema | BreadcrumbList sitewide; Article on posts; Product on product pages; Service where it describes the page honestly |
| 27 | Validated | Rich Results Test (opens in a new tab) and the Schema.org validator; mark up only content visible on the page |
A starting point for the homepage:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://www.example.com/#organization",
"name": "Example Studio",
"url": "https://www.example.com/",
"logo": "https://www.example.com/images/logo.png",
"sameAs": ["https://www.linkedin.com/company/example-studio"]
},
{
"@type": "WebSite",
"@id": "https://www.example.com/#website",
"name": "Example Studio",
"url": "https://www.example.com/",
"publisher": { "@id": "https://www.example.com/#organization" }
}
]
}
</script>
Two things older checklists still get wrong. Google retired the sitelinks search box in 2024, so a SearchAction on WebSite no longer does anything visible. And FAQ rich results stopped appearing in Google Search on May 7, 2026, according to Google's FAQPage documentation. FAQ content is still useful to readers and to AI answers, but do not launch expecting FAQ dropdowns in the results. If you run a local business, my local business schema examples show complete LocalBusiness markup.
Performance and Core Web Vitals checks (28 to 31)
| # | Check | Target |
|---|---|---|
| 28 | Core Web Vitals on mobile for each main template | LCP 2.5 s or less, INP 200 ms or less, CLS 0.1 or less |
| 29 | Hero image handled correctly | Not lazy-loaded, correctly sized, modern format (WebP or AVIF) |
| 30 | Server basics | Compression on, static assets cached, a CDN if visitors are spread across countries |
| 31 | Third-party scripts audited | Chat widgets, tag managers and embeds loaded only where needed |
There is a catch for new sites: field data does not exist yet. The Core Web Vitals report in Search Console and the field section of PageSpeed Insights use real-user data from the Chrome UX Report, which needs a certain amount of traffic before anything appears. Until then, use lab tests: Lighthouse in Chrome DevTools and PageSpeed Insights' lab section, on a throttled mobile profile. When I built this site, I treated a Lighthouse score of 100 for SEO, accessibility and best practices and a CLS of 0 as launch requirements rather than goals for later, because fixing layout shift after launch means touching every template twice.
Analytics and Search Console setup checks (32 to 36)
Without measurement from day one, you cannot tell which pages Google indexed, which queries you start to appear for, or which pages turn visitors into leads.
| # | Check | How |
|---|---|---|
| 32 | Google Search Console Domain property | Verify with a DNS TXT record so it covers HTTP, HTTPS and all subdomains |
| 33 | Sitemap submitted in Search Console | Sitemaps report shows success and a discovered URL count |
| 34 | Bing Webmaster Tools set up | Import the site from Search Console; consider IndexNow for instant URL notifications |
| 35 | GA4 installed with key events | Form submissions, purchases, phone and email clicks marked as key events; your own visits filtered out |
| 36 | Consent handled where required | A consent banner and Google Consent Mode if you have visitors in the EU or UK |
Bing matters more than its search share suggests, because its index also feeds other search and AI products. IndexNow lets you notify Bing and other participating engines the moment a URL is published or changed. Google does not use IndexNow at the time of writing, so it relies on your sitemap and links.
In GA4, "key events" is what used to be called conversions. Mark only actions that mean business value, not every click. If you would rather have this configured and tested properly, that is what my GA4 and Search Console setup service does.
Accessibility and mobile checks (37 and 38)
| # | Check | Notes |
|---|---|---|
| 37 | Mobile parity | Google indexes the mobile version, so the same content, headings, links and schema must exist on mobile; tap targets large enough, no horizontal scroll |
| 38 | Accessibility basics | lang attribute on <html>, text contrast, form labels, alt text, keyboard navigation and visible focus states |
Accessibility is not a direct ranking switch, but the same fixes (real headings, labeled links, readable text) make pages easier for search engines and AI systems to understand.
Launch day (check 39)
Check 39 is a short sequence on the live domain, in this order:
- Load the homepage, a service or product page and a blog post in a private window. Confirm no login prompt and no
noindexin the source orX-Robots-Tagheader. - Open
/robots.txtand/sitemap.xmlon the live domain, not staging. - Run a crawler over the live site and fix any 404s, redirect chains or pages missing titles.
- In Search Console, use URL Inspection on the homepage, run a live test, check the rendered HTML, then click Request indexing. Repeat for your most important pages.
- Confirm GA4 Realtime shows your visit and a test form submission as a key event.
- Point your own profiles (Google Business Profile, LinkedIn, social accounts, directories) at the new site. These are often the first links Google follows.
The first 14 days after launch (check 40)
Check 40 is a monitoring routine. New sites rarely index everything in the first days, so the aim is to spot real problems, not to panic about slow discovery.
| When | What to look at |
|---|---|
| Day 1 to 2 | Search Console verification and sitemap status; GA4 data arriving |
| Day 3 to 7 | Page indexing report: are the homepage and key pages indexed? Any "Excluded by noindex", "Blocked by robots.txt" or "Soft 404"? |
| Day 7 to 14 | First impressions in the Performance report, usually brand queries; "Discovered, currently not indexed" and "Crawled, currently not indexed" counts |
| Day 14 | Crawl the site again; review key events in GA4; plan the next content and links |
"Discovered, currently not indexed" on a new site usually means Google knows the URL but has not crawled it yet. "Crawled, currently not indexed" means it fetched the page and decided not to index it for now, which often points to thin or duplicate content. Better internal links and more substantial pages help with both. Requesting indexing over and over does not.
How long until a new website shows up on Google?
There is no fixed timeline. With a clean setup, a verified Search Console property and a submitted sitemap, the homepage of a new site is often indexed within days, and the rest follows over the next weeks. If some pages stay out of the index, my guide to crawled, currently not indexed explains why and what to fix. Ranking for competitive terms takes much longer and depends on content quality, links and competition. No one can honestly guarantee first-page rankings for a new domain, and anyone who does is guessing.
Frequently asked questions
Do I need to submit my new website to Google?
You do not have to, since Google can find sites through links, but you should. Verifying the site in Search Console and submitting your sitemap is the fastest reliable way to get a new domain discovered, and it gives you the indexing reports you need from day one.
What is the difference between a website launch checklist and an SEO checklist for a new website?
A general website launch checklist covers everything from browser testing to backups and legal pages. An SEO checklist for a new website focuses on what search engines need: crawl access, indexing signals, sitemaps, on-page elements, structured data, speed and measurement. You need both, and this article covers the SEO half.
Should I launch with a few pages or wait until the site is complete?
Launch with a small number of complete, useful pages rather than many thin ones. A focused site gets crawled and understood faster, and you can add pages as you write them. Placeholder or "coming soon" pages add nothing and are better left unpublished.
What should a pre launch SEO checklist include for WordPress?
The same 40 checks apply, plus a few WordPress-specific ones: untick "Discourage search engines from indexing this site", delete the sample page and first post, configure an SEO plugin's sitemap to exclude empty archives, and set the permalink structure before publishing anything.
If you are about to launch and want a second pair of eyes on this website launch SEO checklist, a technical SEO audit before go-live is the cheapest point to catch problems, and I can also take care of the schema markup while I am in the code.