Schema markup can go in two primary locations on your HTML: the head section or the body section, depending on the schema type and your implementation approach. For most schema types, you'll embed it in the head section using JSON-LD format, which is Google's preferred method. This keeps your markup separate from your HTML content and makes it easier to manage without affecting page layout or styling. JSON-LD in the head is ideal for organization-level schema, article metadata, breadcrumbs, and structured data that applies to the entire page. You simply place a `<script type="application/ld+json">` tag containing your schema code before the closing `</head>` tag. This approach works cleanly for agencies because it's easier to implement across multiple pages using template systems or tag management platforms like Google Tag Manager.
For certain schema types—particularly those tied to specific HTML elements—you can use microdata or RDFa directly within the body section where the content lives. For example, you might add schema attributes directly to product listings, review containers, or event information within your body HTML. However, JSON-LD in the head remains the more common and flexible choice for most use cases since it doesn't require modifying existing HTML elements.
When implementing for clients, consider your content management system. If you're using WordPress, plugins like Yoast SEO or Schema Pro handle placement automatically. For custom builds or Webflow sites, you typically have direct access to add JSON-LD in the head section through code injection areas. Avoid duplicating schema across multiple locations on the same page—this creates conflicting signals that can confuse search engines. A practical workflow is to audit what schema already exists (many modern CMS platforms auto-generate basic schema), then supplement with additional structured data for rich snippets you want to target, like FAQ schema, ratings, or recipe data. Always validate your markup using Google's Rich Results Test before deploying to production. This prevents clients from requesting changes after go-live and ensures you're capturing the SEO benefits correctly from day one.
Need programmatic SEO content like this deployed across hundreds of pages for your clients? That's exactly what we build.
Get a free sample →