'AI builds your app' and 'no-code lets you build your app' sound like the same pitch. The results are not the same kind of software.
No-code produces a configuration living inside someone else's platform. AI code generation produces an actual application -- files, a database schema, real source code.
A no-code tool's ceiling is whatever the vendor built for you to click on. Real code has no ceiling except what's reasonable to ask for next.
A no-code app is portable only within its own platform. Generated code is portable the way all software is -- yours to host, inspect, and hand to any developer.
The lock-in question no one asks upfront
Try switching CRM providers on a no-code platform versus a real, database-backed application. One is a data-export project, reshaping records to fit whatever the new platform expects. The other is changing where the same schema is hosted -- the data model itself doesn't have to change, because it was never proprietary to begin with.
Where no-code still wins
This isn't an argument that no-code is always the wrong call. For a genuinely simple internal form with no real branching logic and a short lifespan, the extra ceiling of real code isn't worth the extra setup. No-code's speed advantage is real -- it's just a speed advantage that matters most for small, short-lived jobs, not for the systems a team runs on for years.
The real question to ask
Not "no-code or AI-generated code" in the abstract, but "will this outgrow a settings menu in the next 12 months." If the honest answer is yes, start with real code -- retrofitting a growing workflow onto a platform's configuration ceiling is a harder migration than building it correctly the first time.
Neither approach is wrong for every situation -- a quick internal form might not need real code. But 'built with AI' and 'built on no-code' are different promises, and it's worth knowing which one you're actually getting.