NexaMarTech
    Back to Blog
    SEO
    Add Schema Markup Without a Developer — SEO article banner

    Add Schema Markup Without a Developer

    NexaMarTech Team2026-10-069 min read

    Add schema markup without a developer: pick a type, generate JSON-LD, paste it in your CMS, and test it. Includes common types and a short example for each.

    Schema markup is a small JSON block that tells search engines what a page is: an article, a business, a product, a list of questions. You do not need a developer to add the common types. You need the right type, fields that match the visible page, and a place in your CMS to paste a script tag. Generate the block with the free schema markup generator, then follow the paste-and-test steps below.

    This is a how-to for marketers who can edit a page. It is not a guide to video objects, wearable search or private APIs. If you are preparing pages for answer engines after the markup exists, see Schema Markup for LLMs as a related read — different job, same JSON-LD file format.

    What schema markup is

    Search engines already see your headings and paragraphs. Schema (schema.org types in JSON-LD) adds explicit names: this string is the organization, this is the author, this is a question and this is the answer. Google and other engines may use that to show richer results or to understand the entity. Markup does not replace good titles and it does not guarantee a rich result. Google still checks eligibility and that the visible page matches the JSON.

    JSON-LD is the format to use. It lives in a <script type="application/ld+json"> tag. You can put that tag in the document head or anywhere in the HTML. You do not need Microdata attributes on every heading.

    Common types you can add yourself

    The generator supports the types we actually put on client sites. Pick one per purpose. Do not stack five conflicting organization names on one template.

    TypeUse onFields you will fill
    OrganizationHomepage and aboutName, URL, description, logo URL, phone
    LocalBusinessA real location people can visit or callName, URL, address, phone, price range
    WebSiteThe site as a whole (usually the homepage)Name, URL, short description
    ArticleA blog or resource postHeadline, description, author, page URL, date published
    FAQPageA page with visible questions and answersEach question and its visible answer
    ProductA product page with a priceName, description, URL, brand, price
    SoftwareApplicationA tool or app pageName, description, URL, category, operating system, price

    Start with Organization (and WebSite if you want the site name explicit) plus Article on posts you care about. Add FAQ only where the questions are on the page, not in a hidden accordion stuffed with keywords. Add LocalBusiness only if the address is real.

    How to generate the JSON-LD

    1. Open the schema markup generator.
    2. Choose the type from the dropdown. The form fields change with the type.
    3. Replace the sample values with your real name, URL and copy. The completeness radar is a reminder to fill empty URL fields — those are the usual miss.
    4. Copy the whole <script type="application/ld+json">…</script> block, not just the inner JSON.

    The generator ships two FAQ questions. To add more, duplicate a Question object in the JSON and keep name plus acceptedAnswer.text. Do not invent answers that are not on the page.

    Examples you can adapt

    These are shortened examples of what the generator emits. Swap in your own strings. They are not live markup from a customer site.

    Organization

    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Organization",
      "name": "North Harbor Coffee",
      "url": "https://www.example.com",
      "description": "Neighborhood coffee roaster in Portland.",
      "logo": "https://www.example.com/logo.png",
      "telephone": "+1 555 0100"
    }
    </script>

    Article

    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Article",
      "headline": "How we brew filter coffee at home",
      "description": "A simple ratio and grind starting point for a pour-over.",
      "author": { "@type": "Organization", "name": "North Harbor Coffee" },
      "url": "https://www.example.com/blog/filter-coffee",
      "datePublished": "2026-03-01"
    }
    </script>

    FAQPage

    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Do you ship beans?",
          "acceptedAnswer": { "@type": "Answer", "text": "Yes, within the continental US." }
        },
        {
          "@type": "Question",
          "name": "Are you open on Sundays?",
          "acceptedAnswer": { "@type": "Answer", "text": "Yes, 8am to 2pm." }
        }
      ]
    }
    </script>

    Notice the answers are short and match what a visitor would read on the page. If the page says you are closed on Sunday, the FAQ JSON cannot say you are open.

    How to paste it without a developer

    You need a field that accepts raw HTML or a “custom code” / “header scripts” box. The exact label depends on the CMS. The pattern is the same: paste the script once, publish, then test.

    • WordPress (block editor). In the page or post, add a Custom HTML block and paste the script. Some SEO plugins also have a “schema” or “custom JSON-LD” field — use one place, not both, or you will emit two Article objects.
    • WordPress (classic or theme header). If your theme or a header plugin offers “scripts in head,” that is a valid home for Organization on every page. Keep Article markup on the post, not in the global header.
    • Webflow. Page settings → Custom code → Head. Site-wide Organization goes in the project head; per-page Article goes on that page only.
    • Shopify. Theme customizer “Custom liquid” or the theme’s custom code box for the homepage. Product pages should use Product markup that matches the price on the page. If a Shopify app already injects Product JSON-LD, do not paste a second copy.
    • Squarespace / Wix. Look for page-level code injection or an SEO / structured data panel. If the platform already emits Organization, only add types it does not offer (often FAQ).
    • Google Tag Manager. A Custom HTML tag on the relevant pages works when the CMS has no code box. Fire it on the exact URLs, not All Pages, unless the object is identical sitewide (Organization). GTM is easy to forget on a later rebuild — prefer the CMS when you can.

    Rules that keep you out of trouble:

    • One Organization name string everywhere. If the homepage says “North Harbor” and schema says “North Harbor LLC Coffee Roasters Inc.,” pick one public name.
    • Do not paste Organization on every blog template with a different description each time.
    • Do not mark up reviews, prices or FAQs that a visitor cannot see.
    • If the theme already prints JSON-LD, view source and search for ld+json before you add another block.

    How to test

    1. Publish the page (or use a preview URL that is publicly fetchable). Testers cannot see a local draft on your laptop.
    2. View source and confirm the script tag is present, with valid JSON (no smart quotes, no missing commas).
    3. Paste the live URL into Google’s Rich Results Test. It reports which rich-result types are eligible and which errors it found.
    4. Optionally paste the same URL or the raw JSON into the Schema.org validator if you want type-level linting beyond Google’s rich-result subset.
    5. Fix errors in the generator, recopy, and replace the old block. Do not leave two versions on the page.

    Rich results are optional and not guaranteed even when the test is clean. The test is still the right gate: invalid JSON helps no one.

    After Organization is live, run the entity consistency checker on the homepage. It compares the homepage title, about H1, Organization name and optional LinkedIn / Knowledge-style names. Schema that says one legal name while the H1 says another is why knowledge features stay messy. That tool is the right follow-up to this paste job.

    Keep the strings aligned

    Markup is only as good as the name you repeat. Decide the public brand string, put it in Organization, and use it on the about H1, the title suffix and the directory listings. If you rebranded, redirect the old domain and stop emitting the old name in JSON-LD. The entity checker exists because this drift is common and hard to see by eye.

    Frequently asked questions

    Will this guarantee rich results?

    No. The generator and this process get the syntax right and keep the copy honest. Google still decides eligibility.

    Can I put Organization on every page?

    Yes, if the object is the same every time. Do not emit two different organization names from two templates.

    Where do I put the script?

    Anywhere in the HTML, typically the head. A custom HTML block in the body is fine if that is what your CMS allows.

    Do I need FAQ schema on every page?

    No. Use it on pages that already show questions and answers. Empty or keyword-stuffed FAQs are a quality problem, not a ranking trick.

    What if I cannot find a code box?

    Use GTM custom HTML on those URLs, or ask whoever owns the theme for one header slot. You still do not need a full development sprint for a single JSON-LD block.

    Generate and paste today

    Open the free schema markup generator, pick Organization or Article, copy the script, paste it in the CMS, and run the Rich Results Test. Then check the brand string with the entity consistency checker. If every template is missing markup, that is a templates problem, not a one-page problem.

    Free calculators: ROAS calculator · LTV calculator · CPM calculator · CTR calculator · CPC calculator

    Want to implement these strategies?

    Book a free consultation with our SEO experts.

    Get Started