Free website QA checklist
Everything to check before your website goes live, with how to check each item, built on QA standards and reviewed by our QA team. 94 checks for business websites, online stores, web apps and apps built with AI tools. Free, no signup.
- 1Pick your type of site
- 2Answer each check
- 3Share it with your team
Every check comes with how to test it:
- Is the site allowed to be indexed (no leftover noindex or robots.txt block from staging)?Check robots.txt and the meta robots tag on live pages.
- Does every form deliver its submission where it should?Submit each form with a real email and confirm it arrives in the inbox, CRM or database.
- Does the site work on iPhone Safari?Test on a real iPhone (current iOS). Safari is about half of mobile visits in the US and Canada.
- Are there no secret keys in the site's code (API keys, service keys, passwords)?Search page source and JavaScript files for sk_live, sk-, service_role, secret, password.
The website QA checklist
Pick your type of site, then answer each check with Yes, No or Not applicable. Blockers are the checks to pass before launch. Your answers stay in this browser, so you can come back later.
Content and copy9 checks
C01Blocker
Is all placeholder text gone (lorem ipsum, TODO, sample names, AI tool default text)?
How to check: Search every page and the page source for lorem, TODO, example, test, and your builder's name.
C02Important
Has every page been proofread for spelling and grammar?
How to check: Read aloud or use a spell checker on the live pages, including buttons and error messages.
C03Blocker
Are phone numbers, emails, addresses and prices correct everywhere they appear?
How to check: List every place they appear (header, footer, contact, emails, schema) and compare.
C04Important
Do all images load, look sharp and have the right crop on phone and desktop?
How to check: Scroll every page on a phone and a large screen.
C05Important
Is the copyright year and company name correct in the footer?
How to check: Check the footer on any page.
C06Important
Do empty states explain what to do (empty cart, no orders yet, no results)?
How to check: Use a brand new account and look at every list or dashboard.
C07Important
Are error messages written for humans (no raw codes, stack traces or 'undefined')?
How to check: Trigger errors: wrong inputs, offline, expired session.
C08Nice to have
Is the favicon set and visible in browser tabs and bookmarks?
How to check: Open the site in a new tab and on a phone home screen.
C09Important
Are dates, times, currencies and units shown in the right format for your audience (for example US$ vs CA$, English and French in Canada)?
How to check: Check prices, dates and emails with US and Canadian settings.
Links and navigation8 checks
L01Blocker
Do all links work, with no 404s?
How to check: Run a link checker (for example Screaming Frog free or an online broken link checker).
L02Important
Do the logo and main menu go to the right pages on every page?
How to check: Click through the full menu, including dropdowns and the mobile menu.
L03Important
Does the mobile menu open, close and scroll correctly?
How to check: Test on a small phone, including landscape.
L04Important
Is there a helpful 404 page that returns a real 404 status?
How to check: Open yoursite.com/this-page-does-not-exist and check the status in developer tools.
L05Blocker
Do old URLs redirect to new ones (if this replaces an old site)?
How to check: Test the top old URLs from analytics or Search Console; each should 301 to the right new page.
L06Important
Do phone and email links work on phones (tap to call, tap to email)?
How to check: Tap them on an iPhone and an Android.
L07Nice to have
Do external links open where you intend and use rel=noopener when opening a new tab?
How to check: Check links to social profiles and partners.
L08Important
Do Back, Forward and Refresh in the middle of a flow work without errors or duplicate submissions?
How to check: Use them during signup, checkout and forms.
Forms and emails7 checks
F01Blocker
Does every form deliver its submission where it should?
How to check: Submit each form with a real email and confirm it arrives in the inbox, CRM or database.
Ready-made forms test casesF02Blocker
Do form and system emails land in the inbox, not spam?
How to check: Send to Gmail, Outlook and iCloud. Check SPF, DKIM and DMARC pass in Gmail's 'show original'.
F03Important
Does every form show clear errors and keep what the user typed?
How to check: Submit each form empty and with a bad email.
Ready-made forms test casesF04Important
Does every form have spam protection that does not block real people?
How to check: Check for a honeypot, CAPTCHA or rate limit; submit as a normal user on a phone.
F05Important
Is there a success message or thank you page after submitting?
How to check: Submit each form and look at what happens next.
F06Blocker
Do links in every email point to the live site (not staging, preview or localhost)?
How to check: Open every system email (welcome, reset, receipt, notifications) sent from production and click each link.
F07Important
Do the addresses you publish (contact@, support@) actually receive mail?
How to check: Send a test email to each from an outside account.
Browsers9 checks
D01Blocker
Does the site work on iPhone Safari?
How to check: Test on a real iPhone (current iOS). Safari is about half of mobile visits in the US and Canada.
D02Blocker
Does the site work on an Android phone in Chrome and Samsung Internet?
How to check: Test on a Samsung Galaxy or similar, 360 to 384 pixels wide.
D03Blocker
Does the site work on desktop Chrome, Safari, Edge and Firefox?
How to check: Check key pages and flows in each; Edge is about 15% of desktop in the US and Canada.
D04Important
Does nothing scroll sideways or overlap on small phones (320 to 375 pixels wide)?
How to check: Use developer tools device mode at 320 px and a real small phone.
D05Important
Does the site work on tablets in portrait and landscape?
How to check: iPad at 820 by 1180 and an Android tablet at 800 by 1280.
D06Important
Is the layout right on common laptop sizes (1366, 1440, 1536 and 1920 pixels wide)?
How to check: Resize the browser or use developer tools.
D07Nice to have
Does the site look right in dark mode (if the device is in dark mode)?
How to check: Turn on dark mode on a phone and a computer.
D08Important
Do pop ups, cookie banners and chat widgets stay out of the way of buttons and fields on phones?
How to check: Complete the main flow on a phone with the cookie banner still showing.
D09Important
Does the site still work with ad blockers and privacy browsers (Brave, Safari with tracking protection, Firefox strict mode)?
How to check: Complete the main flow with an ad blocker on; forms and checkout must not depend on tracking scripts.
Speed5 checks
S01Important
Do key pages pass Core Web Vitals (LCP 2.5 s or less, INP 200 ms or less, CLS 0.1 or less) on mobile?
How to check: Run PageSpeed Insights on the home page and top landing pages.
S02Important
Are images compressed and sized for the screen?
How to check: Check large images in PageSpeed Insights or the Network tab; use WebP or AVIF where possible.
S03Important
Does the site stay usable on a slow mobile connection?
How to check: Throttle to Slow 4G in developer tools and use the main flow.
S04Nice to have
Do pages avoid layout jumps while loading (fonts, images, ads)?
How to check: Reload on a phone and watch for content moving.
S05Important
Does the page still work if a third-party script (chat, analytics, reviews, fonts) fails or loads slowly?
How to check: Block each third-party domain in developer tools (Network request blocking) and reload.
SEO and sharing11 checks
E01Blocker
Is the site allowed to be indexed (no leftover noindex or robots.txt block from staging)?
How to check: Check robots.txt and the meta robots tag on live pages.
E02Important
Does every page have a unique title and meta description?
How to check: Crawl the site with Screaming Frog (free up to 500 URLs) or check each page's source.
E03Important
Does each page have one clear H1?
How to check: Use a crawler or the browser's accessibility tree.
E04Important
Is there an XML sitemap submitted to Google Search Console and Bing Webmaster Tools?
How to check: Open /sitemap.xml and check it lists only live, indexable pages.
E05Important
Does sharing a link show the right title, description and image (LinkedIn, Facebook, Slack, WhatsApp)?
How to check: Paste key URLs into a message or a social preview checker.
E06Important
Does every URL resolve to one version (https, www or not, trailing slash or not)?
How to check: Try http://, https://, with and without www and the trailing slash; all should redirect to one.
E07Nice to have
Is structured data valid (Organization, products, FAQ, breadcrumbs as relevant)?
How to check: Test key pages in Google's Rich Results Test.
E08Important
Do all images have meaningful alt text (or empty alt if decorative)?
How to check: Crawl for missing alt or check with an accessibility tool.
E09Important
Does every indexable page have a correct self-referencing canonical tag?
How to check: Check the canonical in the page source of key templates; it should be the page's own clean https URL.
E10Nice to have
If the site has several languages or countries, are hreflang tags correct and reciprocal?
How to check: Check each language version links to all others and to itself.
E11Important
Are staging and preview sites hidden from Google (password, noindex or both)?
How to check: Search Google for site:your-staging-domain and check the staging robots settings.
Accessibility9 checks
A01Important
Can you use the whole site with only the keyboard, with a visible focus outline?
How to check: Tab through each page and complete the main flow.
A02Important
Does text have enough contrast (4.5:1 for normal text)?
How to check: Use a contrast checker or the browser's accessibility panel.
A03Important
Does every form field have a visible label that screen readers announce?
How to check: Test with VoiceOver or NVDA.
A04Important
Does the site still work at 200% zoom?
How to check: Zoom to 200% in the browser and use the main flow.
A05Important
Are buttons and links at least 24 by 24 pixels, or spaced apart, on touch screens?
How to check: Check small icons, close buttons and footer links on a phone.
A06Important
Does each page have a language set and a descriptive title?
How to check: Check the html lang attribute and the browser tab title.
A07Nice to have
Do videos have captions and does nothing autoplay with sound?
How to check: Play each video.
A08Important
Does an automated scan show no serious issues?
How to check: Run WAVE or axe DevTools on key pages. Automated tools find only part of the issues, so also do A01 to A05.
A09Important
Is help or contact information in the same place on every page?
How to check: Check header, footer and help links across page types (WCAG 3.2.6).
Security basics11 checks
X01Blocker
Is the whole site on HTTPS with a valid certificate and no mixed content warnings?
How to check: Check the padlock on every page type; look for warnings in the console.
X02Blocker
Are there no secret keys in the site's code (API keys, service keys, passwords)?
How to check: Search page source and JavaScript files for sk_live, sk-, service_role, secret, password.
X03Blocker
Are staging, admin, debug and test pages blocked from the public?
How to check: Try /admin, /debug, /test, /staging, /.env and /.git on the live domain.
X04Important
Are basic security headers set (HSTS, X-Content-Type-Options, frame protection, a content security policy where possible)?
How to check: Check the response headers in developer tools or a security header scanner.
X05Blocker
Can one user never see or change another user's data?
How to check: With two accounts, change IDs in URLs and requests from account A to account B's records.
Ready-made API test casesX06Blocker
If you use Supabase or Firebase, are database rules locking data to its owner?
How to check: Supabase: Row Level Security on for every table, policies tested. Firebase: no 'allow read, write: if true' rules.
X07Important
Are prices, quantities, roles and limits checked on the server, not only in the browser?
How to check: Try negative quantities and changing prices or roles in requests.
X08Important
Are logins, signups, resets and AI or paid API features rate limited?
How to check: Send many requests quickly and confirm they get limited.
X09Important
Are dependencies free of known critical vulnerabilities?
How to check: Run npm audit or your platform's dependency scanner and update critical packages.
X10Blocker
Are debug mode and detailed error pages turned off in production (no stack traces, SQL or file paths shown)?
How to check: Trigger errors (bad URLs, bad form input, bad API calls) on the live site and read the responses.
X11Important
If the site has AI features, are they protected against prompt injection, data leaks and runaway costs?
How to check: Use the AI chatbot and AI features test cases; set rate limits and provider spending caps.
Ready-made AI features test cases
Accounts and data4 checks
U01Blocker
Do signup, login, logout and password reset work end to end, including the emails?
How to check: Use the login, signup and forgot password test cases with a fresh account.
Ready-made login, signup and reset test casesU02Important
Has the app been tested with a fresh, non-admin account, not just the builder's own account?
How to check: Create a new normal user and use every main feature.
U03Blocker
Can users delete their account (required for iOS and Android apps with accounts)?
How to check: Find and complete account deletion in settings.
U04Important
Are backups running and has a restore been tried once?
How to check: Check your database provider's backup settings and do a test restore.
Store and payments6 checks
P01Blocker
Does a full test order work end to end, including confirmation email and the order in your admin?
How to check: Use the payment provider's test mode and test cards.
Ready-made payment test casesP02Blocker
Do declined payments never create orders, and does double clicking Pay charge only once?
How to check: Use the decline test card and double click Pay in test mode.
Ready-made payment test casesP03Blocker
Are taxes and shipping correct for your main regions (for example US states and Canadian provinces)?
How to check: Check out with addresses in each main region.
P04Blocker
Is the payment provider switched from test mode to live mode, with live keys only?
How to check: Make one small real purchase and refund it.
P05Important
Do coupon codes follow their rules (expiry, minimum spend, one per customer, no stacking)?
How to check: Use the coupon test cases in the cart and checkout section.
Ready-made cart and checkout test casesP06Important
Are refund, return and shipping policies published and linked from checkout?
How to check: Click each policy link from the checkout page.
Analytics and tracking4 checks
T01Important
Is analytics installed once (not twice) on every page?
How to check: Use Tag Assistant or the analytics debug view.
T02Important
Are key conversions tracked once each (form submit, signup, purchase)?
How to check: Complete each conversion in debug mode and check one event fires.
T03Important
Do tags respect cookie consent where required?
How to check: Decline cookies and confirm analytics and ad tags do not fire (or use consent mode).
T04Nice to have
Is Google Search Console (and Bing Webmaster Tools) verified for the live domain?
How to check: Check ownership in each tool.
Legal and privacy4 checks
G01Blocker
Is there a privacy policy that matches what you actually collect and use?
How to check: Compare the policy with your forms, analytics, cookies and third-party tools.
G02Important
Are terms of service published and accepted where needed?
How to check: Check signup and checkout.
G03Important
Is there a cookie banner or notice if you use non-essential cookies for visitors where it is required (for example the EU or Quebec)?
How to check: Visit in a private window and check what loads before consent.
G04Important
Do marketing emails and forms follow CAN-SPAM (US) and CASL (Canada): opt-in, unsubscribe link, physical address?
How to check: Check signup forms and a sample marketing email.
Launch day and after7 checks
N01Blocker
Is the domain connected, with www and non-www both working and redirecting to one version?
How to check: Visit both versions on mobile data (not your office wifi).
N02Important
Is uptime monitoring and error logging set up, with alerts to a real person?
How to check: Use an uptime monitor and an error tracker; trigger a test alert.
N03Important
Has someone who did not build the site tried to use it and break it?
How to check: Give a fresh tester the main tasks without help and watch where they struggle.
N04Important
Is there a rollback plan if launch goes wrong?
How to check: Know how to restore the previous version and the database in minutes.
N05Important
Have you re-tested the main flows on the live domain after launch?
How to check: Repeat the blocker checks on production within an hour of going live.
N06Important
Are usage limits and billing alerts set on paid services (AI APIs, database, email, SMS)?
How to check: Set spending caps and alerts in each provider dashboard.
N07Important
Is there a short list of what to watch in the first 48 hours (errors, signups, orders, emails, support inbox) and who watches it?
How to check: Write it down and assign names before launch.
Every check in this view is answered. Choose "All checks" to see them again.
How to use this website QA checklist
It works like a QA engineer's pre-launch pass: go area by area, test each item the way a visitor would, and do not launch until every blocker is a Yes. The checks are built on QA standards (ISTQB, WCAG 2.2, OWASP, Google's Core Web Vitals) and reviewed by the BugsQA QA team.
- 1
Pick your type of site
Business website, online store, web app or an app built with AI tools. The checklist keeps only the checks that apply.
- 2
Answer each check
Yes, No or Not applicable. Each check says how to test it. Start with the blockers: those must pass before launch.
- 3
Share it with your team
Copy the list with your answers into Google Sheets, Excel, a GitHub issue or Notion, and assign the No answers.
Blockers first25 checks are marked Blocker: a No on any of them is a reason to delay launch.
Questions you can answerEach check is one yes or no question, so a No is a clear task for someone.
PrivateRuns in your browser. Nothing about your site is sent to us.
Remembers your answersClose the tab and come back; your progress is still there.
Website QA checklist by type of site
A brochure site and a store with checkout do not need the same checks. Each type keeps the basics every site needs and adds what its own risks call for.
Checklist for a business or marketing website
73 checks, 17 blockers
For company sites, landing pages and portfolios. The biggest risks are the quiet ones: a contact form that stops delivering, a staging noindex tag left in place, old URLs that no longer redirect, and a page that breaks on iPhone Safari.
Content, forms, devices, speed, SEO, accessibility, tracking and launch.
Checklist for an online store
91 checks, 24 blockers
Everything a business site needs, plus the money checks: a full test order end to end, declined cards and double clicks on Pay, taxes and shipping for each region, coupons, and switching the payment provider from test mode to live keys.
Adds store and payments, accounts and server-side price checks.
Checklist for a web app with accounts
79 checks, 20 blockers
For SaaS products, portals and dashboards. On top of the basics it checks signup, login and reset end to end, testing with a fresh non-admin account, one user never reaching another user’s data, rate limits, account deletion and backups.
Adds accounts and data, access control, rate limits and backups.
Checklist for an app built with AI tools (Lovable, Bolt, Replit, v0, Cursor)
87 checks, 22 blockers
AI builders ship working screens fast but often skip what nobody asked for: secret keys in the browser code, Supabase tables without Row Level Security, prices checked only in the browser, debug pages left on and no spending caps on AI APIs. These checks catch the problems we see most in AI-built apps.
Adds exposed keys, database rules, AI feature safety and cost limits.
When to run each check before launch
Website QA is not one afternoon before go-live. Spread the checks over the last two weeks, so there is time to fix what you find and test the fixes.
The rule that saves most launches
Repeat the blocker checks on the live domain within an hour of going live. Staging passing is not the same as production passing.
- 1
Two weeks before launch: freeze the content
Finish the copy, images, prices and legal pages, then run the content and links checks. Every later fix to content means testing again, so lock it first.
- 2
One week before: forms, devices and flows
Submit every form and confirm where it lands, complete the main flows on real phones and browsers, and test accounts and checkout if the site has them. This is where most launch-blocking bugs appear.
- 3
Three days before: speed, SEO, accessibility and security
Run PageSpeed Insights and an accessibility scan, crawl the site for titles, canonicals and broken links, and check the security basics: HTTPS, no exposed keys, admin and staging pages locked.
- 4
Launch day: switch to live and test again
Connect the domain, remove noindex, switch payments to live mode, then repeat every blocker check on the live domain. Many bugs only show up in production: wrong email links, missing environment variables, a robots.txt from staging.
- 5
First 48 hours: watch it
Watch errors, form submissions, orders and the support inbox, and submit the sitemap to Google Search Console. Fix anything that breaks before the traffic grows.
Download the website QA checklist
The same 94 checks as files, for teams that track launches in a spreadsheet, on paper or in a ticket. Free to download, no email needed.
QA testing by BugsQA
Launching soon? Let us run the checklist for you
A checklist tells you what to check. BugsQA checks it: a full pre-launch QA pass on real phones and browsers, with every issue reported and every fix retested before you go live.
- Every check run by a QA tester, not a script
- Real iPhones, Android phones and browsers
- Bug reports with steps, video and severity
- US and Canadian time zones
Talk to a QA lead, free
A 30-minute call. We look at your app and tell you what to test first, even if you test it yourself.
Get a free QA consultationSee pricingWhen a check fails
A No in the checklist is the start of the work, not the end. These free resources take it from there:
Report the bug
Write it up so a developer can fix it on the first read: steps, expected and actual result, device and evidence.
Free bug report templateTest the feature in depth
A checklist item says what to check; test cases say exactly how, step by step, for login, checkout, forms, payments and more.
Free test case templatePlan the testing
For a bigger launch, a test plan agrees the scope, devices, dates and the go or no-go criteria with your team.
Free test plan templateRather have someone check it for you?
BugsQA runs a full pre-launch QA pass on real phones and browsers, reports every issue with steps and evidence, and retests the fixes before you go live.
Frequently asked questions
What is website QA?
Website QA (quality assurance) is checking a website before and after launch so visitors get a site that works: correct content, working links and forms, a layout that holds up on every browser and phone, good speed, accessibility, search engine basics and security. It is done by testing the site the way real visitors use it, ideally by someone who did not build it.
What should a website QA checklist include?
A complete website QA checklist covers content and copy, links and navigation, forms and emails, browsers and devices, speed, SEO and sharing, accessibility, security basics, and analytics and legal pages, plus accounts and payments if the site has them and the launch itself. This checklist has 94 checks in those 13 areas, and 25 of them are blockers that should pass before launch.
How long does website QA take?
For a small business website of 10 to 20 pages, one tester can usually run a full QA pass in one to two days, plus time to retest fixes. An online store or a web app with accounts and payments takes longer, often one to two weeks, because every flow has to be tested on several browsers and phones and with different accounts.
Who should do website QA?
Ideally someone who did not build the site. Developers and designers know how the site is supposed to work, so they follow the happy path without thinking; a fresh tester tries what real visitors do, like double clicking, going back mid-checkout or using an old phone. If there is no QA tester on the team, ask a colleague, run the blocker checks yourself, or hire a QA service before launch.
What is the difference between website QA and UAT?
Website QA is technical testing by testers: does every page, link, form and flow work on every browser and device, and are speed, SEO, accessibility and security in order. User acceptance testing (UAT) comes after, when the client or business users confirm the site does what they need for their real tasks and sign off on the launch.
Can website QA be automated?
Part of it. Link checkers, PageSpeed Insights, accessibility scanners like axe or WAVE, SEO crawlers and end-to-end tests with tools like Playwright catch a lot, and are worth running on every release. But automated tools miss wrong content, confusing flows, layouts that look broken on a real phone and many accessibility problems, so a manual pass by a person is still needed before launch.
Does this checklist work for apps built with Lovable, Bolt or Replit?
Yes. Choose "App built with AI tools" and the checklist adds the problems AI-built apps often have: secret keys exposed in the browser code, Supabase or Firebase rules that let anyone read the database, prices and roles checked only in the browser, debug pages left on, and no rate limits or spending caps on AI and other paid APIs.
Is the website QA checklist free?
Yes, free with no signup, for your own sites and your clients' sites. The checklist runs in your browser and your answers are saved only there, so nothing about your site is sent to BugsQA. The Excel, PDF and Markdown versions are free to download too.
