Launch checklist

    The 15 things that break an app after you ship it

    You described an app and it got built. It works. Then a certificate expires on a Sunday, a database pauses after a quiet week, or the page loads while everything behind it is dead, and nobody tells you - because the people who noticed just left.

    This is the list, in the order these things actually happen. Every item says what you would see, why it happens and how to check it in under a minute. No account needed for any of it.

    Want the first nine checked for you right now?

    Paste your address. You get a score out of 100 with a reason for every point, in about twenty seconds.

    No account needed. One check, from Frankfurt, in about twenty seconds.

    1Before you tell anyone about it

    Fifteen minutes here saves the launch day where the link you posted does not open.

    1. The site answers on https, and http goes to it

      What you see: One person says it works, another gets a warning page.

      A host that serves both without redirecting leaves half your visitors on an insecure copy, and search engines index the wrong one.

      How to check: Open http://yourdomain.com and watch it land on https. Then open it without www and with www.

      Redirect checker
    2. The certificate is valid and not about to expire

      What you see: Works all month, then everyone gets a browser warning on the same morning.

      Certificates last 90 days on most platforms and renew automatically until the day the renewal fails quietly.

      How to check: Check the expiry date and who issued it. Anything under 21 days needs a look now.

      SSL checker
    3. The domain expiry is further away than your memory

      What you see: The whole thing disappears, email included, and nobody knows why.

      A domain that lapses takes the site, the email and often the ability to log in to fix it. Registrar reminders go to an address you may no longer read.

      How to check: Look up the expiry date and put a reminder somewhere that is not your inbox.

      Domain expiry monitoring
    4. DNS resolves from outside your machine

      What you see: It works for you and for nobody else.

      A record that only exists in your local cache, or a nameserver change that half-propagated, looks exactly like a working site from the laptop that made the change.

      How to check: Resolve A, AAAA and CNAME from a resolver that is not yours.

      DNS checker
    5. The first request after an hour of quiet is fast enough

      What you see: The demo you sent takes eight seconds to open, exactly when it matters.

      Free and hobby tiers sleep. So does a database that pauses after a week of inactivity, and it takes the app with it.

      How to check: Leave it alone for an hour, then open it and count. Anything over three seconds will cost you readers.

      Free site check

    2The first week

    This is where a launch quietly turns into a site nobody can use.

    1. The backend is watched separately from the page

      What you see: The site loads, the buttons do nothing.

      A page served from a CDN stays up long after the API behind it has stopped answering. Checking only the homepage tells you nothing about whether the product works.

      How to check: Point a check at an API endpoint that touches the database, not at the homepage.

      API monitoring
    2. The database project is not paused

      What you see: Sign-in stops working on a Monday, nothing was deployed.

      Managed database free tiers pause after a period of inactivity. The app keeps serving pages and every write fails.

      How to check: Watch the auth or health endpoint of the project itself, not just your app.

      For apps built with AI tools
    3. Crashes reach you instead of the user

      What you see: Somebody mentions in passing that it broke last Tuesday.

      A 500 that nobody reports is a customer who left without telling you. Most of them do not write.

      How to check: Send crashes somewhere you read. Twenty lines of code, or one script tag.

      Error inbox docs
    4. The security headers are not embarrassing

      What you see: The first technical person who looks tells you in public.

      Six headers cost nothing and are the first thing anyone auditing your app looks at. Their absence is the cheapest bad impression you can make.

      How to check: Check HSTS, CSP, X-Content-Type-Options, X-Frame-Options, Referrer-Policy and Permissions-Policy.

      Security headers checker
    5. The page is small enough for a phone on mobile data

      What you see: Good numbers on your desk, silence from mobile visitors.

      An unoptimised hero image is often larger than the rest of the page together, and most first visits are on a phone.

      How to check: Look at total transferred bytes and the largest single asset.

      Free site check

    3The things that bite at three in the morning

    None of these are urgent until the night they are the only thing that matters.

    1. An alert reaches you where you actually are

      What you see: The outage email is read the next morning, under the invoice.

      Email is where alerts go to be missed. Chat is where you already look.

      How to check: Send one alert to Slack, Discord or Telegram and confirm it arrives.

      Uptime monitoring
    2. One failed request is not called an outage

      What you see: You stop believing the alerts, then you miss a real one.

      A single dropped request happens all day on the public internet. An alarm that cries wolf is worse than no alarm.

      How to check: Make sure whatever watches your site re-checks before it wakes you.

    3. You can tell people what is happening without writing to each one

      What you see: Twenty messages asking the same question while you are fixing it.

      A page you can point at turns an outage from twenty conversations into one link.

      How to check: Have a status page ready before you need it, not during.

      Status pages
    4. You know what your uptime number actually allows

      What you see: You promise "99.9%" to a customer without knowing what you promised.

      99.9% is nearly nine hours of downtime a year. 99.99% is under an hour. The difference is a different architecture and a different price.

      How to check: Do the arithmetic before it is in a contract.

      Uptime calculator
    5. You have restored a backup at least once

      What you see: The backup exists. Nobody has ever opened it.

      An untested backup is a belief, not a backup. The night you need it is a bad night to find out which.

      How to check: Restore it into a scratch database and open the app against it once.

    Or have all of it watched for you

    Ten checks free, forever, commercial use included: the site, the API behind it, the certificate and the domain, every minute, with alerts to email, Slack, Discord or Telegram. No card.

    Written by the people who run the status board that checks 146 well-known services every five minutes.