Schema markup for small businesses: add it in 15 minutes (no developer needed)

Structured data sounds technical. It is not. Here are copy-paste schema templates for local businesses, service providers, and restaurants, with step-by-step instructions for every major platform.

Schema markup, also called structured data, is one of those SEO terms that sounds intimidating but is actually quite simple once you understand what it does. And more importantly, it is one of the highest-impact, lowest-effort improvements you can make to your website.

In plain terms, schema markup is a special code format that tells search engines and AI systems exactly what your business does, where it is located, what services you offer, your hours, your ratings, and more. Without it, search engines have to read your website like a human would, interpreting paragraphs, guessing at meanings, inferring details. With schema markup, you are handing them a precisely filled-out form.

The result? Your search listings can display star ratings, hours, phone numbers, and price ranges directly in the results (FAQ answers no longer appear this way, Google retired that rich result in May 2026). These enhanced listings, called rich results, get significantly more clicks. And for AI search systems like ChatGPT and Perplexity, structured data, FAQ schema included, makes your business information easy to extract and cite.

Content with FAQ and HowTo schema is 78% more likely to be cited by AI systems. That number alone should convince you to spend the next 15 minutes adding it.

What schema markup looks like (it is less scary than you think)

Schema markup is added to your website as a block of JSON-LD code, a standardized format that lives in your page's HTML. Here is what a basic LocalBusiness schema looks like:

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Smith Plumbing",
  "image": "https://smithplumbing.com/logo.jpg",
  "telephone": "+1-555-123-4567",
  "email": "info@smithplumbing.com",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 Main Street",
    "addressLocality": "Portland",
    "addressRegion": "OR",
    "postalCode": "97201",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 45.5231,
    "longitude": -122.6765
  },
  "url": "https://smithplumbing.com",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "08:00",
      "closes": "18:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday"],
      "opens": "09:00",
      "closes": "14:00"
    }
  ],
  "priceRange": "$",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "156"
  }
}

You do not need to write this from scratch. The templates below are copy-paste ready; just replace the placeholder values with your business information.

How to add schema markup on your platform

WordPress

Option A: Plugin (easiest) Install Yoast SEO or RankMath. Both have structured data features built in:

  • Yoast: Go to Yoast SEO → Search Appearance → Content Types → Your page → Schema tab
  • RankMath: Edit any page → RankMath panel → Schema tab → Add Schema

Option B: Manual Install the "Insert Headers and Footers" plugin. Paste your JSON-LD schema wrapped in <script type="application/ld+json"> tags into the header section.

Squarespace

Go to Settings → Developer Tools → Code Injection → Header. Paste your schema code wrapped in script tags. This adds it to every page. For page-specific schema, use the page settings → Advanced → Code Injection.

Wix

Go to Dashboard → Marketing → SEO → SEO Patterns → Home Page → Advanced SEO → Structured Data Markup. Paste your JSON-LD. For individual pages, edit the page → Advanced SEO → Structured Data.

Shopify

Edit your theme → Layout → theme.liquid. Before the closing </head> tag, paste your schema code. For product-specific schema, Shopify generates basic product schema automatically, but you may want to enhance it.

Any platform (universal method)

If your platform supports custom HTML, paste this code block into the <head> section of your page:

<script type="application/ld+json">
{
  // Your schema JSON goes here
}
</script>

Template 1: Local business (any service business)

Copy this and replace the values in CAPS with your information:

{
  "@context": "https://schema.org",
  "@type": "YOUR_BUSINESS_TYPE",
  "name": "YOUR BUSINESS NAME",
  "image": "YOUR_LOGO_URL",
  "telephone": "+1-YOUR-PHONE-NUMBER",
  "email": "YOUR_EMAIL",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "YOUR STREET ADDRESS",
    "addressLocality": "YOUR CITY",
    "addressRegion": "YOUR STATE",
    "postalCode": "YOUR ZIP",
    "addressCountry": "US"
  },
  "url": "YOUR_WEBSITE_URL",
  "priceRange": "$",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "08:00",
      "closes": "17:00"
    }
  ],
  "sameAs": [
    "YOUR_FACEBOOK_URL",
    "YOUR_INSTAGRAM_URL",
    "YOUR_YELP_URL"
  ]
}

Common business types: Plumber, Electrician, Dentist, Attorney, Restaurant, HairSalon, RealEstateAgent, AccountingService, AutoRepair, Physician, Veterinarian

Template 2: Service schema (add for each service you offer)

{
  "@context": "https://schema.org",
  "@type": "Service",
  "serviceType": "YOUR SERVICE NAME",
  "provider": {
    "@type": "LocalBusiness",
    "name": "YOUR BUSINESS NAME"
  },
  "areaServed": {
    "@type": "City",
    "name": "YOUR CITY"
  },
  "description": "DESCRIBE THIS SERVICE IN 1-2 SENTENCES",
  "offers": {
    "@type": "Offer",
    "priceSpecification": {
      "@type": "PriceSpecification",
      "price": "YOUR STARTING PRICE",
      "priceCurrency": "USD"
    }
  }
}

Template 3: FAQ schema (add to any page with questions and answers)

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "YOUR FIRST QUESTION?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "YOUR ANSWER TO THE FIRST QUESTION."
      }
    },
    {
      "@type": "Question",
      "name": "YOUR SECOND QUESTION?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "YOUR ANSWER TO THE SECOND QUESTION."
      }
    }
  ]
}

FAQ schema no longer produces a Google rich result (that expandable-answer feature was retired in May 2026), but it is still particularly valuable because AI systems preferentially cite FAQ-formatted content.

Template 4: Review schema (aggregate rating)

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "YOUR BUSINESS NAME",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "YOUR RATING",
    "bestRating": "5",
    "reviewCount": "NUMBER OF REVIEWS"
  }
}

Important: Only use review schema if the ratings reflect actual customer reviews. Fabricating ratings violates Google's guidelines and can result in penalties.

How to verify your schema markup

After adding schema, verify it works:

  1. Google's Rich Results Test (search.google.com/test/rich-results): paste your URL and it will show which schemas are detected and whether they are valid
  2. Schema.org Validator (validator.schema.org): more detailed validation for any schema type
  3. Google Search Console → Enhancements: after a few days, this shows which rich results Google has detected on your site

Common mistakes to avoid

Mistake 1: Schema does not match page content. Your schema must accurately reflect what is on the page. Do not add a 5-star rating schema if your actual Google rating is 4.2.

Mistake 2: Using schema for things not on the page. Google requires that schema data be visible to users on the page, not hidden or misleading.

Mistake 3: Duplicate schemas. If your CMS or plugin already generates schema, adding it manually creates duplicates that can confuse search engines. Check what already exists before adding.

Mistake 4: Forgetting to update. If your hours, phone number, or address changes, update your schema too. Inconsistencies between your schema data and your actual business information undermine trust.

The 15-minute implementation

  1. Choose your template from above (3 minutes)
  2. Replace placeholder values with your business information (5 minutes)
  3. Add the code to your website using the platform-specific instructions (5 minutes)
  4. Validate with Google's Rich Results Test (2 minutes)

That is it. In 15 minutes, you have given search engines and AI systems a clear, structured understanding of your business, something that 90% of your competitors have not done. The rich results, improved AI visibility, and enhanced search presence will begin appearing within days to weeks as Google recrawls your pages.

Want to see if your schema markup is working and what else your site needs? Run a free SEO check at licheo.com/get-found-check.

Frequently asked questions

What does schema markup do for a small business?

It lets your search listings display details such as star ratings, hours, phone numbers, and price ranges directly in the results, and it makes your content far easier for AI systems to use. Content with FAQ and HowTo schema is 78% more likely to be cited by AI systems.

Do FAQ answers still appear in Google search results?

No. Google retired the FAQ rich result in May 2026, so FAQ markup no longer produces the expandable questions that used to appear under a listing. The markup remains worth adding because AI systems still parse it, but the visible search enhancement is gone.

How do I add schema markup on WordPress?

The easiest route is a plugin. Yoast SEO and RankMath both include structured data features: in Yoast, go to Search Appearance, then Content Types, then the Schema tab for the page type. In RankMath, edit any page and use the Schema tab in its panel. No code is required.

How do I add schema on Squarespace, Wix, or Shopify?

Each has a specific location. Squarespace: Settings, Developer Tools, Code Injection, Header. Wix: Dashboard, Marketing, SEO, SEO Patterns, then the page, then Advanced SEO, Structured Data Markup. Shopify: edit your theme, open Layout and theme.liquid, and paste before the closing head tag.

What does a LocalBusiness schema template contain?

Your business type, name, logo image URL, telephone in international format, email, a nested PostalAddress with street, city, region, postcode, and country, and geo coordinates. Replace the placeholder values with your own details, and keep them identical to what appears on your site and your Google profile.

Should I add Service schema for each service?

Yes, if you want each service to be understood distinctly. A Service block declares the service type, the provider, the area served, a one or two sentence description, and optionally a price specification with a starting price. That gives machines a clear record of what you offer rather than one general business description.

When should I use Review schema?

Only when the ratings reflect actual customer reviews. Aggregate rating markup declaring a rating value, best rating, and review count is legitimate when those numbers are real. Fabricating ratings violates Google's guidelines and can result in penalties, and it is one of the more commonly detected abuses.

How do I verify my schema markup works?

Three checks. Google's Rich Results Test at search.google.com/test/rich-results shows which schemas are detected and whether they are valid. The Schema.org Validator at validator.schema.org gives more detailed validation for any type. And viewing the page source confirms the markup actually ships.

What is the 15-minute implementation sequence?

Choose your template, about three minutes. Replace the placeholder values with your business information, about five minutes. Add the code to your site using the instructions for your platform, about five minutes. Then validate the result with the Rich Results Test, which takes the remaining time.

Rather not do this yourself?

We can simply do it for you

Everything in this article — the website fixes, the content, being found on Google and inside AI assistants like ChatGPT — is exactly the work Licheo does for you, every month. You never learn a tool, and you are never handed a to-do list. You run your business; we make sure your customers can find you.