This factor reports whether RankGear finds an Offer @type in a page’s raw HTML source. It returns a simple 1 (found) or 0 (not found). The important caveat: it pattern-matches the source text rather than validating a real JSON-LD graph, so a matching string can register even when the structured data itself is invalid.
| Factor ID | RG-SCJ-183 |
|---|---|
| Family | Structured Data — JSON-LD |
| Measurement | Binary presence (0 / 1) |
| Measured zone | Raw rendered HTML |
What it measures
The factor reports whether RankGear finds an @type value of Offer in the page’s raw source. In Schema.org terms, an Offer describes the terms under which a product or service is offered — price, currency, availability, condition, seller, and validity. This is a presence check on that markup, not an assessment of its quality or correctness.
How RankGear measures it
RankGear searches the raw HTML for "@type": "Offer", tolerating flexible whitespace around the pattern and optionally allowing a schema: prefix. Matching is case-insensitive, so capitalization differences do not change the result. If the pattern is found the factor is 1; otherwise it is 0.
What RankGear looks for
"@type": "Offer"
"@type":"schema:Offer" <!-- schema: prefix and tight whitespace also match -->| Value | Meaning |
|---|---|
| 1 | An Offer @type string was found in the raw source. |
| 0 | No Offer @type string was found. |
How to optimize it
Use Offer only for a genuine, current offer with an accurate item, seller, price, currency, availability, condition, eligibility, and validity dates. Every property should reflect content a user can verify on the page itself. Because this factor only checks for the presence of the markup, treat a value of 1 as confirmation that the string exists — not as proof that the offer data is complete or valid. Adding Offer markup to a page that has no real offer is not the goal.
Important considerations
- The detector pattern-matches source text rather than validating a full JSON-LD graph, so it confirms presence of a string, not correctness of the structured data.
- A matching string that sits outside valid JSON-LD — for example in a code sample, comment, or unrelated script — can still produce a 1.
- Capitalization differences do not affect detection; matching is case-insensitive.
- Validate the complete structured data independently (for example with a schema validator) before relying on it.
- This is a prioritization signal that relates to patterns in a measured result set; it does not on its own make a page rank, and correlation is not causation.
Related factors
Part of the Factors reference · how RankGear measures · glossary.