I have shipped over 30 apps. Most of them are absolute ghosts right now.
If you ask an AI tool to find something that does exactly what my projects do, they won't show up. It is not because the apps are bad. It is because I built them before AI crawlers mattered.
I learned the hard way that the ground moves fast in this industry. I am self-taught — learned by shipping, not by studying. A while back, I started vibe coding with Bolt. Then I found Databutton. I loved it — the community was real, and it is where I actually learned how to vibe code. Then they pivoted to B2B overnight. They shut down the Discord. Pricing shot up. The little guy got pushed out.
I was weeks away from monetizing. Instead, I had to pack up and leave. I jumped to Replit, tried Firebase Studio, messed with Google AI Studio, and finally landed on Cursor. Moving those apps one by one took forever. Six months just evaporated. That whole mess taught me a hard lesson: own your stack. Own your presentation layer. Never let a platform sit between you and your users.
So now I do. I build everything in Cursor. I own the code.
But owning the stack does not solve the discovery problem. People are searching differently now. They ask Perplexity, ChatGPT, or Claude for tool recommendations instead of scrolling Google. And those AI bots do not read websites the way humans do.
Here is what I have learned from watching my older apps fail to rank in AI search:
1. Client-side rendering is a wall.
Most of my old projects are pure client-side React. To a human, they load fast and look great. To an AI crawler that does not execute JavaScript, they look like a blank page with a <div id="root">. If the bot cannot read the text in the initial HTML, it just leaves.
2. Words matter more than pictures.
I used to rely on slick screenshots and minimal copy for landing pages. AI vision models might be smart, but standard web crawlers still run on plain text. I have started rewriting my landing pages to clearly explain the problem and the solution in plain English.
3. Semantic HTML is back.
Div soup is out. Using actual <header>, <nav>, <main>, and <article> tags helps the AI understand the hierarchy of the page. It needs to know what is navigation and what is the actual product description.
4. Structured data helps.
I used to ignore JSON-LD and schema markup. It felt like boring SEO work. Now, I put it everywhere. It feeds the bots exact data about what the app is, who made it, and what it costs.
I am still figuring this out. I am currently working through the discovery problem one app at a time to make my work visible to LLMs. It is frustrating to realize the rules changed while I was busy migrating code — but that is the job.
We spent a decade optimizing for Google search. Now we have to figure out how to talk to the bots.
How are you handling this shift? Are you doing anything specific to get your projects seen by AI search tools?
Top comments (0)