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

      Accessibility Features Stack

      Accessibility feature/support pages with WebPage + Service or Product context, FAQs, and breadcrumbs.

      Open generatorValidate in Rich Results Test

      When to use this stack

      • Accessibility features pages for apps or products
      • Support pages outlining accommodations and accessibility policies
      • Pages where FAQs clarify assistive technology and compliance

      What's included

      • Declares the accessibility page and its description.

      • Describes accessibility support services or accommodations offered.

      • Links accessibility features to the specific product or app.

      • Frequently Asked Questions
        Open generator

        Answers questions about assistive tech, compliance, and support.

      • Breadcrumb
        Open generator

        Provides navigation context to the accessibility page.

      Required properties (stack union)

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

      areaServed.name
      description
      itemListElement[].name
      mainEntity[].@type=Question
      mainEntity[].acceptedAnswer.text
      name
      provider.name
      serviceType
      url

      Recommended properties (stack union)

      brand.name
      dateModified
      description
      image
      inLanguage
      itemListElement[].item
      mainEntity[].acceptedAnswer.text
      mainEntity[].author.name
      mainEntity[].name
      offers.url

      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": "WebPage",
          "@id": "https://www.example.com/accessibility#page",
          "name": "Accessibility Features",
          "description": "Accessibility features and support options for the Northwind app.",
          "url": "https://www.example.com/accessibility",
          "inLanguage": "en",
          "dateModified": "2025-07-01"
        },
        {
          "@context": "https://schema.org",
          "@type": "Product",
          "@id": "https://www.example.com/accessibility#product",
          "name": "Northwind App",
          "description": "Productivity app with screen reader and keyboard navigation support.",
          "url": "https://www.example.com/app",
          "brand": {
            "@type": "Organization",
            "name": "Northwind"
          },
          "image": "https://www.example.com/images/app-hero.webp"
        },
        {
          "@context": "https://schema.org",
          "@type": "Service",
          "@id": "https://www.example.com/accessibility#service",
          "name": "Accessibility Support",
          "serviceType": "AccessibilityAssistance",
          "description": "Accessibility support for assistive tech compatibility and accommodations.",
          "provider": { "@type": "Organization", "name": "Northwind" },
          "areaServed": { "@type": "AdministrativeArea", "name": "United States" },
          "offers": {
            "@type": "Offer",
            "url": "https://www.example.com/accessibility#contact"
          }
        },
        {
          "@context": "https://schema.org",
          "@type": "FAQPage",
          "mainEntity": [
            {
              "@type": "Question",
              "name": "Is the app compatible with screen readers?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. The app supports VoiceOver and TalkBack with labeled controls."
              }
            },
            {
              "@type": "Question",
              "name": "Do you offer keyboard-only navigation?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. All key flows are keyboard accessible and focus states are visible."
              }
            },
            {
              "@type": "Question",
              "name": "How can I request accommodations?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Use the accessibility support form or email the support team."
              }
            }
          ]
        },
        {
          "@context": "https://schema.org",
          "@type": "BreadcrumbList",
          "itemListElement": [
            { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.example.com" },
            { "@type": "ListItem", "position": 2, "name": "Support", "item": "https://www.example.com/support" },
            { "@type": "ListItem", "position": 3, "name": "Accessibility", "item": "https://www.example.com/accessibility" }
          ]
        }
      ]

      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 Service and Product?

      Use Product for feature descriptions and Service for support processes. Include both if both are visible on the page.

      Should I include compliance standards?

      Yes. Mention WCAG level or accessibility policies in the page content when applicable.

      References