BlogFindings

No code SEO: 10 of 42 no code home pages served a crawler zero words

Lantad requested the home page of all 392 hostnames in this repository's committed platform corpus on 28 September 2026 as LantadBot, following redirects and executing no JavaScript. 383 answered HTTP 200 with HTML and 27 of those carried zero words of readable text. 11 of the 27 sat in the 42 site no code stratum, the worst result of the ten platform groups read that day, and once one bot challenge is set aside 10 of them were real pages that served nothing. Not one of those 10 sites disallowed GPTBot in robots.txt.

15 min read Lantad

This run went and looked at the bytes. Lantad requested the home page of all 392 hostnames in this repository's committed platform corpus on 28 September 2026 as LantadBot, following redirects and executing no JavaScript, then read every response through the scanner's own extractor. 383 answered HTTP 200 with HTML. 27 of those 383 carried zero words of readable text, and 11 of the 27 sat inside a single 42 site group: the stratum of sites built on no code platforms.

In short

  • Lantad requested the home page of all 392 hostnames in this repository's committed platform corpus on 28 September 2026 as LantadBot/1.0, following redirects and executing no JavaScript: 383 answered HTTP 200 with HTML, and 27 of those carried zero words of readable text.
  • No code SEO rests on whether the words survive the fetch, and on 28 September 2026 they did not on 10 of the 42 hostnames in this corpus no code stratum, which is the worst zero word count of the ten platform strata read that day.
  • Every one of the 10 no code pages that returned zero words on 28 September 2026 carried a title element and no h1 at all, and 6 of the 10 shipped a noscript element, one of which reads: You need to enable JavaScript to run this app.
  • Robots.txt was not what stopped any of them: 40 of the 42 no code hostnames returned a parseable robots.txt on 28 September 2026, 6 of the 40 named at least one AI crawler token, and none of the 40 disallowed GPTBot at the site root.
  • The no code stratum median was 547 words on 28 September 2026, so the weakness is in the tail rather than the middle: 29 of the 42 served 50 words or more and 10 served none at all.
Platform stratumHome pages readServed zero wordsOf those, bot challenges
No code (Bubble, Carrd, Glide, Softr)42111
Single page app startups4450
Local media3031
WordPress small business3733
Webflow4220
Framer3111
Wix and Squarespace5410
Static documentation3110
Shopify direct to consumer3400
SaaS marketing3800
All ten strata383276
Home pages read by Lantad on 28 September 2026 across the ten platform strata in this repository's committed corpus seed file, requested as LantadBot/1.0 with redirects followed and no JavaScript executed. The bot challenge column counts pages whose zero word result is an interstitial rather than a rendering outcome, and those are not counted against the platform.

What does no code SEO actually depend on?

The field calls it generative engine optimization, and it disagrees with ordinary search optimisation about plenty, but not about this step. The crawl is shared, and this site has already set out the four things that separate GEO from SEO: none of the four is the fetch. A request goes out, bytes come back, and something pulls text out of those bytes. Everything a ranking system or an answer engine does afterwards runs on the text that survived that extraction. If no text survived, there is nothing downstream to rank, summarise or quote.

That ordering is why structured data and llms.txt cannot rescue an empty response. Both describe a page. Neither is a substitute for one, and this site has measured what happens when markup and page disagree: 70 of 146 markup values were not present on the page they described. A description of prose that does not exist is not a smaller problem than no description at all.

So no code SEO depends on one thing before it depends on anything else, which is whether the words typed into the builder are present in the response or assembled afterwards by a script. This site calls the distance between those two states prose parity, and it decides whether an AI crawler has any material to work with. A page can be well organised, correctly marked up, fast, and still completely empty to a reader that does not execute JavaScript. The methodology behind the grade starts there for exactly this reason.

The order in which a page becomes citable. Lantad measures the third box, which is what a reader that executes no JavaScript is left holding. Every stage to the right of it operates only on what that stage produced.

10 of 42 no code home pages served zero words

The corpus is the platform seed file committed to this repository, generated on 30 July 2026 and stratified by the platform a site is built on rather than by what the site sells. Its no code stratum holds 42 hostnames taken from published lists of sites built with Bubble, Carrd, Glide and Softr, together with one vendor's own customer stories. That provenance is also a limit, and it is worth stating plainly: the frame records what those sources said each site was built with when it was drawn, and this run did not re-verify that all 42 still run on the platform they were listed under.

All 42 answered HTTP 200 with HTML on 28 September 2026. 11 of them returned zero words. One of those 11, swapstack.co, answered with a Cloudflare interstitial titled "One moment, please..." rather than a page of its own, which is a bot challenge and not a rendering outcome, so it is counted separately and excluded from the finding. That leaves 10 hostnames that answered with a real page carrying no readable words at all.

Two more sat just above the line and are named rather than folded in. nocodemvp.com returned a body reading 403 Forbidden underneath an HTTP 200 status, which is a different defect and one this site has measured across a wider sample as a soft 404. dvassallo.com returned 36 words. Above those, the stratum recovers quickly: the median was 547 words, and the top of the range reached 3,737.

That median is the reason a single average would have hidden this entirely. 547 words is unremarkable, and it sits above Webflow at 355, above Wix and Squarespace at 327 and above static documentation sites at 302. The no code stratum does not have a general prose problem. It has a tail, and roughly a quarter of the sample is in it. A platform average is the wrong instrument for a failure mode that is total on the sites it touches and absent on the rest, which is a pattern this corpus keeps producing.

Stability was checked rather than assumed. Every zero word page in the whole corpus was requested a second time the same day. 26 of the 27 returned zero words again. The exception was carlsonduluth.com in the local media stratum, which returned 707 words on the second read and is therefore reported as one page that moved between two reads rather than as a finding. All 13 of the no code pages under 50 words returned the same count both times.

  • Single page app startups 850 words
  • WordPress small business 730 words
  • Framer 725 words
  • SaaS marketing 719 words
  • Shopify direct to consumer 588 words
  • No code (Bubble, Carrd, Glide, Softr) 547 words and 10 of the 42 returned zero
  • Local media 383 words
  • Webflow 355 words
  • Wix and Squarespace 327 words
  • Static documentation 302 words
Median words recovered from the home page of each platform stratum by Lantad on 28 September 2026, no JavaScript executed. The no code median is mid table, which is exactly why the median is the wrong summary here: the same stratum holds 10 pages that returned nothing.

What the ten pages did send instead of words

None of the 10 was an empty file. Every one of them returned a complete HTML document with a title element that says what the business is, and the titles are not placeholders: estate planning, invoicing software for freelancers, a MarTech stack management platform, an AI article writer. The response knows what the site is for. It simply does not contain the page.

Two of them were very large. listr.pro returned 329,114 bytes and letterhunt.co returned 242,041 bytes, both yielding zero words. The material is in the response, in the sense that the bytes crossed the wire, but it is held in script payloads rather than in text nodes an extractor can reach. This site has measured the same shape before, where text in hydration JSON scored the same as no text at all. A crawler is not paid to guess which of several megabytes of JSON was meant to be the paragraph.

Not one of the 10 carried an h1. That matters more than it looks, because a missing h1 usually means the heading is created by script along with everything else, and headings are the structure an answer engine uses to decide what a page is about. This site has measured heading loss on its own pages before, where a heading existed in the markup and still counted as no h1 at all.

The clearest evidence that these sites already know is the noscript element. 6 of the 10 shipped one. Per MDN's reference, a noscript element defines a section of HTML to be inserted if a script type on the page is unsupported or if scripting is turned off in the browser, which describes a crawler that runs no JavaScript precisely. projectant.io's noscript says: You need to enable JavaScript to run this app. That is the site addressing this exact reader, in writing, and telling it to go away. It is worth noting that a noscript element is not itself a fix, and this site has published the fourteen noscript elements that held no text to make the point that the element is usually a warning rather than a fallback.

HostnameBytes returnedScript elementsCarries a noscriptCarries an h1
listr.pro329,11426NoNo
letterhunt.co242,04127NoNo
martechbase.com34,69141YesNo
yep.so31,26159YesNo
incomee.co28,99747NoNo
beelango.com26,33858YesNo
nanny.network6,33615NoNo
byword.ai4,3571YesNo
lifelegacy.io3,7874YesNo
projectant.io2,5164YesNo
The 10 no code hostnames that answered HTTP 200 with a page carrying zero readable words, measured by Lantad on 28 September 2026 with no JavaScript executed. Every row returned the same zero word count on a second request the same day. swapstack.co is excluded from this table because its zero word response was a bot challenge.

Robots.txt was not what stopped these crawlers

The reflex when a site is missing from an answer engine is to open robots.txt, and on this sample that reflex would have found nothing wrong. 40 of the 42 no code hostnames returned a robots.txt that parsed on 28 September 2026, served with HTTP 200 and a plain text content type. The other two returned HTTP 404, which RFC 9309 section 2.3.1.3 treats as unavailable, meaning a crawler may access any resource on the server.

Of the 40 that parsed, 6 named at least one of the seven AI crawler tokens this scanner checks, and none of the 40 disallowed GPTBot at the site root. Evaluated with the scanner's own parser, GPTBot was permitted to fetch the home page on every one of the 40 files that parsed, and the two hostnames answering 404 permit it by absence. So on all 10 of the sites that returned nothing, the access control said yes and the page said nothing. The rule everyone tunes was not the binding constraint.

This is the opposite failure from the one the platform posts usually surface. On Webflow, 20 of 40 robots.txt files held no rule at all, and on Wix not one of 69 files named an AI crawler. Those are files that fail to express an intention. Here the files are fine and the page behind them is empty, which no robots.txt tester will ever report, because a robots.txt tester answers a question about permission and this is a question about content.

It is worth being exact about what robots.txt governs, because the confusion is common enough to be costly. Google's robots.txt specification, carrying Last updated 2026-08-31 UTC, describes status handling and rule matching for access. Nothing in it concerns whether the fetched document contains text. A file can be flawless and still sit in front of a page that has none, and this site has separately measured that 232 of 1,059 robots.txt files carried a defect a validator can name. Permission and content are two independent checks, and passing the first tells you nothing about the second.

  • Parsed as robots.txt 40 of 42 HTTP 200 with a plain text content type, read once per hostname with redirects followed.
  • Returned HTTP 404 2 of 42 RFC 9309 section 2.3.1.3 calls this unavailable, and a crawler may then access any resource.
  • Named an AI crawler token 6 of 40 At least one of the seven tokens checked appeared as a user agent in the file.
  • Disallowed GPTBot at the root 0 of 40 Every one of the 42 permitted GPTBot to fetch the home page it could not read.
What Lantad found at /robots.txt across the 42 no code hostnames on 28 September 2026, evaluated with the scanner's own RFC 9309 parser at the site root.

What the crawler operators actually commit to about JavaScript

A fair objection to all of this is that crawlers might render the page anyway. The honest answer is that it depends entirely on which crawler, and that the companies behind the AI crawlers have mostly declined to say.

Google is the one that has written it down. Google's JavaScript SEO basics, carrying Last updated 2026-03-04 UTC, states that Google processes JavaScript web apps in three main phases, crawling, rendering and indexing, and that once Google's resources allow, a headless Chromium renders the page and executes the JavaScript. That is a commitment a site owner can plan against, with a documented queue and a documented engine.

For the crawlers that feed AI answers there is no equivalent. OpenAI's bots documentation describes GPTBot, OAI-SearchBot and ChatGPT-User, explains that each robots.txt setting is independent of the others, and publishes IP ranges for them. Read on 28 September 2026, that page contains the string JavaScript zero times and the string render zero times. It is not that OpenAI says it does not render. It is that the question is not addressed, so nothing on that page lets a site owner conclude either way. This site put the same question to every vendor it tracks and found that 2 of 9 operators say either way.

That silence is the whole risk calculation for a no code site. A page whose words exist only after a bundle runs is betting that every engine it cares about renders, and the documentation supporting that bet currently covers one engine. If you want to see the shape of the bet on your own pages, what GPTBot sees fetches them the way a non rendering client would, which is the same fetch this measurement made.

Google, JavaScript SEO basics

  • Page carries Last updated 2026-03-04 UTC
  • Three phases named: crawling, rendering, indexing
  • States a headless Chromium renders the page
  • States it executes the JavaScript

OpenAI, crawler documentation

  • Names GPTBot, OAI-SearchBot and ChatGPT-User
  • Each robots.txt setting independent of the others
  • The string JavaScript appears zero times
  • The string render appears zero times
Two vendor documentation pages read by Lantad on 28 September 2026. One commits to rendering in writing. The other does not raise the subject, which is a gap in the record rather than a statement of behaviour.

What this measurement does not establish

This run measured one page per site, on one day, from one network location, with one user agent. It did not run a browser, so it cannot say what any of these pages look like once the script has finished, and it cannot report a rendered word count to set against the raw one. This site has done that comparison separately, with a real browser on the same corpus, and found that JavaScript supplied 7.6 percent of the prose and 11 of 271 pages returned nothing readable until the bundle ran. Today's figure is the unrendered half of that comparison on a different day, not a replacement for it.

It also did not test whether any AI crawler in fact failed to retrieve these sites, because that would require the operators' logs rather than a scanner. The claim here is narrow and it is a supply side claim: on 28 September 2026 these 10 pages served no words to a client that did not execute JavaScript, and their robots.txt files permitted that client to ask. What any given engine then did is not in this dataset.

Nor is this a claim that no code platforms cannot serve prose. 29 of the 42 sites in the stratum served 50 words or more, several of them generously, and the stratum median beat four other platforms. The finding is about a tail, and the tail is where the platform default and the site owner's inattention meet. A builder that renders on the client by default will produce this outcome for anyone who never checks, which is precisely the population a no code tool is sold to.

The fix is not exotic and it is not a Lantad product. It is server rendering, or prerendering, or static export, whichever the builder offers, and the site's own client rendered and server rendered canary pages exist so the difference can be inspected rather than argued about. Where a site has outgrown the builder, the stack guides for React, Next.js and sites generated by an AI app builder cover the same fix in the frameworks people migrate to. The check that matters comes first though, and it costs nothing: fetch your own home page without JavaScript and read what comes back. AI visibility is downstream of that, and on 10 of these 42 sites there was nothing downstream to have.

  • Words in the raw response, no JavaScript 383 home pages read through the scanner's extractor, 27 returning zero words.
  • Robots.txt permission at the site root Evaluated per hostname with the scanner's RFC 9309 parser for GPTBot.
  • Stability across two reads the same day 26 of 27 zero word pages repeated; the one exception is named in the post.
  • Word count after the bundle runs Needs a browser. Measured separately on this corpus on 20 September 2026.
  • Whether an AI crawler actually fetched these sites Needs the operators' logs, which no scanner can see from outside.
  • Whether each site still runs on the platform listed The seed frame records what published lists said when it was drawn on 30 July 2026.
The boundary of this measurement, stated so the finding is not read wider than the evidence supports. Measured items were observed on 28 September 2026; unmeasured items would need a browser, vendor logs, or both.

Written by

Lantad

Published .

The promise of a no code builder is that you never have to look at the markup. You drag a block onto a canvas, you type into it, the page appears, and the question of what actually left the server never comes up. For most of what a small site needs that is a good trade. It stops being a good trade the moment something reads the page without running a browser, because at that point the only thing that exists is the bytes, and nobody on the team has ever seen them.

Common questions

What is no code SEO?

No code SEO is the practice of making a site built on a visual builder such as Bubble, Carrd, Glide, Softr, Webflow or Wix readable and rankable by search engines and AI answer engines. The first thing it depends on is whether the text is present in the HTML the server returns or is assembled afterwards by JavaScript. Lantad read 42 no code home pages on 28 September 2026 with no JavaScript executed and, once one bot challenge is set aside, 10 of them returned zero words, so on roughly a quarter of that sample everything downstream of the fetch had nothing to work with.

Can AI crawlers read a no code site?

It depends on whether the builder sends the text or sends a script that writes it. Of the 42 no code hostnames Lantad measured on 28 September 2026, 29 served 50 words or more to a client executing no JavaScript, with a stratum median of 547 words, and 10 served none at all. Google documents that a headless Chromium renders pages for Search, on a page carrying Last updated 2026-03-04 UTC. OpenAI's crawler documentation, read the same day, does not mention JavaScript or rendering at all, so for those crawlers the question is unanswered rather than answered either way.

Does blocking in robots.txt explain a no code site missing from AI answers?

Not in this sample. 40 of the 42 no code hostnames returned a parseable robots.txt on 28 September 2026, none of the 40 disallowed GPTBot at the site root, and every one of the 42 permitted GPTBot to fetch its home page when evaluated with Lantad's RFC 9309 parser. On the 10 sites that returned zero words the permission was granted and the page was empty, which is a content problem that no robots.txt checker is built to detect.

How do I check what a crawler sees on my own no code site?

Request your home page without executing JavaScript and read the response. If the body carries a title and no paragraphs, no h1 and a noscript element, you are looking at the pattern found on all 10 of the zero word sites in this measurement. The fix is whatever your builder calls server rendering, prerendering or static export. Lantad's what GPTBot sees tool performs the same fetch, and the site's client rendered and server rendered canary pages show the two outcomes side by side.

See what AI can read on your site

Run a free scan and get a graded report of exactly what AI crawlers can and cannot read, with ranked fixes.