Has JSON-LD RoofingContractor

RG-SCJ-231 reports whether RankGear finds a RoofingContractor schema @type in a page’s raw HTML source. It is a simple presence flag (1 = found, 0 = not found) and a text match — it does not confirm the JSON-LD is valid or that the business is genuinely a roofing contractor.

Factor IDRG-SCJ-231
FamilyStructured Data – JSON-LD
MeasurementBinary presence (0 / 1)
Measured zoneRaw rendered HTML

What it measures

This factor reports whether RankGear finds an @type value of RoofingContractor in the raw page source. RoofingContractor is a schema.org type for a business that installs and repairs roofs; its presence signals that a page has declared itself as this specific kind of local business in structured data. The check is a straight yes/no on the text of the markup, not an evaluation of the surrounding graph.

How RankGear measures it

RankGear searches the raw HTML for the string "@type": "RoofingContractor", allowing flexible whitespace around the colon and quotes and optionally permitting a schema: prefix on the type value. Matching is case-insensitive, so differences in capitalization do not change the result. A match returns 1; no match returns 0.

What RankGear looks for

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "RoofingContractor",
  "name": "Summit Roofing Co."
}
</script>
ValueMeaning
1A RoofingContractor @type string was found in the raw HTML.
0No matching RoofingContractor @type string was found.

How to optimize it

Use the RoofingContractor type only for a genuine roofing contractor, and make sure the markup reflects content a visitor can verify on the page: accurate services, service area, credentials, location, availability, and contact details. Every property in the structured data should match what the page actually shows. Treat this factor as an observation of what your markup declares, not a target to chase for its own sake — adding the type to a page that is not a real roofing contractor misrepresents the business and adds no lasting value.

Important considerations

  • The detector pattern-matches source text; it does not parse or validate a JSON-LD graph.
  • A matching string that sits outside valid JSON-LD — for example in a comment or a code sample — can still produce a 1.
  • Capitalization differences do not affect detection.
  • Validate your complete structured data independently with a schema validator; a 1 here is not a guarantee the markup is well-formed.
  • This is a prioritization signal that relates to position within a measured result set. It does not make a page rank and guarantees nothing — correlation is not causation.

Related factors

Part of the Factors reference · how RankGear measures · glossary.