How Do I Add Author Schema to My Website? | Vibe Code Your Leads

How do I add author schema to my website?

Direct Answer

Embed a JSON-LD script block in your page’s <head> that nests a Person type as the author property inside your BlogPosting schema. Including your name, job title, website URL, and sameAs links to verified profiles. The schema must be in the static HTML source, never injected by JavaScript. A complete working example is below.[1]

Cindy Anne Molchany

Cindy Anne Molchany

Founder, Perfect Little Business™ · Creator, Authority Directory Method™

Best Move

Copy the working JSON-LD example below, replace the placeholder values with your own information, then validate using Google's Rich Results Test before publishing.

Why It Works

JSON-LD in static HTML is the format Google, Bing, and AI crawlers are built to read. It does not require plugins, platforms, or a developer to implement.

Next Step

After adding the schema, view your page source (Ctrl+U or Cmd+U) and search for "schema.org" to confirm it appears in the raw HTML.

The Practical Steps for Adding Author Schema

What are the three formats for adding schema, and why is JSON-LD the right choice?

Schema.org markup can be implemented in three formats: Microdata (HTML attributes embedded directly in your content tags), RDFa (similar attribute-based approach), and JSON-LD (a separate JavaScript object embedded in a script tag). Google officially recommends JSON-LD, and it is the only format recommended for this project.[2]

The reason JSON-LD wins: it is completely independent of your HTML structure. You write it once in a clean block, it does not touch your visible content, and you can modify it without changing anything a visitor sees. Microdata and RDFa require weaving attributes through your content markup. Messy to write, harder to maintain, and more likely to introduce errors.

The critical implementation rule: your JSON-LD must be in the raw HTML source, not injected by JavaScript after page load. AI crawlers do not execute JavaScript. If your schema only appears after a script runs, it is invisible to GPTBot, Claude-Web, and PerplexityBot.

What does a complete working author schema JSON-LD example look like?

This is the exact pattern used on every content page of this site. Replace the values in brackets with your own information:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "BlogPosting",
      "headline": "[Your page H1. Exact, verbatim]",
      "description": "[Your TL;DR text. 1-2 sentences]",
      "url": "https://[yourdomain.com]/[page-path]",
      "datePublished": "2026-03-18",
      "dateModified": "2026-03-18",
      "author": {
        "@type": "Person",
        "name": "Cindy Anne Molchany",
        "url": "https://perfectlittlebusiness.com",
        "jobTitle": "Founder, Perfect Little Business",
        "sameAs": [
          "https://www.linkedin.com/in/cindyannemolchany/",
          "https://www.instagram.com/cindyannemolchany/"
        ]
      },
      "publisher": {
        "@type": "Organization",
        "name": "Perfect Little Business",
        "url": "https://perfectlittlebusiness.com"
      }
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://[yourdomain.com]"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "[Pillar name]",
          "item": "https://[yourdomain.com]/[pillar-path]/"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "[Cluster name]",
          "item": "https://[yourdomain.com]/[cluster-path]/"
        },
        {
          "@type": "ListItem",
          "position": 4,
          "name": "[Page title]",
          "item": "https://[yourdomain.com]/[page-path]"
        }
      ]
    }
  ]
}
</script>

This block goes inside the <head> element of your HTML page, before the closing </head> tag. It is pure text. No build step, no plugin, no framework required.

How do you add author schema to a custom HTML site step by step?

For a static HTML site (like the one built by the Authority Directory Method), the implementation is direct:[3]

  1. Open your page's HTML file in a code editor.
  2. Locate the </head> tag. You will insert your schema block just before this closing tag.
  3. Copy the JSON-LD example above. Replace all bracketed placeholder values with your actual data: your headline, description, URL, name, jobTitle, website, LinkedIn URL, and Instagram URL.
  4. Save the file and view the page source in a browser (Ctrl+U or Cmd+U). Search for schema.org to confirm the block appears in the raw HTML.
  5. Validate the schema using Google's Rich Results Test (search.google.com/test/rich-results) by pasting the page URL.

Repeat this process for every content page. The values that change per page: headline, description, url, datePublished, dateModified, and the breadcrumb trail. The author block stays identical across all pages. Because it is the same author on every page.

How do you add author schema in WordPress using existing tools?

For a WordPress site, the most straightforward path is using Yoast SEO or RankMath. Both have author schema configuration built in. The general process:

  • Install and activate Yoast SEO or RankMath
  • In the plugin settings, locate the Schema section
  • Configure your Person entity with your name, URL, and sameAs links
  • Set each post type (posts, pages) to output Article or BlogPosting schema with author attribution

The plugin will generate and inject the JSON-LD automatically on each page. However: verify that the schema is present in the static HTML source, not rendered client-side via JavaScript. Some plugin configurations inject schema via JS. Use View Source (not DevTools Elements panel) to confirm.

For full control, you can also add a custom JSON-LD block to your WordPress theme's header.php or use a header code plugin to insert the script tag. Manual insertion gives you more precision over exactly what appears in the schema, at the cost of more maintenance when pages change.

How do you validate your author schema and diagnose errors?

Schema validation is non-negotiable. An incorrectly formed JSON-LD block can be silently ignored by AI engines. The page looks fine, but the schema signal is lost. Two validation tools:

  • Google Rich Results Test (search.google.com/test/rich-results). Paste your URL or raw code. Shows exactly how Google parses the schema and flags errors or missing recommended properties.
  • Schema.org Validator (validator.schema.org). More granular validation against the Schema.org specification. Useful for catching property-level errors that the Google tool may not surface.[4]

Common errors to watch for:

  • Invalid JSON. A missing comma, unclosed bracket, or extra quote breaks the entire block silently. Use a JSON linter (jsonlint.com) if the validator reports a parse error.
  • Missing required properties. BlogPosting requires at minimum: headline, author. Both validators will flag missing required fields.
  • sameAs links that redirect or 404. If your LinkedIn URL has changed, the sameAs link becomes a broken identity claim. Audit your profile URLs annually.

Run validation when you first add schema, and once per quarter thereafter. Schema is infrastructure. It needs the same maintenance attention as any other technical element of your site.

The VCYL Perspective

The implementation barrier here is lower than most experts expect. Author schema is not a developer task. It is a copy-paste-and-edit task. The JSON-LD format is human-readable. You can understand it without knowing how to code. The fields map directly to real things you already know about yourself: your name, your title, your URL, your LinkedIn.

What I find is that the barrier is psychological, not technical. Most entrepreneurs see <script type="application/ld+json"> and mentally file it under "things my developer handles." But when you are vibe coding your own site, this becomes your territory. And it should, because you are the person who knows your credentials best.

The FAQ cluster on this site (Cluster 3A) was the first place I added schema when I built this directory. Then author schema on every node in Cluster 1A. The combination. FAQPage + BlogPosting + Person as author. Is visible in the source of every page you are reading right now. That is not an abstraction. View Source on this page and you will see exactly the pattern described here, implemented exactly as described. The method teaches what the site does.

More on adding author schema

Does author schema need to be in the HTML head, or can it go in the body?

JSON-LD schema blocks can technically go in either the head or the body. Google recommends placing them in the head for consistency and to ensure they are parsed before the page body is processed. For AI crawlers that may not execute JavaScript, the placement in static HTML source matters. Always write the schema directly in the HTML, never inject it via JavaScript.

Do I need to add author schema to every page, or just my blog posts?

Every content page that was written by a named expert should carry author schema. For an Authority Directory, that means every node post. Static pages like your homepage, contact page, or terms of service do not need author schema. They are not content authored by an expert. But every piece of substantive expertise-based content should identify its author in structured data.

Can I add author schema to a WordPress, Squarespace, or Wix site?

Yes. WordPress: use a plugin like Yoast SEO or RankMath and configure the author schema in the plugin settings, or add JSON-LD directly via a custom header code block. Squarespace and Wix: use their Code Injection features (found in site settings) to add a JSON-LD script block to page headers. For any platform, verify that the schema appears in the HTML source by using View Source. If you only see it after JavaScript renders, AI crawlers cannot read it.

How do I validate that my author schema is working correctly?

Use Google's Rich Results Test (search.google.com/test/rich-results) or Schema.org's validator (validator.schema.org). Paste your page URL or the raw JSON-LD code. The validator will confirm whether the schema is valid, show you how Google parses it, and flag any missing or incorrect properties. Run validation after every schema change.

What is the @graph pattern and should I use it?

The @graph pattern lets you include multiple schema types in a single JSON-LD block, rather than writing separate script tags for each type. It is the recommended pattern for pages that stack multiple schema types. For example, BlogPosting + FAQPage + BreadcrumbList on a single node post. Using @graph keeps your schema organized and reduces HTML clutter. It is the pattern used throughout this site.

Related pages

Cindy Anne Molchany

Cindy Anne Molchany

Cindy is the founder of Perfect Little Business™ and creator of the Authority Directory Method™. She helps entrepreneurs (coaches, consultants, and service providers) build AI-discoverable authority systems that generate qualified leads without chasing. This site is built using the exact method it teaches.

vibecodeyourleads.com

See What AI Sees When It Looks at Your Website

Take the free AI Visibility Scan to discover your current positioning, or explore the complete build system.

Take the Free AI Visibility Scan Learn About the Build System