Home » all posts » how to add schema markup / json-ld in blogger without ripping your hair out

how to add schema markup / json-ld in blogger without ripping your hair out

Custom Coding Content Using Blogger’s Archaic Interface

If you’ve been working with blogger and you’re familiar with SEO, you’ve probably heard about schema markup or structured data and if you’ve ever used Blogger before you probably know how easy it is to break their non-intuitive interface.

Click here to go straight to the code

Is Schema-markup Possible On Blogger/Blogspot?

The short answer is YES! But it can be challenging to add without breaking your blog altogether, so you need to make sure you backup your blog’s existing XML file before doing this stuff. Seriously.. one wrong move could take hours to repair if you don’t, so just make sure to save the XML file for later before touching the template’s HTML.

What is JSON-LD (and why does it matter?)

If you’re not aware of what it does, it’s what makes those tiny boxes of information show up on Google after you run a search, rather than a long list of links to sort through. It enhances generative AI, sort of like ChatGPT and Gemini. For trusted businesses, markup is also what drives answer engines to use their content to answer questions which is often a generated AI response.

This is what helps search engines understand your content and in some cases it’s what enables rich results for questions. For example you pull out your phone and say, “Hey google who was the blonde guy that played Tyler Durden in Fight Club?” Google will respond with an answer directly on the results page so you don’t need to ever leave the results page.

Blogger’s Limitations With Coding & JSON

Blogger has a highly customizable framework, but you will undoubtedly run into limitations.

Where JSON-LD goes in Blogger

Option 1: Inside <head>

If you’re trying to edit your theme, go to Theme → Edit HTML. First save the XML file or choose the “backup” option.

Then, find the <head> section, which should look something like this:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Typing Effect</title>
  <style>
    some.css {
     stuff: here;
    }
</style>
</head>

Place your schema inside the <head> tag like this:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Typing Effect</title>
<script type="application/ld+json">
{
  "@context": "https://schema.org"
}
</script>
  <style>
    some.css {
     stuff: here;
    }
</style>
</head>

For the theme section speifically, you can use something universal like brand or organization.

Option 2 (Easier): Top of your page or post

If you’re working inside a page or post, place it at the very top of your HTML. You shouldn’t need to add a head tag, but this is dependent on any other custom code you’ve added. If you aren’t sure what type of schema to add, put your content into ChatGPT or Gemini and ask what to use, and check the schema library and test your code on Schema’s Markup Validator.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "Make an Animated Carousel For Your Website",
  "description": "Step-by-step guide for implementing a basic carousel using HTML, CSS, and JavaScript.",
  "step": [
    {
      "@type": "HowToStep",
      "name": "Create HTML Structure",
      "text": "Define a container and slides using div elements."
    },
    {
      "@type": "HowToStep",
      "name": "Add CSS Styling",
      "text": "Use flexbox and transitions to style slides."
    },
    {
      "@type": "HowToStep",
      "name": "Add JavaScript Logic",
      "text": "Use index-based navigation to move slides."
    }
  ]
}
</script>

For informational posts, you’ll likely be using FAQ or How-to schema markup, for retail you’ll be using Product properties, etc.

Common Mistakes to Avoid

  • Forgetting the <script type=”application/ld+json”> wrapper
  • Placing raw JSON directly in <head>
  • Using invalid schema types
  • Breaking JSON formatting with missing commas, quotes, or brackets – run it through schema.org’s validator tool to make it’s good to go. Quick note: Schema’s tool doesn’t care if you add <script type=”application/ld+json”> so it won’t remind you if you forget.
  • Adding schema that does not match the actual page content – I cannot confirm, but the general consensus is that this can also flag your site, or blacklisted if you’re a frequent, serial offender. …And believe me, I have worked on sites that have been blacklisted for whatever reason, and it is NOT easy getting out of Google jail

Even one small formatting issue can cause the entire script to be ignored.

How to Test Your Schema

Before publishing, always validate your markup.

Use Google’s Rich Results Test or Schema Markup Validator. Paste your code or page URL and check for errors, warnings, and missing properties, ESPECIALLY if you had ChatGPT or Gemini write it – they can and do make mistakes (I learned this the hard way.)

How Much Schema Should You Use?

You’re not limited to just one type.

You can include multiple types on a single page, for example:

  • BreadcrumbList
  • HowTo
  • Article
  • FAQPage

For Blogger you’ll have to do this manually, but if you’re using WordPress or Shopify there are plug-ins and templates that will automtically do it.

As long as the content is relevant you could have 20 on a page and it would be fine (I wouldn’t actually recommend having any webpage that long, but I’ve seen crazier.)

Final Thoughts

JSON-LD is one of the simplest ways to improve search engine interpretation of your content esp if you’re building technical or instructional pages.

It doesnt require plugins, advanced tools or rocket science.. it just requires some attention to detail and a basic understanding of the format. Most people will end up using just a few different types. For example if you’re a food blogger you might use find yourself mainly using recipe and memorizing the code in no time!

If your schema isn’t showing up, or something isn’t validating correctly, it’s usually a small issue that’s easy to miss but critical to fix. Seriously, just run it through ChatGPT and the validators to be sure. It is VERY easy to miss a random comma.

Need Help Getting It Working?

If you’re running into issues, especially with Blogger’s quirks, you’re not alone.

A lot of the time it’s not about what to write, it’s about where and how it’s implemented.

If you’ve tried adding schema and it’s still not behaving the way you expect, or it’s taking longer than you had thought, feel free to reach out to me on LinkedIn or by email and we can set something up! Sometimes a quick second set of eyes can save a lot of time.

Scroll to Top