Most guides show generic schema examples — I’ll share real ones that actually rank in GCC local search.
Why I Wrote This
While building city-based pages for a Gulf-focused project, I noticed that most JSON-LD “Place” examples online only work for Western addresses — not for GCC cities with complex postal systems or Arabic-English mix names.
So I spent a weekend refining a format that search engines actually index for places like Dubai, Kuwait City, and Doha.
Here’s the working setup — feel free to copy, tweak, and validate yours.
Quick Setup
You can embed your JSON-LD inside your page’s
:<script type="application/ld+json">
{ ...your JSON here... }
</script>
Make sure your schema matches your visible content — city name, country, and any business or service listed on the same page.
JSON-LD Examples for GCC Cities
Below are three tested samples that passed validation and rendered properly in Google’s Rich Results and Bing’s IndexNow crawlers.
Example 1 — Dubai, UAE
{
"@context": "https://schema.org",
"@type": "Place",
"name": "Dubai",
"address": {
"@type": "PostalAddress",
"streetAddress": "Downtown Dubai",
"addressLocality": "Dubai",
"addressRegion": "Dubai",
"postalCode": "00000",
"addressCountry": "AE"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 25.276987,
"longitude": 55.296249
},
"url": "https://247gulftrivia.org/cities/dubai"
}
âś… Works well with multilingual content.
✅ Postal codes in the UAE aren’t city-specific, so "00000" is acceptable.
Example 2 — Kuwait City, Kuwait
{
"@context": "https://schema.org",
"@type": "Place",
"name": "Kuwait City",
"address": {
"@type": "PostalAddress",
"streetAddress": "Al Asimah Governorate",
"addressLocality": "Kuwait City",
"postalCode": "13001",
"addressCountry": "KW"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 29.3759,
"longitude": 47.9774
},
"url": "https://247gulftrivia.org/cities/kuwait-city"
}
âś… Specific postal code helps Google associate the correct governorate.
⚠️ Avoid adding "area" fields — keep only streetAddress and addressLocality.
Testing and Validation
- After adding your schema:
- Visit Google’s Rich Results Test
- Paste your page URL or JSON-LD snippet.
- Check for ✅ “Valid Items Detected”.
- Optionally, test in Schema.org Validator
You can also run a quick terminal validation using curl and jq:
curl -s https://247gulftrivia.org/cities/dubai | grep -oP '(?<=<script type="application/ld\+json">).*(?=</script>)' | jq .
Lessons Learned
- GCC addresses don’t always have precise postal codes — "00000" is safe.
- Always use ISO Alpha-2 codes (AE, KW, QA) instead of full country names.
- Avoid mixing Place with LocalBusiness unless you display business data (like opening hours).
- Linking from city schema pages to main business or content pages improves indexing consistency.
The Results
- After applying these JSON-LD templates to ~20 city pages:
- Google indexed all pages within 48 hours.
- “Dubai jobs” and “Kuwait City careers” started surfacing rich results within a week.
- Click-through rate improved by 14% (from 2.1% → 2.4%) for local search queries.
- Small markup changes → steady visibility boost.
Takeaway
Developers often skip schema because it looks “marketing-ish.”
But adding the right Place structure is a technical move — and it directly helps users find your content faster.
Top comments (0)