This factor reports whether RankGear finds a SingleFamilyResidence @type declared in a page’s raw JSON-LD source. It returns 1 when the string is present and 0 when it is not — but it pattern-matches source text rather than validating a real structured-data graph, so a 1 confirms the string exists, not that the schema is valid.
| Factor ID | RG-SCJ-239 |
|---|---|
| Family | Structured Data – JSON-LD |
| Measurement | Binary presence (0 / 1) |
| Measured zone | Raw rendered HTML |
What it measures
This factor reports whether RankGear finds an @type value of SingleFamilyResidence in the page’s raw source. It is a simple presence check: the property signals that the page has attempted to describe a single-family home using JSON-LD structured data, a schema type real-estate listings and property pages use to make a residence machine-readable to search engines.
How RankGear measures it
RankGear searches the raw HTML for the "@type": "SingleFamilyResidence" string, allowing flexible whitespace around the colon and optionally permitting a schema: prefix on the type value. Matching is case-insensitive, so capitalization differences do not affect the result. If a match is found anywhere in the source, the factor returns 1; otherwise it returns 0.
What RankGear looks for
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SingleFamilyResidence",
"name": "123 Maple Street",
"address": { "@type": "PostalAddress", ... },
"numberOfRooms": 4,
"floorSize": { "@type": "QuantitativeValue", ... }
}
</script>| Value | Meaning |
|---|---|
| 1 | The SingleFamilyResidence @type string was found in the raw source (case-insensitive, with optional schema: prefix). |
| 0 | No matching string was found in the raw source. |
How to optimize it
Use SingleFamilyResidence only for a real single-family home, and make the markup describe content users can actually verify on the page: an accurate address, room count, floor area, amenities, images, and listing details. Because the detector only confirms the string is present, treat a 1 as a starting point, not a finish line — the value of the schema comes from being accurate and complete, not from merely existing in the source.
Important considerations
- The detector pattern-matches source text; it does not parse or validate a JSON-LD graph, so a 1 does not confirm the structured data is well-formed.
- A matching string sitting outside valid JSON-LD — in a comment, a code sample, or an unrelated script — can still produce a 1.
- Capitalization differences do not affect detection, since matching is case-insensitive.
- Validate the complete structured data independently (for example with a schema validator) before trusting it.
- Correlation is not causation: this is a prioritization signal that relates to position within a measured result set, not a switch that makes a page rank or guarantees any position.
Related factors
Part of the Factors reference · how RankGear measures · glossary.