Lovable · Bolt · v0 · Replit · Cursor · Claude Code · updated: Oct 2026

AI-built app audit before you launch or charge

I review your app and tell you what could leak data, give your product away or take your operation down, with proof you can reproduce. Remote, from Mexico City in US time zones.

US$490 · fixed price · 3 business days

No finding without proof. Anything I couldn't test is reported separately as "not verified."

This is for you if your app works but nobody else has reviewed it

You're about to open the app to real users or start charging, and so far only you have used it.

You built it with Lovable, Bolt, v0, Replit, Cursor or Claude Code and nobody else has read the code.

It stores customer data: names, emails, orders, documents.

An investor, a larger customer or a partner asked for a security review before signing.

The assistant fixes one thing and sometimes breaks another, and you're no longer sure what changed.

The failures that show up most in AI-built apps

Seven reviews, each with a test you can repeat. Under each one is what gets looked at under the hood.

01

Exposed keys

A payment or database key visible to anyone who opens the page, or sitting in the code history.

Frontend bundle, git history, public env vars, a Supabase service_role key in the client.

02

Permissions that only live on screen

A hidden button protects nothing if the server answers the same way to someone who calls it by hand.

Endpoints, serverless functions and RPCs called with no session and with a low-privilege session.

03

One customer sees another's data

Changing a number in the URL or sending a direct query is enough to read someone else's account.

Supabase RLS off or set to true, open Firebase rules, guessable IDs in the URL.

04

Silent failures

Something breaks and you find out when an angry customer writes to you, not before.

Error tracking, backend logs and an alert that reaches a person; a controlled error is triggered to check.

05

Backups nobody has restored

If nobody has ever restored the backup, you find out whether it works the day you need it.

Database and file backups, frequency, and a restore to a separate database with row counts compared to production.

06

Payments that trust the browser

Someone edits the price before paying, access turns on before the payment is confirmed, or a customer is charged twice.

Price or plan sent from the client, webhooks without signature checks, replayed events.

07

Validations the assistant deleted

Ask it to fix something else and it sometimes removes a validation or a test without telling you.

Git history of auth, payments and permissions, looking for removed checks, plus whatever tests exist.

Plus three quick checks

  • Dependencies with known vulnerabilities.
  • Security headers and CORS.
  • Whether a privacy policy exists if you store personal data. I only check that it exists; this is not legal advice.

What the audit gives you

A report with one finding per row

Severity, reproducible proof, business impact and the concrete fix: which file and what change.

A one-page traffic light

For whoever decides: can you launch? can you charge? No code reading required.

A 45-minute call

I walk through each finding, the order to tackle them and what can wait.

A fixed quote for the fixes

If there are critical findings, the price and timeline to fix them, in writing.

The report is yours

You keep it even if you never hire me for anything else.

Three steps, always in this order

  1. 01

    Audit

    US$490

    fixed price · 3 business days

    The seven reviews and the three quick checks on one app: a frontend and its backend, up to roughly 30,000 lines of your own code.

  2. 02

    Fix the critical findings

    from US$990

    fixed quote after the audit

    Critical and high findings get fixed, with proof that they no longer reproduce.

  3. 03

    Maintenance

    from US$290

    per month

    Patches, tested backups and monitoring, so the app stays as reviewed after launch as it was on day one.

Prices in USD. Third-party services (Supabase, Stripe, hosting) are paid by your company directly; I add nothing on top.

From the call to the report in 3 business days

  1. Day 0

    Short call

    You tell me what the app does, which tool built it and where it runs. If I can't help, I'll say so on the call.

  2. Day 1

    Written authorization

    One page: which app, which environments, which test accounts you give me and which dates. Without that paper, nothing gets touched.

  3. Days 1–3

    Review

    I work in staging or with test accounts. I never test against real users without your permission.

  4. Day 3

    Report and call

    Report, traffic light and a 45-minute call. If there are critical findings, a fixed quote to fix them.

Nothing found? Half back

If the audit finds nothing of medium severity or higher, I refund half. It's in writing before we start.

No finding without proof

Every row in the report shows how to reproduce it. Anything I couldn't test goes in a separate section as "not verified," never as "fine."

Your code stays confidential

It's treated as confidential, with an NDA if you ask, and testing happens only with your written authorization.

If the problems run deeper

This audit is for new, small code written by an assistant. If what you have is an inherited system with years of business logic, see the legacy Laravel and PHP rescue. And if the audit turns up problems that patches won't fix, stabilization is the one on that page.

Questions I get before an audit

Is a Lovable and Supabase app secure?

It depends on what the assistant did in your particular project, which is why it's worth checking. Lovable and Supabase give you a solid base, but data security lives in settings the assistant can leave half done: row-level security policies (RLS), keys left in the frontend, or functions that never check who is calling them. An app can look and work perfectly with those doors open. The way to find out is to test it with two different accounts, which is what the audit does.

What is RLS and why does it matter?

RLS (Row Level Security) is the Supabase and Postgres rule that decides which rows of a table each user can read or change. If it's off, or a policy says true, any logged-in user, and sometimes any visitor, can request every other user's records with a single query. It's like letting every customer open every other customer's drawer. You test it with two accounts: account A asks for account B's data and you see what the server returns.

Do you need access to production?

Not necessarily. I prefer a staging environment or test accounts that you give me, and production only if you authorize it in writing. Read-only access to the repository is enough to read the code. Tests that could touch real data, such as replaying a webhook or repeating a payment, run in your payment provider's test mode.

What happens if you find something serious?

It goes in the report marked critical, with its proof, its impact and the concrete fix, and on the call we decide the order to handle it. If there are critical findings, I give you a fixed quote to fix them; you can hire me, hand it to your own team or give it to anyone you like. The report is yours.

Will you sign an NDA?

Yes. Your code and data are treated as confidential, and I sign an NDA if you ask for one. Testing happens only with your written authorization, which spells out what is reviewed, in which environments and on which dates.

What if my app isn't built with those tools?

I can review it anyway. The seven reviews apply to any app written by an AI assistant, or by a person in a hurry: Cursor, Claude Code, Windsurf, Copilot, or code someone else handed you. What changes is the stack: Supabase, Firebase, or your own backend in Node, Python or PHP. If it's over roughly 30,000 lines of your own code or it's several apps, I quote it separately.

How long does it take and how much does it cost?

The audit is US$490 at a fixed price and is delivered in 3 business days from the moment I have your authorization and test accounts. It covers one app: a frontend and its backend, up to roughly 30,000 lines of your own code. If I find nothing of medium severity or higher, I refund half. Fixing the critical findings starts at US$990 at a fixed quote, and maintenance at US$290 a month.

Will you rewrite my app?

Not as part of the audit: I hand you the report and I don't change your code. If there are critical findings, the fix is quoted separately and covers what turned up, with proof that it no longer reproduces, without rebuilding what works. If the app has deeper problems that patches won't solve, the report says so, and the route from there is the legacy rescue.

Tell me what you built it with and when you plan to launch

Two lines are enough: the tool, where the code lives and what worries you. I'll reply with whether the audit makes sense and when I could deliver the report.

07 / Contact

Tell me about your app and I'll tell you where to start.

Fill out the form and I reply within 1 hour during business hours and within 24 hours outside them. You can also email me directly: