All posts

SEO, AEO & GEO

We Tested 100 Nepali Business Websites for AI Search Readiness: Here Is What We Found

Arjun Basnet11 min read

Key takeaways

  • Of 100 Nepali business homepages tested in September 2026, exactly one passed all four AI-search basics: AI crawlers allowed, an Organization schema, a meta description, and a first paint under 2.5 seconds on slow 4G.
  • 12 of the 100 sites block at least one AI crawler in robots.txt, and 9 of those 12 are not a decision anyone made: they carry Cloudflare's managed AI block, which is applied by default and is separate from the bot-blocking toggle.
  • 58% of the sites have no structured data at all, and no hospital or clinic in the sample has any. Only one site in a hundred carries FAQ schema.
  • The median homepage weighs 3.1 MB and takes 12.2 seconds to paint its largest element on a simulated slow-4G connection. News sites and IT companies are the fastest sectors; banks and NGOs are the slowest.
  • Sites on WordPress are more likely to have structured data (57%) than custom-built sites (30%), because a plugin adds it. Custom sites are also the slowest group, with a median paint of 16.5 seconds.

Every conversation about AI search in Nepal so far has run on opinion. I wanted a number.

So in September 2026 I tested 100 Nepali business homepages, ten in each of ten sectors, for the things that decide whether a business can be found and cited by Google's AI Overviews, ChatGPT, Perplexity and Claude: whether AI crawlers are allowed in, whether the page describes the business in a form a machine can read, and whether it loads at all on the connection most Nepali visitors actually have.

The short version: one site in a hundred passes all four basics. The long version is below, with the numbers by sector, and it is more fixable than it sounds.

What was tested

Ten sectors, ten public homepages each: banks and finance, hospitals and clinics, schools and colleges, hotels and resorts, travel, trekking and airlines, e-commerce and fintech, manufacturing and retail, news and media, NGOs, and IT companies. Sites that turned out to be parked, under construction, or hidden behind a firewall that rejects anything that is not a browser were replaced with the next candidate in the sector.

Each site was checked for:

  • AI crawler access. Does robots.txt block GPTBot, ClaudeBot, Google-Extended, PerplexityBot, OAI-SearchBot, CCBot or Bytespider? Is the block Cloudflare's managed one?
  • Structured data. Is there any JSON-LD on the homepage? Does it describe the organisation? Is there FAQ schema?
  • The basics. Meta description, canonical tag, one H1, sitemap.xml, llms.txt, and whether the page contains any content at all without JavaScript.
  • Speed. Largest Contentful Paint, page weight, image weight, request count and third-party scripts, measured in a real Chromium browser emulating a mid-range phone on slow 4G.

Results are reported as sector medians and percentages. No business is named.

Finding 1: one site in a hundred passes the four basics

The four checks that decide whether an AI system can find, read, trust and actually load a page are: AI crawlers allowed, an Organization-type schema, a meta description, and a largest paint within 2.5 seconds on slow 4G.

One site passed all four. A third passed the three that do not involve speed.

Share of 100 Nepali business homepages passing each checkShare of 100 Nepali business homepages passing each checkAI crawlers allowedAI crawlers allowed: 88%88%Meta description presentMeta description present: 75%75%sitemap.xml presentsitemap.xml present: 62%62%Canonical tagCanonical tag: 56%56%Any structured data (JSON-LD)Any structured data (JSON-LD): 42%42%Exactly one H1Exactly one H1: 39%39%Organization-type schemaOrganization-type schema: 29%29%Paints in 2.5 s on slow 4GPaints in 2.5 s on slow 4G: 10%10%llms.txtllms.txt: 8%8%FAQ schemaFAQ schema: 1%1%
Percentage of the 100 sites passing each check. Only one site passed AI access, organisation schema, meta description and the 2.5-second paint together.

The order of that chart is the order of difficulty. Most sites let crawlers in (88%), because they never touched robots.txt. Three quarters have a meta description, because the CMS asked for one. Beyond that, every check falls below two thirds, and the checks that decide AI citation specifically (structured data, llms.txt, FAQ schema) are at the bottom.

Finding 2: the AI blocks are mostly accidental

Twelve sites block at least one AI crawler. Nine of those twelve are not a decision anyone at the business made. They carry Cloudflare's managed robots.txt, which prepends a block for GPTBot, ClaudeBot, Google-Extended, CCBot and Bytespider before the site's own rules, and which is applied by a default setting that is separate from the "block AI bots" toggle.

I know this one personally: this site had the same block until July, and it took a cache-busted fetch of robots.txt to prove it, because the Cloudflare dashboard said it was off.

Crawler Sites blocking it
GPTBot (OpenAI, model training) 11%
ClaudeBot (Anthropic) 11%
Google-Extended (Gemini training) 11%
CCBot (Common Crawl) 12%
Bytespider (ByteDance) 12%
PerplexityBot 2%
OAI-SearchBot (ChatGPT search citations) 2%

Manufacturing and retail is the sector most affected, with 4 of 10 sites blocked, all through the Cloudflare default. Banks, hospitals and news sites in the sample block nothing.

The consequence is specific. A site with the Cloudflare block is invisible to the crawlers that build model knowledge, so the business does not exist in the model's memory. Only two sites also block the live search crawlers, so most blocked sites can still be fetched when a user asks a question that names them, but they will not be the answer to a question that does not.

Twelve sites have no robots.txt at all, and 36% of the files that exist do not declare a sitemap.

Finding 3: structured data is rare, and absent where it matters most

58 of 100 homepages have no structured data at all. Of the 42 that do, most carry the generic WebSite and WebPage types a plugin emits automatically. 29 describe the organisation in a type a model can use to confirm what the business is. One site in a hundred has FAQ schema. Two have JSON-LD that does not parse.

Sector Any JSON-LD Organisation schema Meta description Sitemap
Hotels & resorts 80% 50% 90% 80%
Travel, trekking & airlines 80% 50% 90% 80%
News & media 60% 50% 80% 60%
Schools & colleges 40% 30% 70% 90%
E-commerce & fintech 40% 40% 100% 60%
NGOs & non-profits 40% 40% 30% 70%
Banks & finance 30% 20% 70% 50%
IT companies & agencies 30% 10% 100% 60%
Manufacturing & retail 20% 0% 60% 40%
Hospitals & clinics 0% 0% 60% 30%

Two rows stand out. Hospitals, the sector whose customers most often ask an AI assistant a question first ("which hospital in Kathmandu does knee replacement"), have no structured data on any of the ten sites tested. IT companies, who build websites for everyone else, have organisation schema on one site in ten.

Hotels and travel lead because their booking and review platforms have trained the sector to care about schema. That is also why 3 of the 10 travel sites have an llms.txt file, against 8 in the whole sample.

The CMS matters here. 57% of WordPress sites have structured data, because a plugin adds it. 30% of custom-built sites do, because someone had to decide to.

Six sites in the sample serve an empty HTML shell: the page is assembled entirely by JavaScript in the browser, so a crawler that does not run JavaScript, which is most AI crawlers, sees a blank document. Two of those six are hospitals.

Finding 4: the median homepage takes twelve seconds to paint on 4G

Speed was measured on a simulated slow-4G connection, because that is the connection a large share of Nepali visitors are on outside the valley, and because it is the profile Google's own tools use.

The median homepage weighs 3.1 MB and takes 12.2 seconds to paint its largest element. Ten sites in a hundred meet Google's 2.5-second threshold. More than half take longer than ten seconds. Nearly a third take longer than twenty. The heaviest homepage in the sample, a hotel, transfers 87 MB.

Median largest paint by sector on slow 4G (seconds)Median largest paint by sector on slow 4G (seconds)News & mediaNews & media: 3.2 s3.2 sIT companies & agenciesIT companies & agencies: 3.5 s3.5 sManufacturing & retailManufacturing & retail: 6.7 s6.7 sSchools & collegesSchools & colleges: 7.8 s7.8 sE-commerce & fintechE-commerce & fintech: 10.2 s10.2 sHospitals & clinicsHospitals & clinics: 11.7 s11.7 sTravel, trekking & airlinesTravel, trekking & airlines: 12 s12 sHotels & resortsHotels & resorts: 17.4 s17.4 sNGOs & non-profitsNGOs & non-profits: 20.9 s20.9 sBanks & financeBanks & finance: 21 s21 sGoogle's 2.5 s threshold
Median Largest Contentful Paint across ten homepages per sector, headless Chromium on a slow-4G profile, September 2026.
Sector Median paint (s) Under 2.5 s Median weight (MB) Median images (MB) Median requests
News & media 3.2 30% 3.5 1.5 135
IT companies & agencies 3.5 30% 1.6 0.5 97
Manufacturing & retail 6.7 11% 2.0 1.5 55
Schools & colleges 7.8 10% 2.2 1.0 90
E-commerce & fintech 10.2 10% 3.2 1.5 72
Hospitals & clinics 11.7 0% 2.2 1.4 93
Travel, trekking & airlines 12.0 0% 5.7 1.2 96
Hotels & resorts 17.4 0% 4.2 2.3 98
NGOs & non-profits 20.9 10% 4.6 2.9 95
Banks & finance 21.0 0% 6.1 1.6 114

The causes are the ones I keep finding on individual sites, now with proportions attached:

  • Images. On 46% of sites, images are more than half of everything downloaded. The median site ships 1.4 MB of images to a phone screen.
  • Third-party scripts. The median homepage loads 7 scripts from other domains; hotels load 21. Chat widgets, heatmaps, social feeds, and analytics tools that nobody reads.
  • Weight in general. 52% of homepages are over 3 MB; 36% are over 5 MB. On 1.6 Mbps, 5 MB is 25 seconds of download before anything else goes wrong.
  • Layout shift. 27% of sites move their content around by more than Google's "poor" threshold while loading, which is the effect of images and adverts without reserved space.

Custom-built sites are the slowest group, with a median paint of 16.5 seconds against 8.3 for WordPress, 7.0 for Laravel and 6.7 for Next.js. Custom does not mean fast; it means nobody imposed defaults.

What this means for a business in Nepal

The gap between the sample and "ready" is smaller than the numbers suggest, because most failures are defaults nobody changed.

  1. Check robots.txt today, with a cache-busting parameter, not through a dashboard. If a Cloudflare managed block is there, it is one setting. How to get cited by ChatGPT and Perplexity walks through the rest of the entity work.
  2. Add an Organization schema and a meta description. An afternoon's work on any CMS, and it lifts a site from the bottom half of the sample into the top third.
  3. Fix images first, scripts second. Resize, convert to WebP or AVIF, and delete every third-party script whose data nobody looked at last month. This is where most of the twelve seconds goes. The technical SEO checklist has the order.
  4. If the page is empty without JavaScript, that is a rebuild conversation, not a tweak. Why sites do not rank covers what a crawler actually sees.
  5. Then, and only then, the AI-specific layer: self-contained answers to the questions customers ask, FAQ schema on the same text, llms.txt. That is the AEO and GEO work, and it is pointless on a site that fails the first four.

The difference between SEO, AEO and GEO is the framing for all of this. The study says most Nepali sites have not finished the SEO layer yet, and that the ones which have are mostly in two sectors.

Method, limits, and the data

  • 100 homepages, 10 per sector, tested 14 September 2026 from Kathmandu.
  • Checks on robots.txt, HTML and sitemap.xml used plain HTTP fetches with a desktop browser user agent.
  • Speed was measured once per site in headless Chromium on a 412-pixel mobile viewport, emulating 1.6 Mbps down, 150 ms round-trip latency and a four-times CPU slowdown, the same slow-4G profile Lighthouse uses. Largest Contentful Paint and layout shift were read from the browser's performance observer. Twenty-five sites did not fire their load event within the measurement window; their paint times are what had rendered by then.
  • Single runs are noisy for any one site. Sector medians across ten sites are the unit of comparison, and no individual site is scored or named.
  • Five candidate sites were replaced during the sweep: two parked or under construction, three behind a firewall that rejects non-browser requests.
  • The check script is open, and the anonymised sector-level data is available to any journalist or researcher who asks.

I intend to repeat this in September 2027. If the one-in-a-hundred number moves, it will be because the defaults changed, and that is something an agency, a CMS vendor or a hosting company in Nepal could do this year.

If you want the same sweep run on your own site, with the failures ranked by what they cost you, that is the GEO audit.

Questions

Which websites did you test, and why are none named?

One hundred public business homepages, ten in each of ten sectors: banks, hospitals, schools and colleges, hotels, travel and airlines, e-commerce and fintech, manufacturing and retail, news and media, NGOs, and IT companies. Results are reported as sector medians and percentages only. Naming businesses would turn a study into a league table, and the point is the pattern, not the individuals.

How was speed measured?

Each homepage was loaded once in a real Chromium browser emulating a mid-range phone on a slow 4G profile: 1.6 Mbps down, 150 ms latency, and a four-times slower CPU, the same profile Lighthouse uses. Largest Contentful Paint was read from the browser's own performance observer. Single runs are noisy for any one site, which is why the post reports medians across ten sites per sector rather than individual scores.

Can I check my own site against these numbers?

Yes, and the first three checks take five minutes. Open your robots.txt and look for GPTBot, ClaudeBot or a Cloudflare managed block. View your homepage source and search for application/ld+json. Run PageSpeed Insights on the mobile tab and read Largest Contentful Paint. If you would like the same sweep run on your site with the fixes prioritised, that is what the GEO audit is for.

GEOAI SearchResearchCore Web VitalsNepalStructured Data

Let's talk about your project.

Tell me what you're trying to build or fix. I'll tell you honestly whether I'm the right person for it, and what it would take.

Kathmandu, Nepal · Asia/Kathmandu (UTC+5:45) · Typically replies within 24 hours