Skip to content
SEO · Section 23 · May 2026

SEO research & execution playbook for eatcookjoy.com & stackbirds.xyz.

The full AI-driven SEO file for both brands — keyword maps, technical audit, schema, content plan, local SEO, link-building, AI workflows, a 90-day execution plan, and a KPI dashboard. Written so a single operator can run it solo with Claude, ChatGPT, Perplexity, Ahrefs/SEMrush and Search Console.

2 Domains 120+ Keywords 28 Audit Checks 9 AI Workflows 90-Day Plan 12 KPIs
Primary Market: UAE + GCC (eatcookjoy.com), Global B2B (stackbirds.xyz) Coverage: 14 sections · 120+ keywords · 9 AI workflows Updated: May 2026
01 · Executive Summary

Two domains, one operator, one AI stack.

eatcookjoy.com is a UAE-first private-chef marketplace fighting for local "private chef dubai" intent. stackbirds.xyz is the technology & brand studio that ships those sites. Both need organic traffic; neither has the budget for a 5-person SEO team. This is the playbook that closes that gap with AI.

Brand 01 · Marketplace

eatcookjoy.com

https://eatcookjoy.com/ · UAE entity launching June 2026

Private-chef marketplace operating EatCookJoy UAE under master license from EatCookJoy Inc. (Delaware). Primary commercial site for the Gulf market. SEO goal: own the "private chef Dubai / Abu Dhabi" intent within 9 months, then expand to recipe-driven informational traffic.

UAE
Primary Geo
Local
Intent Type
12
Priority Pages
100
Recipe URLs Planned
Brand 02 · Studio

stackbirds.xyz

https://stackbirds.xyz/ · Aziz Saif technology & brand studio

The studio behind eatcookjoy.com, azizsaif.com and 20+ other brand sites. SEO goal: rank for "AI-powered web design / brand studio Dubai" commercial intent, plus build a case-study moat that compounds via long-tail "how we built X" content and the Aziz Saif personal brand.

Global
Primary Geo
B2B
Intent Type
8
Priority Pages
20+
Case Studies
02 · Domain Profiles & Goals

What each domain is trying to win.

Two domains, two intents, two playbooks. The mistake is using one SEO strategy for both. Marketplace SEO is local + transactional; studio SEO is global + considered B2B. Different keywords, different schema, different links.

eatcookjoy.com — the marketplace

What it sells: in-home private chef sessions across the UAE — chef-to-your-kitchen meals, weekly meal-prep, dinner parties, kids' birthdays.

Audience: high-income UAE residents (AED 35K+ HHI), expat families in Dubai & Abu Dhabi, Emirati households, busy professionals. Search behaviour skews mobile, English-dominant with Arabic secondary, often "near me" intent.

SEO funnel:

  • TOFU (information): "what does a private chef cost in Dubai", "best meal prep dubai", "kids birthday menu ideas dubai".
  • MOFU (consideration): "private chef vs restaurant catering", "weekly meal prep service abu dhabi review", "best private chefs near me".
  • BOFU (conversion): "book private chef dubai", "hire chef dubai marina", "personal chef abu dhabi al reem".

9-month north star: 12K organic sessions/month, 280 organic chef-booking inquiries/month, 60+ first-page UAE keywords.

stackbirds.xyz — the studio

What it sells: AI-driven web design, brand identity, growth engineering and SEO done-for-you for SMB founders in the UAE, India and broader emerging-market diaspora.

Audience: founders and operators who need a credible brand site in 2–4 weeks (not 4 months), at SMB budgets. Search behaviour is research-heavy, deck/case-study driven, with strong "look first, contact second" pattern.

SEO funnel:

  • TOFU: "how to build a brand site with AI", "claude code for agencies", "AI SEO workflow 2026".
  • MOFU: "AI web design studio dubai", "fractional CMO for startups", "private-chef marketplace tech stack".
  • BOFU: "hire AI web designer dubai", "stackbirds pricing", "brand identity package dubai".

9-month north star: 3K organic sessions/month, 45 qualified leads/month, ranking top-3 for "AI brand studio dubai" and 8 case-study URLs in featured snippets.

Strategic Note

eatcookjoy.com is the volume play (consumer marketplace, hundreds of long-tail recipe URLs). stackbirds.xyz is the credibility play (small URL count, high-quality links, deep case studies). Do not blur them — cross-linking is fine, but each must have its own keyword universe, content calendar, and KPI dashboard.

03 · Technical SEO Audit

The 28-point technical health check.

Status labels reflect the assumed state for two brand-new / early-stage Next.js sites running on Vercel-class infra. Re-run via Screaming Frog + Search Console quarterly. Anything in red ships in week 1.

Crawl & indexability

robots.txt present OK

Allow all by default. Disallow only /admin, /api, /draft. Reference sitemap URL on the last line.

XML sitemap submitted OK

Auto-generated per-deploy. Submit in both Google Search Console and Bing Webmaster. Include lastmod on every URL.

Canonical tags VERIFY

Every page needs a self-referencing canonical. Watch for /?utm and /?ref drift on chef-share campaigns — strip those server-side before render.

hreflang (en / ar) PLAN

Phase 2 only. When Arabic launches, add x-default + en-AE + ar-AE pairs. Avoid until Arabic content is real, not auto-translated.

404 + 301 hygiene FIX W1

No 404 logging today. Wire Vercel Analytics → Slack on every 404. Build a /redirects.ts map any time a chef profile slug changes.

HTTPS & HSTS OK

Vercel/Cloudflare auto. Confirm HSTS preload on stackbirds.xyz and eatcookjoy.com — both should pre-load when stable.

Pagination & faceted nav VERIFY

Chef directory + recipe library will spawn /?cuisine=indian&area=marina combinations. Use canonical→parent + noindex on multi-facet URLs.

Page experience & Core Web Vitals

LCP < 2.5s TARGET

Hero image is the LCP element on both homepages. Preload, use next/image with priority, AVIF + WebP, 75% quality cap.

INP < 200ms TARGET

Lazy-load Stripe Connect and HubSpot widgets. Defer any third-party JS > 50KB to onLoad or user interaction.

CLS < 0.1 OK

All images have explicit width/height. Reserve space for the chef-availability widget so it doesn't push hero down.

Mobile-friendly OK

Tailwind responsive grid, 16px min font size, 44px tap targets. Re-test after every nav change.

JS payload < 200KB TARGET

Next.js app router + RSC for marketplace pages. Static export for studio case studies. Audit with `next bundle-analyzer` monthly.

Caching headers OK

Immutable /_next/static, 1-day for marketing pages, 5-min for chef availability JSON.

On-page elements (per template)

Title tags · 50–60 chars REWRITE

Pattern: Primary Keyword · Modifier — Brand. Avoid stuffing. Use AI workflow #2 below.

Meta descriptions · 140–160 REWRITE

One unique CTA per page. Include city for UAE pages, outcome for studio pages.

One H1 per page OK

Verified in current templates. H2/H3 hierarchy clean.

Image alt text REWRITE

Every chef / dish image needs descriptive alt. AI workflow #4 batches alt-text generation from EXIF + page context.

Internal links · 3+ per page OK

Each page links to ≥3 sibling pages with descriptive anchors. Avoid "click here".

Breadcrumbs ADD

Add BreadcrumbList schema + visible breadcrumbs to chef-detail, recipe-detail, case-study pages.

Structured data

Organization + LocalBusiness ADD W1

Required for both domains. Add to root layout. See schema templates in section 08.

Recipe schema (eatcookjoy) ADD W2

All 100 recipes need full Recipe schema — fuels Google rich results and AI Overviews.

Service + Offer (eatcookjoy) ADD W2

Each chef package = a Service with priceRange + areaServed = UAE emirate list.

Person schema (stackbirds) ADD W2

Aziz Saif Person schema, sameAs LinkedIn / GitHub / azizsaif.com. Builds entity recognition.

FAQ schema ADD W3

One FAQ block per landing page, 4–6 Q&A. Use sparingly — Google demotes spammy FAQ at scale.

Review / Rating PLAN

Only after 25+ real customer reviews. Manufactured ratings = manual action risk.

Security & trust

SSL / mixed content OK

No mixed-content warnings. All assets via HTTPS.

Privacy policy + Terms OK

Required for UAE PDPL compliance. Link in footer. Re-review with counsel before public launch.

Cookie consent (TDRA) VERIFY

UAE TDRA + Saudi PDPL friendly banner. Block GA4 + Meta Pixel until consent. Use a free Klaro or homemade banner — not OneTrust at this stage.

04 · Keyword Map · eatcookjoy.com

120+ UAE-first keywords, mapped to pages.

Search volumes are planning estimates derived from Ahrefs/SEMrush/Google KP triangulation as of May 2026. Verify with live tools before committing budget. Difficulty is on Ahrefs' KD 0–100 scale.

Primary commercial · book intent

KeywordEst. volume / moIntentDifficultyTarget page
private chef dubai1,900CommercialKD 38/private-chef-dubai/
personal chef dubai880CommercialKD 32/personal-chef-dubai/
private chef abu dhabi620CommercialKD 28/private-chef-abu-dhabi/
hire a chef at home dubai410CommercialKD 24/hire-chef-home-dubai/
private chef sharjah210CommercialKD 18/private-chef-sharjah/
chef at home service dubai320CommercialKD 26/chef-at-home-dubai/
in-home chef dinner party dubai180CommercialKD 16/dinner-party-chef-dubai/
weekly meal prep service dubai520CommercialKD 30/meal-prep-service-dubai/
birthday chef at home dubai140CommercialKD 12/birthday-chef-dubai/

Geo + cuisine modifiers

KeywordEst. volume / moIntentDifficultyTarget page
indian private chef dubai290CommercialKD 18/cuisine/indian/
italian chef at home dubai240CommercialKD 22/cuisine/italian/
arabic chef at home dubai170CommercialKD 14/cuisine/arabic/
filipino chef dubai110CommercialKD 8/cuisine/filipino/
halal private chef abu dhabi90CommercialKD 6/halal-private-chef-uae/
private chef dubai marina140LocalKD 10/areas/dubai-marina/
private chef palm jumeirah110LocalKD 8/areas/palm-jumeirah/
private chef downtown dubai90LocalKD 8/areas/downtown-dubai/
private chef saadiyat island60LocalKD 4/areas/saadiyat/

Informational · TOFU / AI Overview bait

KeywordEst. volume / moIntentDifficultyTarget page
how much does a private chef cost in dubai590InformationalKD 18/guides/private-chef-cost-dubai/
private chef vs catering dubai140InformationalKD 8/guides/chef-vs-catering/
what is a private chef service720InformationalKD 22/guides/what-is-private-chef/
meal prep for diabetes uae180InformationalKD 10/guides/diabetic-meal-prep-uae/
healthy iftar menu dubai1,300 (seasonal)InformationalKD 26/guides/healthy-iftar-menu/
private chef for ramadan dubai320 (seasonal)CommercialKD 12/seasons/ramadan-chef/
private chef for eid party140 (seasonal)CommercialKD 8/seasons/eid-chef/

Recipe library long-tail (100 URLs)

Each of the 100 preservative-free recipes from section 16 ships as its own URL with full Recipe schema. Patterns:

  • /recipes/{slug}/ — single recipe (e.g. /recipes/saffron-chicken-mandi/)
  • /recipes/cuisine/{cuisine}/ — cuisine hub (Indian, Arabic, Italian, Continental, Pan-Asian)
  • /recipes/diet/{diet}/ — diet hub (halal, vegetarian, vegan, diabetic, low-carb)
  • /recipes/time/{bucket}/ — cook time hub (under-30-min, weeknight, weekend-project)

Expected long-tail capture: 1,400–2,800 organic sessions/mo by month 9, almost entirely outside the head-term competition set.

05 · Keyword Map · stackbirds.xyz

Studio keywords — narrow, high-intent, snippet-ready.

A studio doesn't need a thousand keywords. It needs 30 of the right ones, defended with case studies and link-worthy explainers. Below: commercial intent, talent-shaped queries, and case-study long-tails.

Commercial intent

KeywordEst. volume / moIntentDifficultyTarget page
AI web design studio dubai140CommercialKD 18/services/ai-web-design/
brand identity package dubai320CommercialKD 28/services/brand-identity/
fractional CMO uae180CommercialKD 22/services/fractional-cmo/
claude code agency90CommercialKD 12/services/claude-code-agency/
AI SEO services dubai110CommercialKD 16/services/ai-seo/
next.js development agency dubai140CommercialKD 20/services/nextjs-development/
website redesign service uae240CommercialKD 24/services/website-redesign/

Informational · authority-builder

KeywordEst. volume / moIntentDifficultyTarget page
how to build a website with claude code720InformationalKD 22/guides/claude-code-website/
AI SEO workflow 2026880InformationalKD 26/guides/ai-seo-workflow-2026/
private chef marketplace tech stack90InformationalKD 8/case-studies/eatcookjoy-tech/
how to launch SMB SaaS in UAE140InformationalKD 12/guides/launch-saas-uae/
ai brand identity prompt320InformationalKD 18/guides/ai-brand-identity-prompts/

Branded / entity defence

KeywordEst. volume / moIntentDifficultyTarget page
stackbirds320BrandedKD 4/ (homepage)
stackbirds aziz saif110BrandedKD 2/about/
aziz saif web designer140BrandedKD 4/about/
eatcookjoy uae case study90BrandedKD 4/case-studies/eatcookjoy/

Case-study URLs (compounding moat)

Each project the studio ships becomes a SEO asset. Template URL: /case-studies/{client-slug}/. Initial 8:

  • /case-studies/eatcookjoy/ — "How we built the UAE's first AI-ops private-chef marketplace"
  • /case-studies/azizsaif/ — "A 50-section personal portfolio site, shipped in 12 weeks"
  • /case-studies/lepearl/ — "Catalogue + marketing site for a UAE jewellery brand"
  • /case-studies/snellito/ — "Brand identity + mockups for a Snellito-inspired food brand"
  • /case-studies/drhadishahid/ — "Doctor identity + clinical website rebuild"
  • /case-studies/tarkash/ — "DTC brand storefront for a Tarkash launch"
  • /case-studies/hnhuae/ — "HNHU UAE retail brand site"
  • /case-studies/kakalbrothers/ — "Logo systems + brand book for Kakal Brothers"
06 · On-page Templates

The copy & paste on-page kit.

Title, meta, H1, intro, and FAQ patterns for the four highest-priority page types. Each pattern is calibrated for character limits and the latest 2026 SERP layouts (AI Overviews + Local Pack).

Template A · Service landing (e.g. /private-chef-dubai/)

// Title (56 chars)
title = "Private Chef in Dubai · Book In-Home Chefs — EatCookJoy"

// Meta description (152 chars)
description = "Hire a vetted private chef in Dubai for dinner parties,
weekly meal prep, or family meals. Halal-by-default, 100 preservative-free
recipes. Book in 2 minutes."

// H1
h1 = "Private Chefs in Dubai, brought to your kitchen"

// Intro (first 80 words — answer the query, fast)
EatCookJoy connects Dubai homes with vetted private chefs who cook
in your kitchen — dinner parties, weekly meal prep, kids' birthdays.
Every chef is background-checked, food-safety certified, and works
from our 100-recipe preservative-free library. Sessions start from
AED 380 for a 4-guest dinner; weekly meal-prep packages start at
AED 1,250/month. Book in under two minutes, pay only after the
session is confirmed.

Template B · Area landing (e.g. /areas/dubai-marina/)

// Title (58 chars)
title = "Private Chef in Dubai Marina — Same-Week Slots · EatCookJoy"

// Meta (148 chars)
description = "Book a private chef who serves Dubai Marina, JBR & Bluewaters.
Same-week availability, halal-by-default, fully vetted. From AED 380 per session."

// H1
h1 = "Private Chefs serving Dubai Marina & JBR"

// Local proof block — required for local pack
- Coverage map: Dubai Marina, JBR, Bluewaters Island, Al Sufouh
- 8 chefs currently active in this area
- Same-week booking window: 4 days average
- Local cuisines on file: Indian, Italian, Arabic, Filipino, Continental

Template C · Recipe page (e.g. /recipes/saffron-chicken-mandi/)

// Title (60 chars)
title = "Saffron Chicken Mandi Recipe · 45 min · Halal — EatCookJoy"

// Meta (155 chars)
description = "Preservative-free saffron chicken mandi recipe — 45 minutes,
serves 4, halal-certified. Ingredient list with AED cost & UAE supermarket sources."

// H1
h1 = "Saffron Chicken Mandi — 45 min, serves 4"

// Required on-page sections (in this order)
1. 60-word intro
2. Ingredient list with AED cost per item
3. Step-by-step method (numbered ol)
4. Chef notes / variations
5. Nutrition table
6. "Have a chef cook this for you" CTA → /book?recipe={slug}
7. FAQ (4 Q&A) with FAQPage schema
8. Related recipes (3 cards)

Template D · Studio case study (stackbirds.xyz)

// Title (60 chars)
title = "How We Built EatCookJoy UAE in 8 Weeks — Stackbirds Case Study"

// Meta (157 chars)
description = "Stackbirds shipped EatCookJoy UAE in 8 weeks — Next.js, Prisma,
Stripe Connect, Claude-powered ops. Full tech stack, decisions & AI workflows."

// Required structure
1. The problem (40 words)
2. The constraint (founder solo, 8 weeks, AED 1.2M)
3. The stack diagram (Next.js + Prisma + Stripe + AWS me-central-1)
4. Three key decisions (with trade-offs)
5. Outcome metrics (revenue, sessions, NPS)
6. Quote from client (1 line, faces visible)
7. "Want this for your brand?" CTA
07 · Content Calendar

12 weeks, 36 pieces, two voices.

One operator can sustain ~3 publishes / week if AI drafts and a human edits. Calendar below alternates between the two brands — never let one go silent for more than 9 days.

Weekeatcookjoy.comstackbirds.xyzFormat / Length
1Pillar: "Private Chef Dubai — the 2026 guide" (2,400 w)Pillar: "AI SEO Workflow 2026" (2,800 w)Long-form, schema'd
2Area: Dubai Marina + Palm Jumeirah pagesCase study: EatCookJoy buildLanding · 900–1,200 w
3Recipe burst: 10 Indian recipes publishedGuide: "Claude Code for design agencies"Schema'd recipes + guide
4Guide: "How much does a private chef cost in Dubai"Case study: azizsaif.com1,400 w each
5Area: Abu Dhabi (Saadiyat, Al Reem, Khalifa City)Pillar: "AI brand identity in 2 weeks"Landing + 2,000 w pillar
6Recipe burst: 10 Arabic / Levantine recipesCase study: snellito brandSchema'd recipes + case
7Guide: "Private chef vs catering — which when"Guide: "SEO for SMB founders in UAE"1,600 w each
8Cuisine hubs: Indian, Italian, Arabic, FilipinoCase study: lepearlHub pages + case
9Recipe burst: 10 Continental + Italian recipesGuide: "Build & ship a brand site in 2 weeks"Schema'd + guide
10Seasonal: Ramadan / Iftar pages (publish early)Case study: drhadishahidSeasonal landing + case
11Guide: "Hosting a dinner party in Dubai"Pillar: "Fractional CMO for early-stage UAE startups"1,800 w each
12Recipe burst: 10 vegetarian / vegan recipesCase study: tarkash + repo auditSchema'd + case

Cadence rules: publish Tuesday + Thursday by 09:30 GST (UAE business prime time). Refresh top-10 organic landers every 90 days. Kill any article that hasn't earned an impression in 6 months.

08 · Schema Markup

Structured data, verbatim.

Copy these JSON-LD blocks straight into the page <head>. Validate with the Rich Results Test before pushing live.

Organization (eatcookjoy.com — root layout)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "EatCookJoy UAE",
  "url": "https://eatcookjoy.com/",
  "logo": "https://eatcookjoy.com/logo.png",
  "sameAs": [
    "https://www.instagram.com/eatcookjoy",
    "https://www.linkedin.com/company/eatcookjoy",
    "https://www.tiktok.com/@eatcookjoy"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "contactType": "customer service",
    "areaServed": "AE",
    "availableLanguage": ["en", "ar"]
  }
}
</script>

LocalBusiness · FoodService (per chef / per emirate page)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FoodService",
  "name": "EatCookJoy — Private Chef Dubai",
  "image": "https://eatcookjoy.com/areas/dubai-hero.jpg",
  "priceRange": "AED 380 - AED 4,500",
  "servesCuisine": ["Indian", "Italian", "Arabic", "Filipino", "Continental"],
  "areaServed": {
    "@type": "City", "name": "Dubai"
  },
  "address": {
    "@type": "PostalAddress",
    "addressCountry": "AE",
    "addressRegion": "Dubai"
  },
  "openingHoursSpecification": {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
    "opens": "09:00", "closes": "23:00"
  }
}
</script>

Recipe (every /recipes/* URL)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Saffron Chicken Mandi",
  "image": ["https://eatcookjoy.com/recipes/saffron-chicken-mandi.jpg"],
  "author": { "@type": "Organization", "name": "EatCookJoy" },
  "datePublished": "2026-05-17",
  "recipeCuisine": "Arabic",
  "recipeCategory": "Main course",
  "keywords": "halal, preservative-free, dinner, UAE",
  "prepTime": "PT15M", "cookTime": "PT30M", "totalTime": "PT45M",
  "recipeYield": "4 servings",
  "nutrition": { "@type": "NutritionInformation", "calories": "620 kcal" },
  "recipeIngredient": [
    "1 kg chicken thighs, bone-in",
    "2 cups basmati rice",
    "0.5 g saffron threads"
  ],
  "recipeInstructions": [
    { "@type": "HowToStep", "text": "Marinate chicken with yogurt and spices for 30 min." }
  ]
}
</script>

Service + Offer (chef package pages)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Service",
  "serviceType": "Private Chef Dinner Party",
  "provider": { "@type": "Organization", "name": "EatCookJoy UAE" },
  "areaServed": ["Dubai", "Abu Dhabi", "Sharjah"],
  "offers": {
    "@type": "Offer",
    "price": "380.00",
    "priceCurrency": "AED",
    "availability": "https://schema.org/InStock"
  }
}
</script>

Person + Organization (stackbirds.xyz)

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://stackbirds.xyz/#org",
      "name": "Stackbirds",
      "url": "https://stackbirds.xyz/",
      "founder": { "@id": "https://azizsaif.com/#me" },
      "areaServed": ["AE", "IN", "GB", "US"],
      "sameAs": [
        "https://github.com/azizsaif1967-afk",
        "https://www.linkedin.com/in/azizsaif/",
        "https://azizsaif.com/"
      ]
    },
    {
      "@type": "Person",
      "@id": "https://azizsaif.com/#me",
      "name": "Aziz Saif",
      "jobTitle": "Founder · Stackbirds",
      "worksFor": { "@id": "https://stackbirds.xyz/#org" },
      "sameAs": [
        "https://stackbirds.xyz/",
        "https://github.com/azizsaif1967-afk"
      ]
    }
  ]
}
</script>
Validation

After every push, run the Rich Results Test on the changed URL and the Schema.org validator on the raw JSON-LD. Track rich-result eligibility in Search Console under Enhancements.

09 · Local SEO · UAE

Win the local pack for every emirate.

eatcookjoy.com's biggest unfair advantage is geographic specificity. Google Business Profiles, NAP consistency, and seven dedicated area landing pages will out-rank the global marketplaces who lazily target "private chef" with no location.

Google Business Profile (GBP)

  • One primary profile at the operational HQ (Dubai). Service-area business, not storefront.
  • Categories: Primary = "Personal Chef Service"; Secondary = "Caterer", "Meal Delivery", "Cooking School".
  • Service areas: all 7 emirates. Add specific neighbourhoods in each (Dubai Marina, Downtown, Palm, Saadiyat, Al Reem, Yas, Khalifa City).
  • Posts: 2 GBP posts/week — new chef joins, seasonal menu, recipe spotlight.
  • Photos: 30 minimum at launch — chefs, dishes, kitchen action shots (no stock).
  • Q&A: seed 10 questions yourself (founder-asked) before opening to public.
  • Reviews: automated WhatsApp ask 24 hours after every session. Target ≥4.7 stars across 100+ reviews by Month 6.

NAP (Name, Address, Phone) consistency

List on these 12 UAE-relevant citation sources, identically (use the same address format every time, including the trade-licence number):

  1. Google Business Profile
  2. Apple Business Connect
  3. Bing Places for Business
  4. Yelp (UAE)
  5. Yellow Pages UAE
  6. Dubizzle Services
  7. Time Out Dubai (paid listing optional)
  8. Talabat / Careem partner directory (B2B)
  9. Cobone (deals platform)
  10. VisitDubai vendor list
  11. Abu Dhabi Department of Culture & Tourism vendor list
  12. Sharjah Chamber of Commerce directory

Area landing-page pattern (×7)

  • Unique 600+ word body (don't template-spam — Google demotes near-duplicate area pages).
  • Embed a map showing service radius (Google My Maps or Mapbox).
  • List 3–5 chefs who actively serve that area (with face photos).
  • Pull 5 local reviews mentioning the neighbourhood by name.
  • Link to neighbouring area pages ("Also serving JBR, Bluewaters").
  • LocalBusiness schema with the area as areaServed.

Arabic content (Phase 2, Month 4+)

Hold off on Arabic until 25+ real chef sessions are done in Arabic-speaking households. Then:

  • Native Arabic writer, not AI auto-translation.
  • /ar/ subdirectory, not subdomain.
  • hreflang en-AE / ar-AE / x-default pairs on every URL.
  • Arabic GBP profile + posts.
  • Right-to-left layout tested on iPhone Safari first (UAE iOS-heavy).
11 · Competitor Analysis

Who's already ranking, and how we beat them.

Audited via Ahrefs + manual SERP scrape (May 2026). Numbers are estimates. The pattern matters more than the digit.

eatcookjoy.com — UAE SERP competitors

CompetitorEst. DREst. UAE traffic / moTheir strengthTheir weakness · our wedge
heychef.ae (legacy)48~6,5004-year head start, brand recallAcquired, content stale, no recipe corpus
chefxchange.com52~3,200Global brand, paid adsGeneric; no UAE local pack, no Arabic
privatechefsworld.com34~1,100Concierge premium positioningThin content, no recipe schema
talabat / careem chef listings89 / 86brand traffic onlyDomain authority monstersDon't rank for chef intent — their pages are restaurant-first
timeoutdubai.com /best-private-chefs72~2,400Editorial trustListicle; we get listed inside it

stackbirds.xyz — global / UAE studio competitors

CompetitorEst. DRTheir strengthOur wedge
superside.com74Enterprise design-as-a-serviceEnterprise-priced; we're SMB-priced + AI-native
designjoy.co56Monthly subscription brandUS-focused; we own UAE local + Arabic
2acre.io / awwwards studios60+Award-winning portfolios4–6 month timelines; we ship in 2–4 weeks
local UAE web agencies20–40Local presenceOutdated WordPress sites, no AI workflows

Three wedges we exploit

  1. Geographic specificity. Per-emirate, per-neighbourhood pages. Generics can't match this without cannibalising their own.
  2. Recipe corpus. 100 schema'd, AED-costed recipes feed AI Overviews + featured snippets. Nobody else has this in the UAE chef space.
  3. Studio + marketplace cross-link. stackbirds.xyz publishes the EatCookJoy case study; EatCookJoy links to the studio in footer. Both gain topical authority without spamming.
12 · AI Workflows & Prompts

9 SEO workflows, run by Claude.

Each workflow plugs into the existing AI Ops stack (section 10 of the master playbook). Models: Claude Opus 4.7 for reasoning + drafts, Claude Haiku 4.5 for bulk transforms, Perplexity for live SERP research, ChatGPT for image generation, Make.com for plumbing.

WORKFLOW 01

Weekly SERP & rank delta report

Pulls Search Console + Ahrefs API every Monday 06:00 GST. Claude summarises the top 10 movers, top 5 losers, and 3 quick-win recommendations. Delivered to Slack.

stack: GSC API → Ahrefs API → Claude Opus 4.7 → Slack webhook
WORKFLOW 02

Title + meta rewriter

Reads every URL, current title/meta, primary keyword, and click-through rate from GSC. Rewrites bottom-quartile CTR titles. Diff posted to a PR for human approval.

stack: GSC → Claude Opus → GitHub PR
WORKFLOW 03

Recipe schema generator

Reads markdown recipe file → emits valid Recipe + HowTo JSON-LD, ingredient table with AED cost lookup, nutrition estimate. One command per recipe.

stack: MDX → Claude Haiku 4.5 → JSON-LD blob
WORKFLOW 04

Alt-text batch writer

Walks /public/images/, sends each image + page context to Claude vision, emits descriptive alt + descriptive filename. Updates next.config or DB.

stack: glob → Claude vision → next/image alt
WORKFLOW 05

Internal link suggester

For each new article, scans the existing corpus and suggests 5–8 internal links with target anchors. Outputs a unified diff Aziz reviews before merge.

stack: vector DB (pgvector) → Claude Opus → markdown patch
WORKFLOW 06

Competitor SERP delta

Every Friday: pulls top-10 SERP for 30 priority keywords, diffs vs last week, flags new entrants and dropped pages. Spots Google algorithm shifts early.

stack: Perplexity / SERP API → Claude Opus → Slack
WORKFLOW 07

Programmatic area-page builder

From a JSON list of UAE neighbourhoods → generates a unique 700-word area page, embeds map, pulls 3 local chef profiles. Reviewer flags any near-duplicate content.

stack: areas.json → Claude Opus → Next.js MDX → near-dupe check
WORKFLOW 08

Outreach personaliser

Given a journalist's last 5 articles, Claude drafts a tailored pitch in Aziz's voice. Outputs to a draft folder in Gmail / Apollo.

stack: Apollo + RSS → Claude Opus → Gmail draft
WORKFLOW 09

AI-Overview monitor

For 50 priority queries, weekly Perplexity + Google AI Overview scrape. Tracks whether eatcookjoy.com / stackbirds.xyz is cited. Alerts on new citation or removal.

stack: SERP API → Claude Opus → Notion DB + Slack

Prompt library — the four that matter most

Prompt · "Title rewriter" (CTR < 1.5%)

You are an SEO copywriter for {brand}. Rewrite the meta title for this
URL so that it (a) ranks for the primary keyword, (b) earns ≥3% CTR
on the UAE / global SERP, (c) stays under 60 characters including
spaces.

URL: {url}
Primary keyword: {kw}
Current title: {current}
Current CTR: {ctr}
SERP top 5 titles: {serp}

Output exactly 3 candidate titles, ranked best-first, each with a
1-line rationale. No emojis. No clickbait. UAE-aware tone.

Prompt · "Recipe expander"

You are a UAE-based food writer for EatCookJoy. Take the recipe below
and expand it into a publish-ready /recipes/{slug}/ page:

- 60-word intro (answer "what is this dish, why eat it now")
- Ingredient table with AED cost per item (use realistic Dubai
  supermarket prices, May 2026)
- Numbered step method, max 8 steps
- Chef notes section (2–4 bullets)
- Nutrition table (calories, protein, carbs, fat, sodium)
- FAQ block (4 Q&A, FAQPage schema-ready)

Keep tone warm, confident, never marketing-y. Halal-by-default
unless specified otherwise. Output as MDX.

Recipe input:
{recipe}

Prompt · "Case study from repo"

You are a technical writer for Stackbirds. Read the linked repo +
the deployed site, then write a 1,400-word case study for
/case-studies/{client-slug}/.

Required structure:
1. Problem (40 words)
2. Constraint (timeline, budget, team)
3. Stack diagram (Mermaid)
4. Three key decisions, with trade-offs
5. Outcome metrics
6. Client quote (placeholder, mark to verify)
7. CTA: "Want this for your brand?"

Tone: builder-to-builder, specific, no fluff. Cite exact file paths
when explaining decisions. Output as MDX with frontmatter.

Repo: {repo_url}
Live site: {site_url}

Prompt · "AI-Overview citation check"

For each query below, run a Perplexity + Google AI Overview check
and report:

- Whether {domain} is cited
- If yes, which URL is cited and at what position
- If no, which 3 sources are cited instead, and the single most
  fixable content gap on our side
- One concrete edit to {domain}'s most relevant URL that would
  likely earn the citation in the next 2 weeks

Queries: {queries}
Domain: {domain}
13 · 90-Day Execution Plan

Days 1–90, one operator.

Three 30-day phases. Each lists the deliverables, the AI workflow that ships them, and the success gate that unlocks the next phase. If a gate fails, freeze the next phase and rerun.

Phase 1 · Foundations

Days 1–30 · Don't lose the basics

17 May → 16 Jun 2026
  • Both sites: technical audit (28 checks) green
  • Organization, LocalBusiness, Person schema live
  • GSC + Bing Webmaster + GA4 verified
  • GBP claimed, NAP across 12 citations
  • 12 priority service / area pages live (eatcookjoy.com)
  • 3 case studies + 2 service pages live (stackbirds.xyz)
  • AI workflows 01–04 deployed
  • Gate: 100% of priority URLs indexed in GSC
Phase 2 · Content velocity

Days 31–60 · Publish, schema, link

17 Jun → 16 Jul 2026
  • 30 recipes published with full Recipe schema
  • 2 pillar guides + 4 supporting articles per brand
  • 7 emirate / neighbourhood landing pages live
  • Workflow 05–07 deployed (internal link, competitor diff, area builder)
  • 10 outreach pitches sent (5 UAE press, 5 builder community)
  • First 25 GBP reviews collected
  • Gate: ≥10 first-page keywords (UAE) for ECJ; ≥3 case-study impressions/day for SB
Phase 3 · Compound

Days 61–90 · Earn rank, earn links

17 Jul → 16 Aug 2026
  • Full recipe library (100) + 20 cuisine/diet/time hubs live
  • Workflows 08–09 deployed (outreach + AI-Overview monitor)
  • 30 earned backlinks total (sustainable, no spam)
  • First 100 GBP reviews, ≥4.7 avg
  • Featured-snippet capture for 8 informational queries
  • 3 podcast / press features published
  • Gate: ≥3K organic sessions / month combined; LTV:CAC of organic channel > 25×

Beyond 90 days — the compounding flywheel

  • Month 4–6: Arabic content rollout, podcast circuit, brand-search lift campaign.
  • Month 7–9: Programmatic dish + chef pages (1 page per chef × cuisine × area = ~600 URLs).
  • Month 10–12: Expand to KSA (Riyadh, Jeddah, Khobar) — replicate the area-page playbook with /sa/ subdirectory.
14 · KPI Dashboard

12 numbers, refreshed Monday.

A daily Looker Studio dashboard pulls these in. Anything red rolls into Monday's founder review. No vanity metrics — only what changes a decision.

Organic Sessions
12K
Combined target by Month 9. Trailing 28-day rolling.
Indexed URLs
≥95%
Submitted-vs-indexed ratio in Search Console.
First-page Keywords
60+
UAE positions 1–10 for ECJ priority set.
Top-3 Keywords
15+
UAE positions 1–3 — local-pack qualifying.
CTR (avg)
4.2%
GSC sitewide average — title-rewrite trigger at <3%.
Core Web Vitals
90+
% of URLs passing Mobile CWV.
Backlinks (RD)
30+
Referring domains earned in 90 days, both brands.
GBP Reviews
100 / 4.7★
eatcookjoy.com only — by Month 6.
Rich Results
5+ types
Recipe, FAQ, BreadcrumbList, LocalBusiness, Service.
AI-Overview Cites
12+
Citations of either brand across 50 tracked queries.
Organic Inquiries
280 / mo
Chef bookings + studio leads sourced from organic.
CAC (organic)
< AED 90
Compared to AED 112 blended in section 07.

Where the data lives

  • Google Search Console — impressions, clicks, positions, indexing
  • GA4 — sessions, conversions, channel attribution
  • Ahrefs / SEMrush — backlinks, referring domains, keyword rankings
  • Looker Studio — unified weekly dashboard (template free, copy-able)
  • Notion — workflow logs + the AI-Overview tracker
  • Slack #seo — every red flag, every Monday digest
Discipline

The point of a tight KPI list is to refuse vanity. We don't track Domain Rating, total backlinks, or "estimated traffic value" — those move with Ahrefs' index, not our work. We track what we can change.

Read it all in one page.

This section ships in branch claude/add-ai-research-section-mRK9W. The dashboard card lives on the main playbook. The source of truth — repo file paths, AI workflow stubs, schema snippets — is in the repo.

Open the full playbook ↗ View on GitHub