Launch Rescue · Ready for production?

Your app is ready.But is it ready for real users?

Before your first paying customer, check the things your AI builder may have missed.

A site that loads is not necessarily a product ready for customers. I check the critical journeys, the payments and the failure points before your launch.

First brief free · Technical review and fixes quoted

Or start on your own: the self-assessment, 39 questions ↓

Launch Rescue summary · excerptFictional example: what a report summary looks like.

Ready for the November 14 launch?

  • Sign-inExpert-verified Sign-up, sign-in and recovery tested in production.
  • PaymentsExpert-verifiedStop-ship The Stripe webhook accepts an unsigned event.
  • DataTool-observed Two tables without RLS in the migrations — to confirm.
  • JourneysExpert-verified Completed on mobile; a server error shows a blank page.
  • EmailsUser-declared Domain authenticated, you say — not seen yet.
  • OperationsNot checked No access to logs during the review.

1 stop-ship · 3 before launch · 2 after

DecisionAddress critical blockers before launching

For applications built with

  • Lovable
  • Cursor
  • Claude Code
  • Bolt
  • Replit
  • Next.js
  • Supabase
  • Stripe

Names describe the tools involved — no partnership, no affiliation.

01 — What gets checked

What gets checked before launch.

Eight areas where an application generated or accelerated with AI often breaks at the first real customer. Often, not always: yours may have none of these problems. The review is how you find out.

  1. 01

    Authentication

    Sign-up, sign-in, password recovery, sessions, and above all: who may do what, checked on the server.

    Supabase Auth · Auth.js · Clerk · Firebase Auth

    Answer this area’s questions →
  2. 02

    Payments

    Checkout in the right environment, status verified server-side, signed webhooks replayed without duplicates, access that follows the payment — refunds included.

    Stripe Checkout · Billing · webhooks

    Answer this area’s questions →
  3. 03

    Data access

    Database permissions, RLS policies, a test with two accounts: one user never sees another user’s data. Backups and restore.

    Supabase · PostgreSQL · Firebase

    Answer this area’s questions →
  4. 04

    User journeys

    A stranger completes the key journey, on mobile, on a slow network, through a server error, an empty screen, a tab closed halfway.

    Mobile · keyboard · error states

    Answer this area’s questions →
  5. 05

    Emails

    Important emails arrive, from an authenticated domain, and a failed send leaves a trace someone looks at.

    Resend · SendGrid · Postmark · SPF/DKIM/DMARC

    Answer this area’s questions →
  6. 06

    Operations

    Production separate from development, secrets out of the code, visible errors, reviewed dependencies, a way to roll back.

    Vercel · Netlify · logs · monitoring

    Answer this area’s questions →
  7. 07

    Acquisition and analytics

    Indexable pages, a sitemap, correct robots and canonical rules, and at least one conversion event that really reaches the analytics tool.

    Search Console · analytics

    Answer this area’s questions →
  8. 08

    Privacy and trust

    Privacy notices, sensitive data kept out of logs, consents where they apply, a way to reach you — and the list of what a lawyer should review.

    Notices · consents · support

    Answer this area’s questions →

02 — Self-assessment

Before you launch, can you answer yes to all of this?

39 questions, eight areas, about five minutes. Answer honestly: “I don’t know” is a useful answer, and so is “Not applicable”.

This is a self-assessment, not a verification: every answer stays your own declaration. Nothing is analysed, nothing is sent.

0 of 39 answered

The summary needs JavaScript. The questions stay readable: they are also the list of what the review checks.

Who gets in, and what they may do.

  1. Can a new user sign up?
    How to check

    A full sign-up with a never-used address, on the production environment.

  2. Can they sign in, and sign in again the next day?
    How to check

    Sign in, sign out, sign in again, in two browsers.

  3. Does password recovery work end to end?
    How to check

    Reset request, email received, expired link refused, new password accepted.

  4. Do sessions expire and end correctly?
    How to check

    After signing out, the back button does not reopen a private page.

  5. Do role-based permissions behave as intended?
    How to check

    A regular account opens an admin URL: the server must refuse it.

Access follows the money actually collected.

  1. Does Stripe Checkout work in the configured environment (test or live)?
    How to check

    A complete payment with the keys of the environment actually deployed.

  2. Is the payment status verified server-side?
    How to check

    The “thank you” page alone grants nothing: the server decides.

  3. Are webhooks verified and processed correctly, even when delivered twice?
    How to check

    Signature checked; the same event replayed creates no double access or double email.

  4. Does access follow the actual payment state?
    How to check

    Successful payment → access; refund or cancelled subscription → access removed.

  5. Are cancellations and payment failures handled?
    How to check

    Declined card, abandoned payment, cancelled subscription: the user knows what to do.

Everyone sees only their own data.

  1. Have the database permissions been reviewed?
    How to check

    A list of exposed tables and who can read, write, delete.

  2. Are the relevant Supabase RLS policies enabled and tested?
    How to check

    RLS on for every exposed table, tested signed-out and with two real accounts.

  3. Have you checked that one user cannot access another user’s private data?
    How to check

    Signed in as A, open the id of an object that belongs to B: refused.

  4. Are privileged operations server-controlled?
    How to check

    Prices, roles, refunds, deletions: never decided by the browser.

  5. Are backup and restoration procedures defined?
    How to check

    Frequency, retention, and a restore already tried on a copy.

A stranger finishes the journey, even when something fails.

  1. Can a new user complete the key workflow on their own?
    How to check

    Someone who does not know the product, without your help, from the first screen to the result.

  2. Are forms usable on mobile?
    How to check

    On a real phone: right keyboard, visible fields, reachable button.

  3. Do errors give useful feedback?
    How to check

    Invalid input, server down: a clear message, not a blank page.

  4. Are loading and empty states handled?
    How to check

    Slow network, account with no data: the screen still makes sense.

  5. Can users recover from interrupted flows?
    How to check

    Tab closed halfway, back button, email link opened later.

Important emails arrive, and you know when they fail.

  1. Are transactional emails delivered (and not to spam)?
    How to check

    Sign-up, reset, receipt: tested to Gmail and Outlook.

  2. Is the sending domain authenticated (SPF, DKIM, DMARC)?
    How to check

    The email provider shows the domain as verified.

  3. Are email failures observable?
    How to check

    A refused send leaves a trace someone looks at.

  4. Are retries and failures handled appropriately?
    How to check

    The user can ask for the email again; a failed send is not silently lost.

When it breaks, you see it and you can roll back.

  1. Is production configuration separate from development?
    How to check

    Database, Stripe keys, emails: production uses nothing from local.

  2. Are required secrets handled securely, out of the code?
    How to check

    No private key in the repository, nor in a public variable (NEXT_PUBLIC_…).

  3. Are errors and important failures observable?
    How to check

    An error triggered on purpose reaches a responsible person.

  4. Are dependencies and known vulnerabilities reviewed?
    How to check

    A dependency audit read, critical alerts fixed or documented.

  5. Is there a rollback or recovery procedure?
    How to check

    Go back to the previous deployment, and know what to do with a migration already run.

People can find you, and you measure what matters.

  1. Are important pages indexable?
    How to check

    No forgotten “noindex”, a title and description per page.

  2. Is the sitemap configured?
    How to check

    /sitemap.xml answers, with the right production URLs.

  3. Are robots and canonical rules correct?
    How to check

    Private pages excluded; each public page points at its own URL.

  4. Are analytics events actually firing?
    How to check

    Seen arriving in the analytics tool, not only written in the code.

  5. Is there a measurable conversion event?
    How to check

    Sign-up, payment or request: a number you can follow every week.

Your obligations to customers are identified.

  1. Are the relevant privacy notices present?
    How to check

    What is collected, why, with which providers, for how long.

  2. Is sensitive customer information handled appropriately?
    How to check

    Nothing sensitive in logs, emails or analytics tools.

  3. Are required consents collected where applicable?
    How to check

    Non-essential cookies, marketing emails: asked before, not after.

  4. Are support and contact routes available?
    How to check

    A visible address or form, and someone who answers.

  5. Are customer-facing legal obligations identified for review?
    How to check

    Terms, withdrawal rights, invoicing: listed for a lawyer — not guessed.

03 — Evidence levels

Four levels of evidence. Never mixed up.

Every finding in the report says where it comes from. A declaration is not presented as a fact, a tool signal is not presented as a verification, and what was not checked is written down as such.

01User-declared
You say so; nobody has checked it yet. Useful to steer, never proof.
02Tool-observed
An automated tool reported it (scan, test, inspector). A signal, to be confirmed in the real context.
03Expert-verified
Reproduced, tested or inspected by the person who signs the report, with the evidence described.
04Not checked
In scope but not checked (access, time, environment). Stated as such, never assumed fine.

A “not checked” point is never assumed to be fine.

04 — How it works

Nothing is paid before a written scope is accepted.

  1. Step 1 : You send a brief.

    Five short steps: the product, the stage, what worries you, what is at stake, your details. With your self-assessment summary if you like. No access, no password.

  2. Step 2 : I qualify the request.

    I read your brief myself, ask what is missing, then confirm the package. If it is not a fit — or too early — I tell you.

  3. Step 3 : Written scope and quote.

    The journeys and integrations checked, what is excluded, the acceptance criteria, the price, the timeline. You accept them in writing before paying.

  4. Step 4 : Payment, then access.

    Online payment. Access is set up afterwards: the minimum needed, read-only or with test accounts where possible, removed at the end.

  5. Step 5 : Review, report, decision.

    I check the agreed scope, fix what the quote includes, and deliver a report: findings, prioritised plan, launch recommendation, handoff.

05 — Packages

Three packages. A written scope before you pay.

Starting prices, in CHF. The final price is written in the quote, after your request has been qualified: nothing is charged on the strength of the form alone.

Launch Audit

Know, with evidence, what blocks your launch.

from CHF 390

Fixed price once the scope is confirmed

For founders preparing their first launch.

Timeline
3 to 5 business days after access is set up
After delivery
1 clarification round on the report

Included

  • A review scope agreed in writing
  • Review of the key customer journeys
  • Assessment of the selected integration risks (payments, data, emails…)
  • Evidence-backed findings, each with its verification level
  • A prioritised action plan (stop-ship, before, after launch)
  • Written launch decision support, limited to the checked scope

Not included

  • No code changes (quoted afterwards)
  • Penetration testing, legal compliance audits
  • Anything outside the written scope

No code delivered, no fix period

Launch Fix Sprint

Fix the identified blockers, and verify the fixes.

from CHF 1’490

Always quoted

For founders with identified launch blockers.

Timeline
Per quote, usually 1 to 2 weeks
After delivery
1 rework round after your review

Included

  • A written remediation scope
  • The critical fixes defined in the quote
  • Verification of the affected workflows
  • Deployment-readiness checks, where access permits
  • A written list of unresolved risks
  • A technical handoff

Not included

  • Unlimited implementation work
  • New features, rebuilds
  • Deployment without your written authorisation

Defects introduced by the delivered fixes: fixed for 14 days

Go-Live Support

A release that is prepared, supervised and verified.

from CHF 2’490

Always quoted

For founders who want supervised preparation and a bounded release.

Timeline
Per quote and your launch date
After delivery
1 rework round after your review

Included

  • A pre-launch review
  • An agreed critical-path test plan
  • Remediation of explicitly scoped blockers
  • A release checklist
  • Supervised deployment assistance, when authorised
  • Post-release verification during an agreed window
  • Handoff and operational recommendations

Not included

  • Any guarantee of zero downtime, zero vulnerabilities or complete compliance
  • On-call support beyond the agreed window
  • Fixes outside the scope

Defects introduced by the delivered fixes: fixed for 14 days

  • The scope and the final quote are accepted in writing, in your project space, before any payment.
  • The first brief is free. If it is not a fit, I tell you — no invoice.
  • A fix is never unlimited: it covers the blockers named in the quote.
  • No package guarantees zero downtime, zero vulnerabilities or complete compliance.

06 — The report

A report that says what was checked. And what was not.

Every engagement ends with a launch-readiness report in your project space, printable. Visible to you only.

  1. A — Executive summary

    The product, the checked scope, the launch target, the overall assessment and its limits.

  2. B — Findings

    For each: identifier, area, evidence source and level, expected and observed behaviour, business consequence, severity, recommended action.

  3. C — Prioritised plan

    Stop-ship · before launch · after launch · optional improvement.

  4. D — Release decision

    One of the four recommendations below, with its reasoning.

  5. E — Proposal

    Where useful: the fix scope, acceptance criteria, timeline, price and explicit exclusions.

  6. F — Handoff

    Checks completed, checks that could not be completed, outstanding risks, monitoring advice, next actions.

The four possible decisions

  • No identified blocker within the checked scope

    Within what was checked, nothing stands in the way of a launch. It says nothing about what was not checked, and does not guarantee the absence of defects.

  • Launch with documented risks

    No blocker identified, but known risks remain open. They are listed, with their consequence and what monitors them.

  • Address critical blockers before launching

    At least one stop-ship point was found. Fix it — and verify the fix — before opening to real customers.

  • Insufficient evidence to recommend a launch decision

    What could be checked is not enough to recommend launching or not. The report says what is missing.

  • The report never declares an application “safe”, “secure” or “bug-free”.
  • A decision only covers what was checked.
  • What could not be checked is listed, with the reason.

Brief

Tell me about your launch.

Five steps, four minutes. No access, no password. “I don’t know” is always an accepted answer. I read every brief myself and reply within 24 hours, Monday to Friday.

Already sent a brief? Find my project space

Without JavaScript, every step shows on one page.

What does your application do?

Nothing is analysed automatically.

Is it already deployed? Optional
Technologies, if you know them Optional
Where is the launch at?
What worries you most?

One answer. If a bit of everything worries you: “Multiple problems” or “General confidence”.

What is at stake?
Do you already have paying users? Optional
Where should I send my reply?

A question, a written proposal, or a reasoned no if it is not a fit.

To go faster (optional)

Paste a short summary if you ran ShipCheck. No code, no secrets: anything that looks like a key is removed anyway.

07 — Who, what, how

One person, a scope, evidence.

Who performs the review
Me, Danilson Ramos, a product engineer in Zürich. I build and run Next.js, Supabase and Stripe applications in production. The person who reads your brief is the one who performs the review and signs the report: no subcontracting.
What can be inspected
The deployed application, the code (repository or copy), the deployment configuration, logs, and read-only the relevant settings of your services (Stripe, Supabase, email). An automated tool may complement this; its signal is always labelled as such.
What you receive
The A-to-F report in your project space and, for a fix, the code delivered as a pull request, branch or patch. Nothing is deployed without your written approval.
What is excluded
Anything outside the written scope, penetration testing, compliance audits, legal advice, new features.
How access is handled
After qualification and payment, with your agreement: the minimum needed, read-only or with test accounts and test keys where possible, time-limited, removed at the end. Never a password by email. An NDA is available.
If critical problems are found
I tell you right away, without waiting for the report, with what I observed and what I recommend. The fix is not improvised: it is in the quote, or it gets a separate proposal you accept — or not.

This review is not a penetration test, legal compliance certification, or guarantee that no bugs remain.

Products I built and run, with real payments:

  • AtamataxUS expat tax infrastructureIn production · payments live · Next.js · TypeScript · Postgres · Stripe · Vercel
  • Horveraflight compensation infrastructureIn production · payments live · Next.js · TypeScript · Postgres · Stripe · PostHog
  • Wabiroidentity and relationship tests built for search and sharingIn production · payments live · Next.js · TypeScript · Postgres · Stripe · Vercel

See the case studies →More about me →

08 — The right service

Launch Rescue prepares a launch. Other services do something else.

  • You launch soon and want to know what blocks it.

    Launch Rescue

  • You want to check it yourself first, for free.

    ShipCheck →Free checklist, in French

  • One specific defect breaks the application.

    Code Rescue →

  • It works, but it looks dated or confusing.

    Design Rescue →Page in French

  • It is live and looks good, but visitors don’t convert.

    Conversion Rescue →Free scan of the page

  • The product is live and the work is wider than a launch.

    AI Product Rescue →

  • You want to learn to check and build it yourself.

    Build School →

Frequently asked questions

  • How do I know if my SaaS is launch-ready?

    When the journeys that make or lose money have been exercised in production conditions: sign-up and sign-in, payment through to access, one user never seeing another user’s data, the important emails, and what happens when something fails. The self-assessment on this page lists 39 questions; every “I don’t know” is a point to verify. Being able to answer yes is a start — having checked it is the evidence.

  • Can an AI-generated app go into production?

    Yes, and many do. The tool that wrote the code does not decide whether it is ready; what was checked does. AI builders are often fast on the visible part and less careful about access rules, webhooks, error states or secrets. Those are the points worth verifying before real customers arrive.

  • What should I test before enabling Stripe?

    At least: a full payment in the environment that is really deployed; access granted by the server from a verified webhook, never by the “thank you” page; the same webhook replayed without double access; a declined card and a cancellation; a refund that removes access. Use test keys for all of it before switching to live keys.

  • Can you review a Lovable or Cursor project?

    Yes. Lovable usually produces a React (Vite) application with Supabase; Cursor and Claude Code projects are often Next.js. For the review I need the deployed application and, depending on the scope, the code — Lovable can sync the project to GitHub. Bolt, Replit and code written with ChatGPT work the same way.

  • Does ShipCheck replace a technical audit?

    No. ShipCheck is a free checklist that helps you check the essentials yourself; it inspects neither your code nor your deployed configuration. A Launch Rescue review produces verified findings, labelled with their evidence level, and a written launch recommendation. They work well together: ShipCheck first, then the points you could not settle.

  • Does the audit include code fixes?

    No. The Launch Audit from CHF 390 delivers findings, a prioritised plan and a launch recommendation, without touching your code. Fixes are a Launch Fix Sprint or Go-Live Support, quoted on the blockers named in the report — or Code Rescue for one precise defect.

  • Can you deploy the app for me?

    With Go-Live Support, I can assist with the deployment if you authorise it in writing, then verify the application during an agreed window after the release. I never deploy to your production on my own, and no package promises zero downtime.

  • What access will you need?

    Nothing for the brief. After qualification and payment, depending on the scope: the deployed URL, test accounts, read access to the code, and read-only access to the relevant service settings. Least privilege, test keys where possible, removed at the end. Never a password or a production key by email.

Launch knowing what you are launching.

Reading your brief and replying costs nothing. You only pay when you accept a written scope and quote.

Read: what AI-generated SaaS founders should verify before launch →