What does needs work mean in the result?
IndieSchema reads every JSON-LD block in the page, lists each entity and its types, and checks six Google feature families against their required fields: site name, software app, product snippet, breadcrumb, article, and organization. Ready means every required field this check can see is present. Needs work names the fields that are missing, with the Google rule linked beside them.
Article and Organization show as recognized rather than ready, because Google publishes recommended fields for them but no required ones, so there is nothing to fail. Any other type, such as FAQPage or Event, stays in the inventory with its fields listed and gets no Google verdict from this check.
How do I fix missing required fields in structured data?
The result names each missing field under the feature it belongs to. A product snippet needs name plus a complete offers, aggregateRating, or review branch. A software app needs name, offers.price, and a rating or review. A breadcrumb needs at least two ListItem entries with a position and a name. Site name needs a WebSite node with name and a root url, placed on the site root, not on an inner page.
Add the fields, deploy, and run the check again. Recommended fields, such as image and description on a product or applicationCategory on an app, are listed separately and do not block a pass. They are worth adding anyway, because Google uses them to fill out the result when it shows one.
What if my page has no structured data at all?
The result gives you a block to start from, drawn only from what the page already says: its title, meta description, canonical link, og:image, language, and publish date. The site root gets a WebSite node, an article gets Article with its date and author, and any other page gets WebPage with a breadcrumb trail built from the path. Values the page does not carry are marked for you to fill in. No rating, offer, or review is invented.