FAQ Schema Examples: Code Samples & Best Practices
FAQ schema markup uses JSON-LD format to tell search engines that your page contains questions and answers. If you're new to FAQ schema, start with our complete FAQ schema markup guide. Below you'll find copy-paste examples for every common use case—from a single question to complex schemas with HTML formatting. Each example is valid and ready to use on your site.
Learning from FAQ Schema Examples
The best way to understand FAQ schema is to see working examples. Each code sample below follows Google's guidelines and can be copied directly into your website. Replace the placeholder content with your actual questions and answers.
All examples use JSON-LD format, which Google recommends over microdata or RDFa. The code goes inside a <script type="application/ld+json"> tag in your page's HTML—typically in the head or at the end of the body.
Basic FAQ Schema Example (Single Q&A)
The simplest valid FAQ schema contains one question and answer. While you can technically use a single Q&A, multiple questions provide more value.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "What is your return policy?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We offer a 30-day return policy on all unused items. Simply contact our support team to initiate a return."
}
}]
}
</script>Code Explanation
@context: Always "https://schema.org"—tells parsers which vocabulary you're using@type: Must be "FAQPage" for FAQ schemamainEntity: An array containing your questions (even for one question, use an array)name: The question textacceptedAnswer: Contains the answer objecttext: The answer text
Multiple Questions FAQ Schema Example
Most FAQ pages have multiple questions. Add each question as an object in the mainEntity array. There's no strict limit, but 3-10 questions is typical.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How long does shipping take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Standard shipping takes 5-7 business days. Express shipping takes 2-3 business days. Free shipping is available on orders over $50."
}
},
{
"@type": "Question",
"name": "Do you ship internationally?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, we ship to over 50 countries worldwide. International shipping typically takes 10-14 business days."
}
},
{
"@type": "Question",
"name": "What payment methods do you accept?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We accept Visa, Mastercard, American Express, PayPal, Apple Pay, and Google Pay."
}
},
{
"@type": "Question",
"name": "How do I track my order?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Once your order ships, you'll receive an email with a tracking number. You can also track your order by logging into your account."
}
}
]
}
</script>Key Points
- Each question object is separated by a comma (except the last one)
- All questions go in a single FAQPage schema—don't create multiple FAQPage schemas on one page
- Question order in the schema doesn't affect how Google displays them
Skip the manual coding
Our free FAQ Schema Generator creates valid JSON-LD markup automatically. Just enter your questions and answers—copy the generated code to your site.
Try the Free FAQ Schema Generator →FAQ Schema with HTML in Answers
You can include limited HTML in your answers. Google supports links, lists, bold, and italic formatting. The HTML must be escaped properly within the JSON string.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "What sizes do you offer?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We offer the following sizes:<br><ul><li><b>Small</b> - fits 4-6</li><li><b>Medium</b> - fits 8-10</li><li><b>Large</b> - fits 12-14</li><li><b>X-Large</b> - fits 16-18</li></ul>See our <a href=\"/size-guide\">size guide</a> for detailed measurements."
}
}]
}
</script>Allowed HTML Elements
<a href="...">: Links (must escape quotes)<b>and<strong>: Bold text<i>and<em>: Italic text<br>: Line breaks<ul>,<ol>,<li>: Lists<p>: Paragraphs
HTML Escaping Rules
- Double quotes inside HTML must be escaped with backslash:
\" - Alternatively, use single quotes in HTML attributes
- Don't include newlines—use <br> instead
FAQ Schema with Links in Answers
Links in FAQ schema answers can appear in rich results (when eligible) and help users navigate to relevant pages on your site.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "How do I reset my password?",
"acceptedAnswer": {
"@type": "Answer",
"text": "To reset your password: 1) Go to the <a href=\"/login\">login page</a>, 2) Click 'Forgot Password', 3) Enter your email address, 4) Check your inbox for the reset link. If you don't receive the email within 5 minutes, check your spam folder or <a href=\"/contact\">contact support</a>."
}
}]
}
</script>Link Best Practices
- Use descriptive anchor text (not "click here")
- Link to relevant internal pages when helpful
- Avoid excessive links—one or two per answer is usually enough
- Don't use affiliate links or promotional URLs that might violate Google's guidelines
FAQ Schema for Product Pages
Product pages benefit from FAQ schema that addresses common pre-purchase questions. Focus on specifications, shipping, and usage questions specific to the product.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Is this product compatible with iPhone 15?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, this case is fully compatible with iPhone 15, iPhone 15 Pro, and iPhone 15 Pro Max. It supports MagSafe wireless charging."
}
},
{
"@type": "Question",
"name": "What material is this case made from?",
"acceptedAnswer": {
"@type": "Answer",
"text": "The case is made from premium silicone with a soft microfiber lining inside. The exterior provides grip while the interior protects against scratches."
}
},
{
"@type": "Question",
"name": "Does this case come with a warranty?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, all our cases include a 1-year warranty against manufacturing defects. If your case cracks or breaks under normal use, we'll replace it free of charge."
}
}
]
}
</script>When to Use on Product Pages
- Products that require compatibility information
- Items with common customer questions
- Products where specifications matter (electronics, apparel sizing)
- High-consideration purchases where FAQs reduce friction
FAQ Schema for Service Pages
Service businesses can use FAQ schema to address common client questions about process, pricing, and expectations.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How much does a website redesign cost?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Website redesign projects typically range from $5,000 to $25,000 depending on complexity. We provide free consultations to give you an accurate quote based on your specific needs."
}
},
{
"@type": "Question",
"name": "How long does a website redesign take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Most website redesigns take 6-12 weeks from kickoff to launch. Timeline depends on the number of pages, custom features, and how quickly feedback is provided during the review process."
}
},
{
"@type": "Question",
"name": "Do you offer ongoing maintenance after launch?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, we offer monthly maintenance plans starting at $200/month. Plans include security updates, content changes, performance monitoring, and priority support."
}
}
]
}
</script>When to Use on Service Pages
- Service pages where pricing is a common question
- Processes that clients don't understand well
- Pages targeting keywords with informational intent
- Landing pages where FAQs can address objections
FAQ Schema Mistakes to Avoid
Common Errors
- Missing commas: JSON requires commas between array items and object properties (but not after the last item)
- Wrong quote marks: Use straight double quotes ("), not curly quotes (" ")
- Unescaped quotes: Quotes inside text strings need backslash escaping (\")
- Mismatched brackets: Every [ needs a ] and every { needs a }
- Wrong @type: Must be exactly "FAQPage" and "Question"—case sensitive
- Missing required fields: name and acceptedAnswer.text are required
How to Fix Them
- Use a JSON validator to find syntax errors (jsonlint.com)
- Test with Google's Rich Results Test before publishing
- Use a schema generator to avoid manual coding errors
- Copy examples exactly, then modify the content—don't rewrite structure
FAQ Schema Best Practices Checklist
- Match visible content: Schema content must exactly match what's visible on the page
- Use real questions: Include questions customers actually ask, not keywords stuffed as questions
- Provide complete answers: Don't use "Click here to learn more" as an answer—include the actual answer
- Keep it focused: 3-10 questions per page is typical; don't pad with unnecessary FAQs
- One schema per page: Don't add multiple FAQPage schemas—combine all Q&As into one
- Update when content changes: If you edit an FAQ on the page, update the schema to match
- Test before publishing: Validate with Google's Rich Results Test
- Use JSON-LD format: Google prefers JSON-LD over microdata or RDFa
Testing Your Schema
Always test your FAQ schema before publishing. Two essential tools:
Google Rich Results Test
Go to search.google.com/test/rich-results and either enter your page URL (after publishing) or paste your code directly. The tool shows whether your FAQ schema is valid and displays a preview of how it might appear in search results.
Schema.org Validator
For more detailed validation, use validator.schema.org. This checks that your markup follows the Schema.org specification correctly, catching errors that might not affect Google specifically but could matter for other platforms.
Generate valid FAQ schema instantly
Skip the manual coding and avoid syntax errors. Our free FAQ Schema Generator creates valid JSON-LD markup—just enter your questions and answers.
Generate FAQ Schema Free →