sideloot.coscanned Aug 20, 2026 · 11:030.92s
Public AI visibility report

sideloot.coAI visibilityNeeds Work

This site has a useful foundation, but important gaps still limit AI readability.

Key strengths include homepage access and sitemap, while plain-text page access and structured data need attention.

Recommended next step

add content negotiation for Accept: text/markdown on the homepage and return a markdown representation with Content-Type: text/markdown.

Keep the HTML response for regular browser requests.

Overall score

51/100
Needs Work

What happens next

Monitor this score as your site changes

Weekly checks catch robots, sitemap, schema, and content regressions before AI systems stop reusing your pages.

Monitor changes
Download PDF
Go to fixesOverall position1,115 out of 2,155Leaderboard

// score breakdown

Points by check

8 checks

Crawlability20/20
Robots.txt7.5/15
llms.txt7.5/15
Sitemap10/10
Markdown support0/15
Semantic HTML5.7/10
Structured data0/10
Content signals0/5
2pass3warn3fail

Public link

llmscan.dev/scan/53C3CctmhW7BsxFtnfEQ3

Signals checked

8 AI visibility signals

Fix bundle

4 copy-ready files

Share badge

Needs Work · 51/100

Add a polished proof badge

A compact badge for footer, press, or trust sections that links visitors to this public report.

Embed codellmscan.dev/scan/53C3CctmhW7BsxFtnfEQ3
<a href="https://www.llmscan.dev/scan/53C3CctmhW7BsxFtnfEQ3"
  target="_blank"
  rel="noopener"
>
  <img
    src="https://www.llmscan.dev/scan/53C3CctmhW7BsxFtnfEQ3/badge.png"
    alt="LLM Scan AI visibility score badge"
    width="460"
    height="120"
    style="width: 260px; max-width: 100%; height: auto;"
  />
</a>
Open badge
L
LLM Scan
Needs Work
Score
51/100

Share your score

Post the public report with: “We scored 51/100 for AI-readability.”

Download fixes

Grab generated files and implementation notes for the highest-impact gaps.

Rescan weekly

Save this domain to catch regressions after content, sitemap, or robots changes.

Monitor weekly

// signal breakdown

8 signals AI systems depend on

The homepage resolves, connects, returns HTTP 200 OK, exposes a canonical URL, and is not blocked by robots.txt.

Signal weight

20/20
Pass

Evidence

url
https://sideloot.co/
finalUrl
https://sideloot.co/
status
200

The robots.txt file was found, but it contains formatting issues.

Signal weight

8/15
Warn

Evidence

robotsTxtUrl
https://sideloot.co/robots.txt
exists
true
rawRobotsTxt
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> <!-- Belt-and-suspenders cache headers so browsers never reuse a previous Vite client build. Without these we periodically hit "module does not provide an export named 'createHotContext'" because the browser kept an older /@vite/client around. --> <meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="0" /> <!-- SEO + social cards. The <title> shows in the browser tab, in Google results, and (with og:title) when the link is pasted in iMessage, Slack, Discord, etc. The og:image is what shows up as the big preview thumbnail — keep it close to 1200x630 so every platform crops it cleanly. --> <title>Your side business. 100% run by AI.</title> <meta name="description" content="SideLoot builds your side business, runs it, and turns it into cash. Welcome to the era of autonomous AI companies — earning while you sleep." /> <link rel="canonical" href="https://sideloot.co/" /> <meta name="theme-color" content="#1a1b22" /> <!-- Open Graph (Facebook, LinkedIn, iMessage, Slack, …) --> <meta property="og:type" content="website" /> <meta property="og:site_name" content="SideLoot" /> <meta property="og:url" content="https://sideloot.co/" /> <meta property="og:title" content="Your side business. 100% run by AI." /> <meta property="og:description" content="SideLoot builds your side business, runs it, and turns it into cash. Welcome to the era of autonomous AI companies — earning while you sleep." /> <!-- og:image points at sideloot_intro.png — the new preview image placed in assets/myasset. Served from the CDN at sideloot.co. --> <meta property="og:image" content="https://sideloot.co/assets/myasset/sideloot_intro.png" /> <meta property="og:image:secure_url" content="https://sideloot.co/assets/myasset/sideloot_intro.png" /> <meta property="og:image:type" content="image/png" /> <meta property="og:image:alt" content="SideLoot — autonomous AI side business" /> <meta property="og:locale" content="en_US" /> <!-- Twitter / X large summary card --> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Your side business. 100% run by AI." /> <meta name="twitter:description" content="SideLoot builds your side business, runs it, and turns it into cash. Welcome to the era of autonomous AI companies — earning while you sleep." /> <meta name="twitter:image" content="https://sideloot.co/assets/myasset/sideloot_intro.png" /> <meta name="twitter:image:alt" content="SideLoot — autonomous AI side business" /> <link rel="icon" type="image/jpeg" href="/assets/myasset/logo_sideloot_navigateur.jpg" /> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> <link href="https://fonts.googleapis.com/css2?family=Silkscreen&family=VT323&family=JetBrains+Mono:wght@400;500;600&display=swap" rel="stylesheet" /> <!-- Pre-boot kill switch. Runs BEFORE any module loads so a stale service worker or cached Vite client is wiped out before the first import lands. If we actually find and kill anything, we reload once with a `_swkilled` marker so the next load is clean. This is what prevents the recurring "module does not provide an export named 'X'" loop. --> <script> (async function preBoot() { try { let killed = false; if ("serviceWorker" in navigator) { const regs = await navigator.serviceWorker.getRegistrations(); for (const r of regs) { try { await r.unregister(); killed = true; } catch (_) {} } } if (window.caches && caches.keys) { const keys = await caches.keys(); for (const k of keys) { try { await caches.delete(k); killed = true; } catch (_) {} } } if (killed && !location.search.includes("_swkilled")) { const u = new URL(location.href); u.searchParams.set("_swkilled", "1"); location.replace(u.toString()); } } catch (_) { // best-effort; never block boot } })(); </script> <script> !function(t,e){var o,n,p,r;e.__SV||(window.posthog && window.posthog.__loaded)||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.crossOrigin="anonymous",p.async=!0,p.src=s.api_host.replace(".i.posthog.com","-assets.i.posthog.com")+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="$i ji init en nn Ar tn an Yi capture calculateEventProperties dn register register_once register_for_session unregister unregister_for_session gn getFeatureFlag getFeatureFlagPayload getFeatureFlagResult isFeatureEnabled reloadFeatureFlags updateFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSurveysLoaded onSessionId getSurveys getActiveMatchingSurveys renderSurvey displaySurvey cancelPendingSurvey canRenderSurvey canRenderSurveyAsync mn identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset setIdentity clearIdentity get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException addExceptionStep captureLog startExceptionAutocapture stopExceptionAutocapture loadToolbar get_property getSessionProperty fn hn createPersonProfile setInternalOrTestUser pn Ji opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing get_explicit_consent_status is_capturing clear_opt_in_out_capturing un debug Dr vn getPageViewId captureTraceFeedback captureTraceMetric Zi".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]); posthog.init('phc_yLbYwTGzKg3sSgrmUKJWL7GFHBUd7RG5tWjcAUwLyWkD', { api_host: 'https://eu.i.posthog.com', defaults: '2026-05-30', person_profiles: 'identified_only', }) </script> <script type="module" crossorigin src="/assets/index-BkeGuYus.js"></script> <link rel="modulepreload" crossorigin href="/assets/phaser-BbgW2pkj.js"> <link rel="modulepreload" crossorigin href="/assets/react-DTscnwv3.js"> <link rel="stylesheet" crossorigin href="/assets/index-CQd2BK5y.css"> </head> <body> <div id="root"></div> </body> </html>

Recommendation

Next step: Fix robots.txt syntax issues so each rule uses Field: value format, directives appear under a User-agent, and Sitemap entries use absolute URLs.

The llms.txt file exists but is missing one or more expected quality signals.

Signal weight

8/15
Warn

Evidence

llmsTxtUrl
https://sideloot.co/llms.txt
present
true
accessible
true

Recommendation

Next step: Publish /llms.txt as text or markdown with more than 200 characters, markdown headings, and at least one absolute URL.

The sitemap.xml file is valid and contains URL entries.

Signal weight

10/10
Pass

Evidence

sitemapUrl
https://sideloot.co/sitemap.xml
sitemapUrls
[https://sideloot.co/sitemap.xml]
robotsSitemapUrls
[]

The homepage returned HTML when requested with Accept: text/markdown, so the server appears to ignore markdown content negotiation.

Signal weight

0/15
Fail

Evidence

url
https://sideloot.co/
acceptHeader
text/markdown
status
200

Recommendation

Next step: Add content negotiation for Accept: text/markdown on the homepage and return a markdown representation with Content-Type: text/markdown. Keep the HTML response for regular browser requests.

The homepage has some semantic HTML signals, but one or more title, metadata, heading, landmark, content, or link text checks need improvement.

Signal weight

6/10
Warn

Evidence

url
https://sideloot.co/
quality
partial
score
57

Recommendation

Next step: Add exactly one h1 element that describes the page topic. Add missing semantic elements: main, article, nav, footer. Add visible body copy after script and style removal so the page has at least 200 words.

No JSON-LD, Microdata, or RDFa structured data was found on the page.

Signal weight

0/10
Fail

Evidence

url
https://sideloot.co/
quality
none
hasStructuredData
false

Recommendation

Next step: Add JSON-LD structured data with Organization or WebSite schema so AI systems can identify the site owner or website entity.

Content-Signal directive not detected in headers, HTML metadata, or robots.txt.

Signal weight

0/5
Fail

Evidence

url
https://sideloot.co/
hasContentSignals
false
hasContentSignalHeader
false

Recommendation

Next step: Add the standard directive 'Content-Signal: ai-train=no, search=yes, ai-input=yes' to robots.txt, HTML metadata, or HTTP headers so AI systems can discover content usage preferences.

What happens next

Keep watching this score

Scores move when sites and models change. This one was measured once, on Aug 20, 2026.

Watch weekly

// generated fixes

Downloadable fix files

Preview the generated files below. Enter your email to reveal the full fixes, download the bundle, or copy the agent-ready implementation prompt.

Done-for-you

Agency package

Not sure how to ship the technical fixes? Book a call and we can help turn this report into implemented updates.

Fix planning from your scan

Implementation guidance

AI visibility monitoring

llms.txtMarkdown
# Your side business. 100% run by AI. > SideLoot builds your side business, runs it, and turns it into cash. Welcome to the era of autonomous AI companies — earning while you sleep. This llms.txt file summarizes the public, canonical resources that AI assistants and crawlers should use to understand this site. ## Site Overview - Canonical URL: https://sideloot.co/- Site type: website
robots.txtTXT
# robots.txt additions# Copy these blocks into the existing robots.txt file. Keep current rules unless a note calls out a conflicting Disallow. # Sitemap discovery# Add this top-level directive so search and AI crawlers can discover the canonical sitemap.Sitemap: https://sideloot.co/sitemap.xml # AI crawler access# Add explicit Allow rules for AI crawlers so public content permissions are clear.User-agent: GPTBot
schema.jsonJSON
{  "@context": "https://schema.org",  "@graph": [    {      "@type": "Organization",      "@id": "https://sideloot.co/#organization",      "name": "Your side business. 100% run by AI.",      "description": "SideLoot builds your side business, runs it, and turns it into cash. Welcome to the era of autonomous AI companies — earning while you sleep.",      "url": "https://sideloot.co/",
head metaHTML
# Content-Signal recommendations Use these directives to make AI-use preferences explicit for compliant crawlers and AI systems. They are advisory signals, so keep them aligned with robots.txt, terms, and access controls. ## Recommended values - ai-train=no: AI model training, fine-tuning, and dataset creation.- search=yes: AI search indexing, snippets, and discovery.- ai-input=yes: AI answer grounding, retrieval, and generated-response context.

What happens next

Monitor this score as your site changes

Weekly checks catch robots, sitemap, schema, and content regressions before AI systems stop reusing your pages.

Watch weekly

Related scans

Similar AI visibility reports

Browse leaderboard