Is My AI-Built App Ready for Real Users? What Breaks First

By Pouyan · Updated August 2026

For ten years I built software where breaking was not embarrassing, it was expensive. Then I started looking at apps built the way we all build now, and I noticed something that took me a while to put into words.

These apps are not broken. They are unfinished in a very particular way. They are unfinished in the places that only show up on your best day.

That is the part I want you to sit with for a second. The problems below do not appear when things are quiet. They appear the morning your post does well, or the day a customer tells their whole team about you, or an hour after you go live on Product Hunt. Your app has been fine for months, and then it fails at the exact moment you finally have an audience watching.

Everyone talks about security with these apps, and it matters, I write about it constantly. But most of what I actually find is not a break-in. It is an app that works beautifully for one person and has never once been asked to be a real business.

Your app has never met a crowd

You have used it. Your friends have used it. Perhaps thirty people have used it, spread across a week, one at a time.

It has never had two hundred people arrive in the same ten minutes. And the thing about that is not that it gets a bit slower. It is that things which never overlapped before start overlapping, and your app has no instructions for what to do about that, because nobody wrote any.

The AI did not do anything wrong. You asked it for an app that works. It gave you an app that works. Nobody asked it what should happen when four hundred people do the same thing at the same second, so nobody decided.

Two people, one moment

This is my favourite example because it is so easy to picture and so easy to get wrong.

You have one ticket left. Two people press buy at the same instant. Both requests look at how many tickets remain. Both see one. Both go ahead. You have now sold the same ticket twice and one of those two people is going to write to you.

The same thing in a different shape: somebody clicks the pay button, nothing seems to happen, so they click it again. If nobody thought about that, they have just been charged twice.

Handling this properly is a known, ordinary piece of work. It is simply never done, because you cannot ask for something you do not know is a question, and the app looks completely correct until the day it is not.

The money arrived and the order did not

If you take payments, this is the one I would check tonight.

Most AI-built apps decide that a customer has paid when the customer comes back to your thank-you page. It seems reasonable. It is also wrong, and it fails in the worst possible direction.

Somebody pays on their phone. The payment goes through perfectly. Then they walk into a lift, or the connection stutters, or they close the tab a second too early, and they never land on your page. The money has left their account. Your app has no idea it happened. They have no order, no email, and no reason to think you are honest.

There is a proper way to do this, where the payment company tells your app directly rather than relying on the customer's browser to carry the news. It is not hard. It is just a thing you have to know to ask for.

There is no undo

Ask yourself a plain question. If your database were emptied in the next ten minutes, by anyone, for any reason, what would you do?

For a lot of the apps I look at, the honest answer is nothing. There is no backup. Not because backups are hard, but because they are invisible. An app without backups looks and behaves exactly like an app with them, right up until the day you need one.

It does not have to be a hack. It is far more often somebody running the wrong thing while tired, or an AI cheerfully doing precisely what it was asked.

You will find out on Tuesday

Your app breaks on Sunday evening. Nothing tells you. You find out on Tuesday from a customer who is already annoyed and has already told a friend.

AI does not build the part that shouts. There is no alarm, no message, no one watching. And the gap between something breaking and you knowing about it is almost exactly the gap between an inconvenience and a lost customer.

The same applies quietly to email. Your password reset stops arriving. Nobody writes to tell you their reset email never came, they just leave. That one can run for months.

The paperwork nobody mentioned

If you have European users and you keep their details, some rules apply to you, and being two people with a side project does not exempt you.

In practice it is not dramatic. Say what you collect and why. Let somebody ask for a copy of their data, or ask you to delete it, and actually be able to do it. Do not set tracking cookies before people agree. Know which country your data is sitting in.

None of that is difficult and all of it is missing by default, because no AI has ever volunteered a privacy policy. It usually becomes real the first time a customer emails asking you to delete their account, and you realise you have no way to do it.

What you can check this evening

  • Pay yourself. Make a real purchase, and while the payment page is open, turn off your wifi before returning. Then look at whether the order exists.
  • Press the button twice. On anything that creates something, click fast, twice. See whether you get two.
  • Find your last backup. If you cannot find one in five minutes, you do not have one you could use in a crisis.
  • Ask yourself how you would learn your app is down at 3am. If the answer is a customer, that is your answer.
  • Try to delete an account. Yours. All the way. See whether it is possible.

What I cannot tell you from a web page

Those checks are genuinely useful and I would rather you did them than not. But most of what I have described only reveals itself under real conditions, with real people, at the same time, and you cannot simulate that from your own laptop on a quiet Tuesday.

That is the honest limit. Reading the app tells you. Using the app does not.

If you want somebody to look before your best day

Send me the address of your app. I will go through it myself before we speak, then we take half an hour and I will tell you what I found in normal words. Free, nothing to buy at the end.

The best time to do this is while everything is quiet and boring. The worst time is the morning it finally works, which is unfortunately when most people call me.

Common questions

My app works. Why would it break with more people?

Because it has only ever been used by one person at a time, and that is a completely different job from being used by two hundred people at once. Things that never overlapped now overlap. The database that answered you instantly has a queue. Nothing was wrong before. The conditions changed.

Can two customers really buy the same last item?

Yes, and it is one of the most common things I see. If two people press buy at the same instant, both requests can check the stock, both see one left, and both go ahead. Handling that properly is a specific piece of work that nobody asks the AI for, because you do not know it is a question until it has already happened.

What happens if a payment succeeds but my app misses it?

The customer is charged and gets nothing. This is very common in AI-built apps, because the code usually treats the customer returning to your thank-you page as proof of payment. If their connection drops on the way back, the money is taken and your app never notices.

Do I need to worry about GDPR for a small app?

If you have European users and you store their details, yes, and the size of your company does not change that. In practice it means saying what you collect, letting people ask for their data or ask you to delete it, and not setting tracking cookies before people agree. None of this is difficult. It is just never built unless you ask.

Not sure if yours is affected?

Send me your app's address. I'll look at it myself before we speak, then we take half an hour and I'll tell you what I found in normal words. Free, no pitch, and if it's in good shape I'll tell you that too.

Would rather just talk? Book a call without filling this in. Bring your app's address and we'll look at it together.

Free · 30 minutes · no signup · no card

Pouyan Ahmadpour · engineer · Amsterdam

Keep reading