# Essential Beauty and Hair: Agent-Direct Score D (49.2%)

Site: https://www.essentialbeautyandhair.co.za/
Report: https://directindex.org/r/essentialbeautyandhair.co.za
Scanned: 2026-10-24 (Provisional, with the action test and the assistant citation check still to come. The hatched part of the bar isn't measured yet.)
Essential Beauty and Hair is hard for agents to use.
An AI assistant can open Essential Beauty and Hair's website. What Essential Beauty and Hair offers is in a PDF or an image, and assistants read those badly. It finds a phone number, but no link to book or order online.

## Direct links
- Menu: https://www.essentialbeautyandhair.co.za/wp-content/uploads/2026/10/Essential-Beauty-and-Hair-Pricelist-2026-Hair.pdf
- Phone: +27829329189
- Address: 4 Buffalo Rd, 1724, Roodepoort

## Nearby, also direct
Places near Essential Beauty and Hair that take a booking or an order on their own website, with no marketplace in between.
- Lash Barbie (2 km): https://directindex.org/r/lashbarbie.co.za
- Shampoo Unisex Hair Salon (2.6 km): https://directindex.org/r/shampoounisex.co.za

## What to fix first
- **No structured data for the business.** (+14 points) Add schema.org JSON-LD for the business (HairSalon, BeautySalon or the closest type, with name, address, telephone and openingHoursSpecification). Every assistant reads this block first, and the fix kit below has it filled in. Guide: https://directindex.org/guides/structured-data-restaurant
- **No online booking link on the website.** (+13 points) There's only a phone number or WhatsApp, and agents can't use those yet. If you take bookings or orders through a platform, link to it from the site so agents can find it. Add an online appointment page. Guide: https://directindex.org/guides/book-direct-on-your-own-website
- **Price list of services is a PDF.** (+3 points) Most agents skip PDFs or read them badly. Publish it as an HTML page and keep the PDF as a download. Guide: https://directindex.org/guides/menu-pdf-ai
- **No llms.txt.** (no points, but worth doing) Optional for now and cheap to add. It's a short text file that describes the business for language models. Guide: https://directindex.org/guides/llms-txt-for-a-business

## Fix kit: What to paste

Structured data (JSON-LD). Paste it as one block in the page's head, or in the builder's custom code box. Change anything that's wrong.

```html
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Essential Beauty and Hair",
  "url": "https://www.essentialbeautyandhair.co.za/",
  "telephone": "+27829329189",
  "address": "4 Buffalo Rd, 1724, Roodepoort",
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": -26.11998916,
    "longitude": 27.84275941
  }
}
</script>
```

llms.txt. Save as /llms.txt at the root of the site.

```
# Essential Beauty and Hair

> local business in 4 Buffalo Rd, 1724, Roodepoort, Johannesburg hairdressers and beauty salons. Phone +27829329189.

## Book or order directly

- Menu: https://www.essentialbeautyandhair.co.za/wp-content/uploads/2026/10/Essential-Beauty-and-Hair-Pricelist-2026-Hair.pdf

## About

- Website: https://www.essentialbeautyandhair.co.za/
- This file follows llms.txt (https://llmstxt.org): a short plain-text description for language models.
```

## Already right
- **robots.txt lets AI crawlers in.** No rule blocks the main AI user agents.
- **AI crawlers get the page.** GPTBot, ClaudeBot and PerplexityBot all got a normal response.

## Where it stands
295 of 649 in Johannesburg hairdressers and beauty salons. Top 45% of the sites scanned in this index.

| What the top 10% of the index does | Top 10% | This site |
|---|---|---|
| Take bookings or orders on their own domain | 91% | no |
| Publish the menu or price list as HTML | 19% | no |
| Let AI crawlers in (no block at the server or in robots.txt) | 97% | yes |
| Structured data with address, phone and hours | 18% | no |
| Have an llms.txt | 53% | no |

Nearest places in the index: Art of Beauty (F, 586 m, https://directindex.org/r/artofbeautyjhb.co.za); Hair by Jutta (F, 780 m, https://directindex.org/r/hairbyjutta.co.za); Pamperlang Skoonheid (F, 841 m, https://directindex.org/r/thebeautysalon.co.za); Ahavia Beauty (D, 1698 m, https://directindex.org/r/ahavia.co.za); Lash Barbie (F, 1968 m, https://directindex.org/r/lashbarbie.co.za); Shampoo Unisex Hair Salon (C, 2630 m, https://directindex.org/r/shampoounisex.co.za); Beauty Lush by Felicia (F, 3257 m, https://directindex.org/r/canva.site); Kimé Salon : Nails, Hair & Beauty (D, 3271 m, https://directindex.org/r/kimesalon.co.za); Signature Cosmetics and Fragrances (F, 3372 m, https://directindex.org/r/mydurable.com); Milani (B, 3373 m, https://directindex.org/r/milaniproducts.com).

## What assistants answer
The assistants haven't been asked about this business yet. They're asked about the top-ranked businesses in each city index, and about any business as soon as it's claimed. Claim this page to be included.

The assistants were asked 12 everyday questions about Johannesburg hairdressers and beauty salons and named 54 places. Essential Beauty and Hair wasn't one of them. See who was named: https://directindex.org/city/johannesburg-salons/recommended


Compared with its peers: Sites built with WordPress 55% (24% A or B, 251601 sites); This site 49.2%.

See what an AI agent reads on this site: https://directindex.org/r/essentialbeautyandhair.co.za/agent-view

## Businesses like Essential Beauty and Hair in Johannesburg hairdressers and beauty salons

| Group | Sites | Avg score | A or B | This site |
|---|---|---|---|---|
| Businesses of the same kind in Johannesburg hairdressers and beauty salons | 649 | 46% | 13% | 49.2% |
| Sites built with WordPress in Johannesburg hairdressers and beauty salons | 308 | 53% | 18% | 49.2% |

The best of the sites built with WordPress in Johannesburg hairdressers and beauty salons: Eden Spa at The Wesley (A 90.8%, https://directindex.org/r/thewesley.co.za); Life Day Spa (A 90.8%, https://directindex.org/r/lifedayspa.co.za); Life Day Spa Aspen Hills (A 90.8%, https://directindex.org/r/lifedayspa.co.za); Life Day Spa Rosebank (A 90.8%, https://directindex.org/r/lifedayspa.co.za); Revive Kids Spa and Party Venue (A 90.8%, https://directindex.org/r/revivewellnessspasa.co.za).

With the three fixes above (No structured data for the business; No online booking link on the website; Price list of services is a PDF), the score would be about 95.4%, which would be first of 649 in Johannesburg hairdressers and beauty salons.

## The direct record
What agents get for Essential Beauty and Hair, as JSON: https://directindex.org/api/direct/essentialbeautyandhair.co.za
- Book: none on record
- Order: none on record
- Menu: https://www.essentialbeautyandhair.co.za/wp-content/uploads/2026/10/Essential-Beauty-and-Hair-Pricelist-2026-Hair.pdf (pdf; from the scan)
- Hours: none on record
- Phone: +27829329189
- Stable links that count: https://directindex.org/go/essentialbeautyandhair.co.za/menu

## Can an agent transact?
Measured, not scored (the score stays at spec v1.0).
- UCP profile (/.well-known/ucp, Google and Shopify's Universal Commerce Protocol): no
- ACP discovery document (/.well-known/acp.json, OpenAI and Stripe's Agentic Commerce Protocol): no
- MCP server card (/.well-known/mcp/server-card.json): no
- Ordering vendor that takes agent orders (Square, Toast, or a vendor whose terms allow agents): no

## Score breakdown
| Component | Points | Available |
|---|---|---|
| Reachable | 25 | 25 |
| Readable | 5 | 25 |
| Actionable | 2 | 15 (the action test: pending) |
| Cited | 0 | 0 (the assistant citation check: pending) |

## Agent readiness (Cloudflare)
Level 1 of 5, Basic Web Presence. Cloudflare's report: https://isitagentready.com/essentialbeautyandhair.co.za
- Link headers on the homepage: no (how: https://isitagentready.com/.well-known/agent-skills/link-headers/SKILL.md)
- sitemap.xml: yes
- AI bot rules in robots.txt: yes
- Content Signals in robots.txt: no (how: https://isitagentready.com/.well-known/agent-skills/content-signals/SKILL.md)
- Markdown on Accept: text/markdown: no (how: https://isitagentready.com/.well-known/agent-skills/markdown-negotiation/SKILL.md)
- llms.txt: no (how: https://isitagentready.com/.well-known/agent-skills/llms-txt/SKILL.md)
- API catalog (RFC 9727): no (how: https://isitagentready.com/.well-known/agent-skills/api-catalog/SKILL.md)
- MCP server card: no (how: https://isitagentready.com/.well-known/agent-skills/mcp-server-card/SKILL.md)
- A2A agent card: no (how: https://isitagentready.com/.well-known/agent-skills/a2a-agent-card/SKILL.md)
- Agent Skills index: no (how: https://isitagentready.com/.well-known/agent-skills/agent-skills/SKILL.md)
- OAuth or OIDC discovery: no (how: https://isitagentready.com/.well-known/agent-skills/oauth-discovery/SKILL.md)
- OAuth protected resource metadata: no (how: https://isitagentready.com/.well-known/agent-skills/oauth-protected-resource/SKILL.md)
- auth.md: no (how: https://isitagentready.com/.well-known/agent-skills/auth-md/SKILL.md)
- Web Bot Auth key directory: no (how: https://isitagentready.com/.well-known/agent-skills/web-bot-auth/SKILL.md)
- ARD capability manifest: no (how: https://isitagentready.com/.well-known/agent-skills/ard/SKILL.md)
- DNS-AID records: no (how: https://isitagentready.com/.well-known/agent-skills/dns-aid/SKILL.md)
- WebMCP tools on the page: no (how: https://isitagentready.com/.well-known/agent-skills/webmcp/SKILL.md)
- JSON-LD for the business: no

Keep watching this business (https://directindex.org/r/essentialbeautyandhair.co.za/plan): the assistants are asked again every month, and you see what changed. 2 EUR a month or 19 EUR a year.
Deep report: https://directindex.org/r/essentialbeautyandhair.co.za/deep. Ten questions phrased the way people ask them, each assistant's full answer, the eight nearest similar places, the fix plan and a PDF. 5 EUR, paid once. Reading and scanning stay free. These few euros pay for the questions sent to the assistants and for the servers.
Methodology: https://directindex.org/methodology · Rescan now: https://directindex.org/scan?url=essentialbeautyandhair.co.za&force=1
