# Products missing core Offer fields

A per-URL report: one row per page that matches, over the pages a crawl reached.

## What this report returns

Price, currency, and availability are the minimum an agent needs to quote a product or decide it's buyable; an Offer missing any of them can't be transacted on, however rich the rest of the markup.

A row appears here when any of these is wrong, worst first:

-   **Missing Price**An Offer has no price, so agents can't quote or compare the product.**Fix** Add `"price"` to the offer, e.g. `"price": "49.99"`.
-   **Non-Numeric Price**The price isn't numeric (e.g. `"$19.99"` with the symbol embedded), so agents can't parse it.**Fix** Keep price purely numeric (`"19.99"`) and put the currency in `priceCurrency`.
-   **Missing Currency**The Offer has no `priceCurrency`, so the price is ambiguous across markets.**Fix** Add the ISO 4217 code, e.g. `"priceCurrency": "USD"`.
-   **Invalid Currency**PriceCurrency isn't a 3-letter ISO 4217 code (e.g. `"$"` or "US Dollars"), so agents can't reliably identify the currency.**Fix** Use the code, e.g. `"USD"`, `"GBP"`, `"EUR"`. (Format is checked, not membership.)
-   **Missing Availability**An individual Offer has no availability, so agents can't tell whether it's buyable right now (an AggregateOffer price range is exempt). Google lists this one as recommended rather than required, so it's a readiness gap, not a spec violation.**Fix** Add `"availability": "https://schema.org/InStock"` (or the accurate value).

This is a readiness bar, not a conformance one: the schema.org Offer type marks nothing required, Google Search's product requirements expect price and currency (currency for merchant listings), and availability is Lumar's addition because stock status is what decides whether an agent can buy.

A flagged page is valid markup that no agent can act on.

## The columns it shows

Every defect this technology can carry is a column in the grid, worst first, so nothing is hidden behind a filter you have to know to apply.

-   Product Schema Findings`productSchemaFindings`
-   Product Schema Price Samples`productSchemaPriceSamples`
-   Product Schema Currency Samples`productSchemaCurrencySamples`
-   Product Schema Missing Price`productSchemaMissingPrice`
-   Product Schema Non-Numeric Price`productSchemaNonNumericPrice`
-   Product Schema Missing Currency`productSchemaMissingCurrency`
-   Product Schema Invalid Currency`productSchemaInvalidCurrency`
-   Product Schema Missing Availability`productSchemaMissingAvailability`

## About Product / Offer schema

Price, availability and identifiers an agent can quote.

[Read how Product / Offer schema is checked](https://agentic-readiness.lumar.io/docs/commerce/product-schema), including the specification it is validated against and a worked correct and broken example.

## Running it

This report comes with Agentic Readiness in Lumar and appears on every crawl of any project that has it turned on. [See the whole set](https://agentic-readiness.lumar.io/scan-at-scale), or check a single URL with the [scanner on this site](https://agentic-readiness.lumar.io/), which runs the same code with no account.

[Get Lumar pricing →](https://www.lumar.io/pricing/)
