Cookies & analytics

    We use cookies for analytics and to serve ads. Accept to enable Google Analytics and AdSense. You can decline to stay opt-out.

    SwiftSchema Logo

    SwiftSchema

    Intuitive Schema Generation at Your Fingertips

    AboutLearnContact
      Stack

      Case Study Stack

      Case study pages tying an Article to the featured Organization plus FAQs and breadcrumb navigation.

      Open generatorValidate in Rich Results Test

      When to use this stack

      • Customer story pages highlighting results and proof
      • Industry-specific case studies that pair narrative with organization context
      • Pages where FAQs address scope, timeline, and implementation details

      What's included

      • Represents the case study story with headline, description, author, and dates.

      • Organization
        Open generator

        Captures the featured customer/company and aligns it to the case study.

      • Frequently Asked Questions
        Open generator

        Answers common buyer questions about scope, timeline, results, and stack.

      • Breadcrumb
        Open generator

        Provides navigation context from the case study hub.

      Required properties (stack union)

      Ensure every applicable required property is present in your implementation. Nested props reference their parent objects (for example, `offers.priceCurrency`).

      author.name
      datePublished
      description
      headline
      itemListElement[].name
      logo
      mainEntity[].@type=Question
      mainEntity[].acceptedAnswer.text
      name
      url

      Recommended properties (stack union)

      about.name
      address.addressCountry
      address.addressLocality
      dateModified
      image
      itemListElement[].item
      mainEntity[].acceptedAnswer.text
      mainEntity[].author.name
      mainEntity[].name
      publisher.name
      sameAs

      Combined JSON-LD

      Paste as a single script tag. Keep product details, offer data, shipping/returns, and FAQ answers in sync with the page.

      Validate
      [
        {
          "@context": "https://schema.org",
          "@type": "Article",
          "@id": "https://www.example.com/case-studies/acme-logistics#article",
          "headline": "How ACME Logistics Cut Delivery Time by 22%",
          "description": "See how ACME Logistics modernized routing and reduced delivery times using Example Platform.",
          "image": "https://www.example.com/images/case-studies/acme-delivery.webp",
          "datePublished": "2025-03-12",
          "dateModified": "2025-03-20",
          "url": "https://www.example.com/case-studies/acme-logistics",
          "author": { "@type": "Person", "name": "Jordan Perez" },
          "publisher": { "@type": "Organization", "name": "Example Platform" },
          "about": { "@id": "https://www.example.com/case-studies/acme-logistics#customer" }
        },
        {
          "@context": "https://schema.org",
          "@type": "Organization",
          "@id": "https://www.example.com/case-studies/acme-logistics#customer",
          "name": "ACME Logistics",
          "url": "https://www.acmelogistics.com",
          "logo": "https://www.example.com/images/logos/acme-logistics.svg",
          "address": { "@type": "PostalAddress", "addressCountry": "US", "addressLocality": "Chicago" },
          "sameAs": [
            "https://www.linkedin.com/company/acme-logistics"
          ]
        },
        {
          "@context": "https://schema.org",
          "@type": "FAQPage",
          "mainEntity": [
            {
              "@type": "Question",
              "name": "What was the project scope?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "We rebuilt ACME’s routing engine, integrated live carrier ETAs, and automated dispatch across 3 regions."
              }
            },
            {
              "@type": "Question",
              "name": "How long did implementation take?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "The first region launched in 6 weeks; full rollout completed in 14 weeks with phased QA."
              }
            },
            {
              "@type": "Question",
              "name": "What technology was used?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "We used Example Platform APIs, a React admin console, and existing telemetry to feed route optimization."
              }
            }
          ]
        },
        {
          "@context": "https://schema.org",
          "@type": "BreadcrumbList",
          "itemListElement": [
            { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.example.com" },
            { "@type": "ListItem", "position": 2, "name": "Case Studies", "item": "https://www.example.com/case-studies" },
            { "@type": "ListItem", "position": 3, "name": "ACME Logistics", "item": "https://www.example.com/case-studies/acme-logistics" }
          ]
        }
      ]

      Implementation steps

      1. Start from your live product detail page content; ensure titles, prices, and availability match the page.
      2. Embed one JSON-LD script in the head or just before the closing body tag using the combined example as a template.
      3. Fill shipping details for each region you serve and keep them aligned with on-page shipping tables.
      4. Attach your canonical MerchantReturnPolicy URL and keep the policy text in sync with Merchant Center.
      5. Add 3–6 FAQs that address purchase blockers (shipping, returns, compatibility) and keep answers consistent with visible content.
      6. Validate in the Rich Results Test and revalidate after price/availability/policy changes.

      Common errors and fixes

      FAQs

      Do I need both Article and Organization?

      Yes. Article is the case study content; Organization anchors the featured customer and can be reused across related assets.

      Can I add results data?

      Include concrete metrics in the Article body and consider adding an image or table; keep JSON-LD aligned to the page.

      References