+254 726 042 822support@kevcodepulse.com
HQ: Nairobi, Kenya
KevCodePulse
HomeAboutServicesPricingPortfolioFAQBlog
Get StartedFree Audit
WhatsApp Us
KevCodePulse

Nairobi web design agency helping Kenyan businesses get found on Google and convert visitors into customers.

Google Reviews
5.0
(5+ reviews)
Leave a Review

Navigation

  • Home
  • About
  • Services
  • Pricing
  • Portfolio
  • Contact
  • Blog

What We Do

  • Website Design Nairobi
  • Web Design Kenya
  • SEO Services Kenya
  • Free SEO Audit

Inquiries

Call Us+254 726 042 822Email Ussupport@kevcodepulse.com
LocationNairobi, Kenya
© 2026 KevCodePulseWeb Performance Guaranteed
PrivacyTermsFAQ
Back to Blog
SEO Kenya14 min read

Schema Markup Guide Kenya: How to Get Rich Snippets on Google

A gym owner in Kilimani searches her own business name from her phone and gets a plain blue link — no rating, no hours, no "Open Now." Two listings below h

K

Written by

Kelvin

26 July 2026
14 min
Share

On this page

A gym owner in Kilimani searches her own business name from her phone and gets a plain blue link — no rating, no hours, no "Open Now." Two listings below her, a competitor's result shows four stars, a price range, and a map pin. Same Google, same search intent, two completely different first impressions. That gap is usually schema markup — or the lack of it.

If you've read that a schema markup guide kenya businesses can actually use should explain what to add, how to add it, and how to check it worked without hiring a developer full-time, this is that guide. We'll cover the technical side properly — the Search Console workflow most sites skip — and the parts that are specific to selling in Nairobi, Mombasa, Kisumu, or Eldoret, where a customer's next move after seeing your listing is usually a tap on WhatsApp, not a contact form.

Quick answer: what schema markup actually is

Schema markup is a small block of structured code, usually written in JSON-LD, that sits in a page's HTML and describes what the page is about in a format search engines can parse without guessing. It doesn't change how a page looks to a visitor. It changes what Google is confident enough to show about that page in the results — star ratings, opening hours, price ranges, FAQ dropdowns, event dates, or a map location. Get it right and your listing takes up more space and looks more trustworthy before anyone clicks. Get it wrong, or skip it entirely, and Google falls back to guessing from your raw text, which is a worse bet for both of you.

What schema markup does that plain content can't

Search engines read your page the way a first-time visitor skims it: headings, some bold text, maybe an image caption. They can usually work out that a page is "about a restaurant," but they can't reliably tell whether KES 800 is the price of a starter or the whole meal, or whether "Mon–Sat, 8am–6pm" applies to the shop or to a public holiday exception buried in a footer note. Schema removes the guesswork by labelling each fact explicitly — "priceRange": "KES 500–1500", "openingHours": "Mo-Sa 08:00-18:00" — so Google can lift that fact straight into a rich result instead of paraphrasing your paragraph and sometimes getting it wrong.

This matters more once you consider what's competing for the same query. A search for "hardware shop South B" or "pediatrician Eldoret" now returns a mix of Maps listings, paid ads, and organic results, most fighting for the same three or four visible lines of text. A listing with a rating, a price band, and an FAQ dropdown physically occupies more of the screen and reads as more established, even before the searcher compares content quality.

The schema types a Kenyan business page actually needs

Most local sites only need four or five schema types, not the full catalogue. Here's what earns a place on a typical Kenyan business site, and what each one unlocks:

  • Organization / LocalBusiness — your business name, address, phone format, hours, and coordinates. This is the foundation every other schema type sits on top of, and it's the one most Kenyan sites either skip or fill in with stale details.
  • Article — for blog posts and guides like this one. It gives Google a clean headline, publish date, and author, which helps content surface for informational queries.
  • Product — for anything sold online: price, stock status, and review count, shown directly in the result before a shopper lands on the page.
  • FAQPage — wraps genuine question-and-answer content so it can appear as an expandable dropdown under your listing. Google has narrowed how often FAQ rich results show, but the schema still helps AI tools and voice-style queries parse your answers correctly.
  • Review / AggregateRating — surfaces star ratings next to a business, product, or service listing. This only works with real reviews; inventing a rating is a fast way to get flagged.
  • Event — for one-off dates: a product launch, a webinar, a pop-up sale. Rare for most SMEs, essential for a handful.
  • BreadcrumbList — shows your site's structure (Home › Services › SEO) in the result itself, which helps users understand where a page sits before they click.
  • JobPosting — if you're hiring, this schema type is one of the more reliably visible rich results left, since Google Jobs pulls directly from it.

A single-branch clinic in Nyali doesn't need all eight. It needs LocalBusiness, FAQPage, and Review done properly — and done properly beats five types done sloppily every time.

How to actually add it to your site

There are three realistic paths, depending on what your site runs on and how comfortable you are editing code.

If you're on WordPress, a plugin does most of the work. Yoast SEO adds Organization or Person schema during onboarding and lets you fine-tune article-level settings from a "Schema" tab on each post. Rank Math offers more granular control over which schema type applies to which content, which is useful once you're running service pages, blog posts, and product pages on the same site. Either plugin is a reasonable starting point for a small business owner who isn't going to touch raw code.

If you want more control, or you're not on WordPress, JSON-LD written by hand (or generated with a free tool and then edited) goes directly into the page's <head> or <body> — Google accepts either placement. A basic LocalBusiness block looks roughly like this:

{
 "@context": "https://schema.org",
 "@type": "LocalBusiness",
 "name": "Your Business Name",
 "address": {
 "@type": "PostalAddress",
 "streetAddress": "Your Street",
 "addressLocality": "Nairobi",
 "addressCountry": "KE"
 },
 "openingHours": "Mo-Fr 08:00-18:00",
 "priceRange": "KES 1000-5000"
}

Fill in real details, run it through a validator (more on that below), and paste it in. This is where a developer or a technical SEO partner earns their keep — one missing comma or bracket and the whole block fails silently.

If you manage tagging through Google Tag Manager, you can inject the JSON-LD as a Custom HTML tag set to fire on all pages, which avoids needing a developer for every future update. This works well for static Organization schema. It gets more fragile for dynamic schema — hundreds of product pages, for instance — where GTM's variable system can insert broken JavaScript into what needs to be clean JSON. If you're running an e-commerce catalogue, that's a case for a developer-built solution rather than a GTM workaround.

Testing it, then actually watching it in Search Console

Adding schema and never checking it is close to not adding it at all. Two tools matter here, and they check different things.

Google's Rich Results Test validates one URL at a time and tells you, page by page, whether your schema is technically correct and eligible for a rich result. Run every page type through it once after implementation — one LocalBusiness page, one Article page, one Product page — not every single URL.

Google Search Console is where you monitor this at scale, and it's the tool most competitor guides skip entirely, which is exactly where this guide goes deeper. Once your site is verified in Search Console:

  • The Enhancements section (or the structured data reports under it, depending on your account) lists every rich-result type Google has detected across your site, flags valid items, and — critically — flags errors and warnings by page, so you're not guessing which URL broke.
  • URL Inspection lets you check any single indexed page and see exactly what Google's last crawl saw, including whether it detected your schema at all. This is the fastest way to confirm a fix actually worked, rather than waiting for the Enhancements report to refresh.
  • Beyond schema specifically, the same Search Console account tells you whether your robots.txt is accidentally blocking the pages you've marked up, whether a page is set to noindex by mistake, whether your canonical tag points somewhere other than the URL you intended, and whether pages sit in a "Discovered – currently not indexed" or "Crawled – currently not indexed" status — meaning Google has seen the page but hasn't indexed it, so no schema on it will ever show, however well it's written.
  • Your XML sitemap, submitted through Search Console, is what tells Google which URLs to prioritise for crawling in the first place. A site with rich, correct schema but no submitted sitemap is often just crawled slower, and rich results lag accordingly.
  • Watch for soft 404s and unnecessary redirects too — a redirected or thin duplicate page rarely earns a rich result even with flawless markup, because Google is choosing not to treat it as a canonical, indexable page.

Almost none of the pages ranking for schema-related searches walk through this Search Console layer in any depth. It's the difference between "I added the code" and "I know it's actually working, and I know why it isn't if it stalls."

How Kenyans actually find and contact a business — and where schema fits

A rich snippet is only useful if it leads somewhere a Kenyan buyer will actually act on. The real path usually looks like this: someone searches on a phone, on prepaid Safaricom or Airtel data, glances at the Maps pack or the top organic result, and decides in seconds whether to tap through. If they do, the next move is rarely a contact form — it's tapping to call, or opening WhatsApp to ask a quick question before committing to visit.

Schema supports every step of that path without replacing it. LocalBusiness schema feeds the details that show up in the Maps pack and your Google Business Profile — hours, category, price range. FAQPage schema pre-answers the two or three questions that would otherwise cost you a WhatsApp message ("Do you deliver to Ruaka?" "Is parking available?"). Review schema shows the star rating that decides whether a stranger trusts you enough to message at all. None of this replaces a fast-loading, mobile-first page with a clear WhatsApp button — it just means fewer people bounce before they get there, because the search result itself already answered their first question.

Kenya-only implementation details competitors gloss over

A few things matter here specifically because you're operating in Kenya, and generic international schema guides simply don't cover them.

NAP consistency with a Kenyan phone format. Your name, address, and phone number need to match, character for character, across your website schema, your Google Business Profile, and any directory listing. Kenyan numbers get written inconsistently — 0722 xxx xxx, +254 722 xxx xxx, with or without spaces — and Google treats mismatched formats as a weak trust signal, not a cosmetic difference. Pick one format (+254 is the safer default for schema) and use it everywhere.

Google Business Profile video verification. Kenya is one of the markets where Google has increasingly required video verification for new or edited Business Profiles, rather than the postcard-by-mail method common elsewhere. Your LocalBusiness schema and your GBP listing should already agree on category, address, and hours before you attempt verification — mismatches here are a common reason verification stalls or gets rejected.

Pricing in KES, and M-Pesa as a trust signal. If you're marking up Product or Service schema, price fields should be in KES, not USD converted awkwardly. Where relevant, mentioning M-Pesa as an accepted payment method in your on-page content (not necessarily the schema itself) reduces friction for buyers who are checking, before they message you, whether paying will be straightforward.

Bilingual and Kiswahili search behaviour

Almost no competing guide touches this, and it's a real gap. A meaningful share of local searches in Kenya mix English and Kiswahili in the same query, or switch entirely depending on the device, the user's age, or the region — "duka la vifaa vya ujenzi karibu nami" alongside "hardware shop near me" for the same intent. Schema markup itself is language-agnostic — the property names (name, address, openingHours) stay in English regardless of your content language — but the values you fill in should match how your actual customers search and describe your business. If your FAQPage schema only answers questions in the phrasing an English-speaking Nairobi office worker would use, you're leaving out the Kiswahili-first searcher asking the same thing differently. Where it's natural, write at least one FAQ answer or product description that mirrors common Kiswahili phrasing, and mark it up the same way.

What actually breaks schema visibility for Kenyan sites

A handful of failure patterns show up repeatedly on Kenyan sites once you start auditing them:

  • JavaScript-only injection. Schema added exclusively through Google Tag Manager or client-side JavaScript can be invisible to some crawlers that don't fully render JS, and is entirely invisible to most AI crawlers indexing content for chat-based answers. If AI visibility matters to you, add schema as a static block in the raw HTML, not just through GTM.
  • Duplicate LocalBusiness schema across branches. A business with outlets in Westlands and Mombasa Road sometimes ends up with identical schema pasted across both location pages — same address, same phone — which confuses Google about which listing belongs to which physical branch.
  • Schema that contradicts the visible page. If your JSON-LD claims a 4.8 rating but the visible page shows no reviews at all, that's a policy violation, not a minor inconsistency, and it can suppress rich results sitewide, not just on the offending page.
  • Forgotten after a redesign. Schema frequently lives in a theme template or a plugin setting that gets wiped during a website rebuild. If your rich results vanished around the same time your site got a new look, this is the first thing to check.

A practical rollout sequence

  1. Audit what's already there. Run your homepage and one page of each type (service, blog, product) through the Rich Results Test to see your starting point.
  2. Fix your foundation first — NAP consistency, a submitted XML sitemap, no accidental noindex or blocking robots.txt rules. Schema on top of a page Google can't index is wasted effort.
  3. Add LocalBusiness/Organization schema sitewide, then layer Article, Product, FAQPage, or Review schema by page type.
  4. Validate every page type once, not every URL individually.
  5. Submit or resubmit your sitemap in Search Console and monitor the Enhancements report weekly for the first month, then monthly after that.
  6. Re-check after any redesign, rebrand, or price change — schema needs the same maintenance as your actual price list.

Red flags when you're evaluating help

If you're bringing someone in rather than doing this yourself, a few signs are worth watching for, calmly rather than dramatically. Be cautious of anyone promising guaranteed rich results — Google decides whether to display them, and no one can override that. Be cautious of a quote that doesn't distinguish between adding schema and monitoring it in Search Console afterward; implementation without monitoring tends to quietly break after the next site update. And ask, specifically, which schema types they plan to use and why — "we'll add schema" without naming LocalBusiness, FAQPage, or Review by name is usually a sign the work hasn't been scoped yet.

Retainers that include ongoing technical SEO — schema maintenance included — typically start from KES 15,000 a month locally, scaling with how many page types and locations you're marking up. A one-off schema implementation project is a smaller, fixed-scope option if you're not ready for an ongoing retainer.

Where this leaves you

Schema markup won't rescue a slow, poorly written site, and it isn't a substitute for a Google Business Profile that's actually kept up to date. What it does is remove the guesswork Google would otherwise do on your behalf — and in a market where most competitors still haven't bothered to add it correctly, that's a real, low-cost advantage. Start with LocalBusiness and FAQPage, get them validated in Search Console rather than just "added," and build outward from there.

If you'd rather have this audited and implemented properly than piece it together yourself, a free SEO audit will show you exactly what's missing on your current site, and how it fits into your pricing options if you decide to move forward.


Related reading: Technical Seo Kenya · contact · SEO services Kenya

Next step

Ready to get your Kenya business found on Google?

Start with a free website audit — PageSpeed, SEO gaps, and quick wins.

Get Free AuditContact Us

On this page

Related Posts

SEO Kenya

How Much Should SEO Cost in Kenya?

30 July 202614 min
SEO Kenya

Doctor SEO Kenya: How Private Practitioners Get Found on Google

26 July 202614 min
SEO Kenya

Ecommerce SEO Pricing in Kenya: What Online Stores Actually Pay in 2026

26 July 202613 min
KM

Kelvin

KevCodePulse

Software developer helping Kenya businesses grow through fast websites and local SEO.

About KevCodePulse