kafindustries.com — llms.txt & GEO score
An index of pages, not of content
kafindustries.com publishes a curated llms.txt — 16 links across 3 sections, 5.6 KB in all.
Every link carries a description, averaging 110 characters — long enough to tell a model which page answers a question without opening all of them first.
The clearest gap is points at clean markdown copies. Right now: 0 of 16 end in .md or .txt (0%, detected by file extension). Closing it is worth 10 points.
What it does well
- Every link carries a description 16 of 16 described (100%)
- Descriptions say something concrete Average 110 characters across 16 described links
- Descriptions add to the title No description merely repeats its title
- A workable number of links 16 links (12–50 is the sweet spot)
What is missing
- Points at clean markdown copies +10 0 of 16 end in .md or .txt (0%, detected by file extension)
- Link titles are descriptive +4 7 weak titles (bare URLs, “here”, one-word labels)
- Grouped into balanced sections +3 3 H2 sections, largest group holds 16 of 16 links
- Publishes llms-full.txt +3 No llms-full.txt alongside the index
Among the 22 sites measured here so far, kafindustries.com ranks 11th, against a median of 71. That comparison moves as new sites are scanned — it is a snapshot of this list, not of the web.
What kafindustries.com tells an assistant
KAF Industries
KAF Industries is an Istanbul-based industrial trading and sourcing company with nearly 50 years of combined sector experience. It operates six business groups: cryogenic equipment (sales of new and used tanks, repair, maintenance, refurbishment and rental), industrial and specialty gases (trading and supply partner, not a producer), steel (authorized Türkiye sales representative of DKC Stainless of South Korea for hot-rolled stainless plates; carbon steel; project-based dished head coordination), textile (the Tekstil A.S. family), international trade and sourcing (calcium carbide, perlite, selected chemicals, project-based sourcing) and business advisory. KAF Industries is not a manufacturer; it is a trading, supply and coordination partner.
Content & links
Can a model pick the right page, first time?
7 of 11 checks pass. What is left: points at clean markdown copies, link titles are descriptive, skippable links marked Optional and list items are markdown links.
-
Every link carries a description 16 of 16 described (100%)10/10
-
Descriptions say something concrete Average 110 characters across 16 described links7/7
-
Descriptions add to the title No description merely repeats its title4/4
-
Points at clean markdown copies 0 of 16 end in .md or .txt (0%, detected by file extension)0/10
-
Link titles are descriptive 7 weak titles (bare URLs, “here”, one-word labels)0/4
-
A workable number of links 16 links (12–50 is the sweet spot)4/4
-
Skippable links marked Optional Nothing is marked as skippable0/3
-
No duplicate links All 16 URLs are distinct2/2
-
List items are markdown links 7 of 23 list items are plain text, not links2/4
-
Enough written detail per link 45 words per link across 727 words3/3
-
Links are absolute URLs All 16 links are absolute URLs1/1
Structure
Does it follow the llms.txt shape?
5 of 7 checks pass. What is left: summary is a usable length and grouped into balanced sections.
-
Exactly one H1 project title “KAF Industries”3/3
-
Summary directly under the title Present as a blockquote3/3
-
Summary is a usable length 752 characters — too long0/3
-
Concrete language, not marketing filler No marketing filler detected3/3
-
Grouped into balanced sections 3 H2 sections, largest group holds 16 of 16 links1/4
-
Conforms to the published grammar Markdown only, headings used as the spec defines them2/2
-
Section names say what is inside All 3 headings are descriptive2/2
Discovery & access
Can an assistant reach it, and is it allowed to?
All 5 checks pass in this group.
-
At the root of the domain you typed Found at the standard /llms.txt path2/2
-
Sent as plain text Content-Type: text/plain1/1
-
robots.txt exists 71 B of crawler rules1/1
-
AI crawlers are not blocked No AI user-agent is disallowed at the root6/6
-
robots.txt points at a sitemap A Sitemap: line is declared1/1
Search-engine basics
What a crawler reads from your homepage today
All 6 checks pass in this group.
-
Homepage title is the right length 51 characters, from title2/2
-
Title is not padded or repetitive No repeated terms1/1
-
Homepage has a meta description 160 characters, from meta description2/2
-
Canonical URL declared https://kafindustries.com/1/1
-
Language declared lang="en"1/1
-
Social card image og:image is set1/1
Depth & upkeep
Is there more than the index, and is it current?
3 of 5 checks pass. What is left: publishes llms-full.txt and the index points at the full file.
-
Publishes llms-full.txt No llms-full.txt alongside the index0/3
-
The index points at the full file No llms-full.txt exists to link to0/1
-
Index is a sensible size 5.6 KB2/2
-
Server reports when it last changed Server sends Last-Modified1/1
-
The index is kept current 61 days old2/2
What kafindustries.com should fix next
Ordered by what each one is worth. Open a row for the steps.
-
Right now: 0 of 16 end in .md or .txt (0%, detected by file extension)
Publish a .md version of each page and link to that. The single biggest win here: the model reads your content instead of your navigation and footer.
Where: Your CMS or docs build — this is the biggest single win here
- Publish a .md version of each page you link to, at a predictable URL (page.md next to page).
- Point the llms.txt links at the .md copies, not at the HTML pages.
- Strip navigation, cookie banners and footers from the markdown — that is the whole point: the model reads your content instead of your chrome.
- Declare the pair in your HTML with a link relation so clients can find it without guessing.
In your file
line 12- [Business Groups](https://kafindustries.com/business-groups/): Overview of all six business groups
- [Business Groups](https://kafindustries.com/business-groups.md): Overview of all six business groups
line 13- [Cryogenic Equipment](https://kafindustries.com/business-groups/cryogenics/): New and used cryogenic tanks, repair and refurbishment, rental of tanks, trailers and ISO containers
- [Cryogenic Equipment](https://kafindustries.com/business-groups/cryogenics.md): New and used cryogenic tanks, repair and refurbishment, rental of tanks, trailers and ISO containers
line 14- [Gases](https://kafindustries.com/business-groups/gases/): Industrial gases, specialty and high-purity gases, CO2, nitrous oxide; international supply partner
- [Gases](https://kafindustries.com/business-groups/gases.md): Industrial gases, specialty and high-purity gases, CO2, nitrous oxide; international supply partner
Placeholders in { } are yours to write — we do not invent text about your pages.
-
Right now: 7 weak titles (bare URLs, “here”, one-word labels)
Replace bare URLs and “click here” with the page’s real name — the title is half the signal.
Where: The "[Title]" part of each link
- Replace bare URLs, "here", "click here" and one-word labels with the page’s real name.
- The title is half the signal — a model reads it before it reads your description.
In your file
line 11- [Home](https://kafindustries.com/): Company overview, six business groups, FAQ
- [{the page’s real name}](https://kafindustries.com/): Company overview, six business groups, FAQline 14- [Gases](https://kafindustries.com/business-groups/gases/): Industrial gases, specialty and high-purity gases, CO2, nitrous oxide; international supply partner
- [{the page’s real name}](https://kafindustries.com/business-groups/gases/): Industrial gases, specialty and high-purity gases, CO2, nitrous oxide; international supply partnerline 15- [Steel](https://kafindustries.com/business-groups/steel/): DKC Stainless authorized representation, hot-rolled stainless plates in wide and custom dimensions, carbon steel, dished heads
- [{the page’s real name}](https://kafindustries.com/business-groups/steel/): DKC Stainless authorized representation, hot-rolled stainless plates in wide and custom dimensions, carbon steel, dished headsPlaceholders in { } are yours to write — we do not invent text about your pages.
-
Right now: 3 H2 sections, largest group holds 16 of 16 links
Group links under headings a reader would look for, and spread them — one group holding most of the file is the same as no grouping.
Where: The "## " headings in llms.txt
- Split the link list into at least five "## " groups by what a reader would be looking for.
- Typical split: Docs, API, Guides, Product, Company, Optional.
- Grouping is what lets a model skip nine tenths of the file and still find the right page.
Instead of## Links - [A](...) - [B](...) - [C](...)
Do this## Docs - [A](...) ## API - [B](...) ## Optional - [C](...)
-
Right now: No llms-full.txt alongside the index
Generate an llms-full.txt that inlines every linked page. Community convention rather than spec, but assistants with a large context window take the whole thing in one request.
Where: Your docs build, output at /llms-full.txt
- Concatenate the markdown of every page listed in llms.txt into one file.
- Keep the heading structure: a client uses those headings to navigate a multi-megabyte file.
- Regenerate it in the same build step that publishes the docs, so it cannot drift.
- Note that llms-full.txt is a community convention, not part of the proposal — useful, but optional.
-
Right now: Nothing is marked as skippable
Move the nice-to-haves under ## Optional so a model on a tight budget knows what to drop first.
Where: A new "## Optional" section at the end of llms.txt
- Move the nice-to-have links — history, press, careers — under "## Optional".
- By convention a client may skip that whole section when context is tight.
- This is you deciding what gets dropped first, instead of the model guessing.
Do this## Optional - [Company history](https://acme.example/about.md): Background, not needed to answer product questions
-
Right now: 752 characters — too long
Aim for 80–350 characters: one or two sentences that make sense read aloud on their own.
Where: The "> " line in llms.txt
- Aim for 80–350 characters: one or two sentences that stand on their own when read aloud.
- Under 80 and it says nothing specific; over 350 and a model summarises your summary.
- Cut adjectives first — they are the part that carries no information.
-
Right now: 7 of 23 list items are plain text, not links
A file list needs `- [Title](url): description`. A plain line gives a model something to read but nowhere to go — it cannot follow it, quote it, or check it.
Where: Every "- " line in llms.txt
- Turn each plain line into a markdown link: "- [Title](https://your-site/page.md): description".
- A line without a URL gives a model something to read but nowhere to go — it cannot follow, quote or verify it.
- If a fact has no page behind it (an address, a phone number), put it in the free-text body above the sections, not in a file list.
- Note that "#" is a heading in markdown, not a comment — lines starting with # become H1/H2 headings.
In your file
line 36- KAF Industries sells and rents both new and used cryogenic tanks; every used tank is inspected for vacuum condition, service history, pressure class and code compliance before sale.
- [KAF Industries sells and rents both new and used cryogenic tanks; every used tank is inspected for vacuum condition, service history, pressure class and code compliance before sale.]({https://your-site/path}.md): {what this page covers}line 37- KAF Industries is the authorized sales representative of DKC Stainless (South Korea) in Türkiye; DKC specializes in hot-rolled stainless steel plates, ordered mill-direct in project-specific and wide dimensions.
- [KAF Industries is the authorized sales representative of DKC Stainless (South Korea) in Türkiye; DKC specializes in hot-rolled stainless steel plates, ordered mill-direct in project-specific and wide dimensions.]({https://your-site/path}.md): {what this page covers}line 38- KAF Industries supplies dished heads (elliptical and torispherical) as a production coordinator working with qualified manufacturers, not as a manufacturer.
- [KAF Industries supplies dished heads (elliptical and torispherical) as a production coordinator working with qualified manufacturers, not as a manufacturer.]({https://your-site/path}.md): {what this page covers}Placeholders in { } are yours to write — we do not invent text about your pages.
-
Right now: No llms-full.txt exists to link to
Mention llms-full.txt inside llms.txt. Guessing the filename works often enough to be tempting and not often enough to rely on.
Where: Inside llms.txt
- Mention the full file in llms.txt itself, as a link or a line of context.
- Guessing the filename works often enough to be tempting and not often enough to rely on.
Do thisFull inlined text: https://acme.example/llms-full.txt
This score is Devsly’s own heuristic, not an official standard — llms.txt has no scoring body. It measures how well a file serves an AI assistant, and it does not predict whether any assistant will cite the site. The reading is a snapshot from 21 September 2026; run it again for the current state, or check a different site.
Other recently scored sites
Every scan that finds an llms.txt gets a score card. Cards link back to the full report here, not out to the site.