Detecting Invalid or Incomplete Markup
This lesson covers
- The difference between errors and warnings
- The most common invalid markup patterns
- How to spot markup that misrepresents the page
- How to group errors by template
Short answer
Invalid markup has errors that stop it from being used, such as broken JSON, unknown types, or missing required properties. Incomplete markup has warnings for missing recommended properties. Find both with your crawler's validation and the Rich Results Test, check values against visible content, and group every issue by the template or plugin that generates it.
A Pasig gadget shop’s product markup showed "price": "0" on every product, because the plugin read a field that was empty for items “on sale.” Google flagged invalid prices on 1,200 products, and price rich results disappeared.
Common invalid patterns
- Broken JSON: trailing commas, missing quotes, unescaped line breaks
- Unknown types or properties: typos like
"@type": "Prodcut" - Missing required properties: Product without offers, review, or aggregateRating
- Wrong value formats: price with ”₱” inside the number, dates not in ISO 8601, relative URLs
- Empty or placeholder values:
"price": "0","name": "" - Wrong context: Event markup on a page that is not an event
Mismatch and policy problems
- Prices or availability different from the visible page
- Reviews or ratings not shown to users
- Self-serving reviews on LocalBusiness or Organization
- Marked-up content hidden from users
These matter more than warnings because they can remove eligibility or lead to a manual action.
How to find them
- Crawler Structured Data tab: filter Validation Errors, Validation Warnings, Parse Errors.
- Export issues with URLs and group by template.
- Use custom extraction to pull key values (price, availability) and compare with visible values.
- Test a sample in the Rich Results Test to confirm Google’s view.
Practice: error, warning, or policy problem?
Sort each item into the right group.
-
Trailing comma breaks the JSON-LD block
Answer: Error.
-
Product missing 'brand' (recommended)
Answer: Warning.
-
Markup price ₱999, page shows ₱1,499
Answer: Policy or mismatch.
-
Product with no offers, review, or rating
Answer: Error.
-
Five-star rating in markup, no reviews on page
Answer: Policy or mismatch.
Common mistakes
- Fixing warnings before errors.
- Validating syntax but not values. Valid markup can still be wrong.
- Fixing URLs one by one instead of the plugin or template.
Your action
Next, you will validate schema and check rich result eligibility.
Key terms
- Error
- A problem that makes markup invalid or ineligible for rich results, such as a missing required property.
- Warning
- A missing recommended property. The markup still works, but may show less information.
- Required property
- A property Google needs for a rich result, such as name for Product or offers, review, or aggregateRating.
- Markup mismatch
- Structured data values that differ from what users see, such as a different price or fake reviews.
Questions beginners ask
Should I fix every warning?
No. Fix errors first. Add recommended properties where data exists and adds value, such as availability or brand.
What happens if markup does not match the page?
It can lose rich result eligibility and, in serious cases, trigger a structured data manual action.
Why is my JSON invalid?
Usually a trailing comma, a missing quote, or unescaped characters from a CMS field. One error breaks the whole block.
Are self-serving reviews allowed?
Google does not show review stars for LocalBusiness or Organization reviews that the business publishes about itself.
Related lessons
Want someone to handle SEO for your business while you learn? The team at Remar Digital can help.