You have implemented LocalBusiness schema with review data, yet your organic search results still show no stars. It feels like a technical failure, but the issue is likely a misconception about how search engines handle self-referencing data. The markup is probably fine; the expectation for organic stars on a service page is simply outdated.
Since September 2019, Google suppresses “self-serving” review rich results for local entities in organic listings. This does not mean your structured data is broken. It means the visual element you are chasing no longer exists for that specific context. The star ratings you see in the Map Pack come from your Google Business Profile, not from the on-site review schema. This distinction is critical for understanding where your efforts should focus. We will look at the diagnostic reality of your service page markup and how to build a nested schema that serves actual entity clarity rather than chasing a deprecated visual cue.
The AggregateRating trap: why organic stars are gone
You likely added review schema to your service page expecting star ratings to appear under the URL in organic results. Instead, you see nothing. This gap is not a technical error or a penalty; it is a direct result of how Google handles self-referencing data. Since September 2019, Google explicitly suppresses review rich results for LocalBusiness and Organization types when the business controls the content. The search engine simply ignores the markup to prevent businesses from manipulating their own trust signals.
Stars belong to the Business Profile
A common misconception is that on-site structured data directly influences the visual presentation of local ratings. In reality, the star rating you see in the Map Pack or Knowledge Panel is derived exclusively from your Google Business Profile. The organic snippet, which displays a title, URL, and meta description, no longer displays self-referencing stars. These are two distinct data sources: one is crowd-sourced and verified, the other is self-reported. Expecting the latter to generate visual trust signals in the organic list is an outdated assumption.
The danger of chasing organic stars
Many agencies and guides still suggest that adding AggregateRating will automatically generate stars under a service page URL. This advice is now misleading. When a business publishes its own reviews on its website, Google classifies this as “self-serving.” The structured data is valid and can be parsed, but the visual output is withheld. Relying on this misconception leads to wasted effort and frustration. The schema.org markup remains important for entity clarity, but it will not produce the star rating you are looking for in the organic search results. Recognizing this distinction is the first step toward building a strategy that actually works.
The correct nested structure for Service and OfferCatalog
The most effective approach to service page markup is to treat your local business entity as the root of a structured data tree. Instead of isolated tags, you should implement a nested schema where a Service entity is explicitly linked to the LocalBusiness entity. This hierarchy tells search engines that a specific service is an offering by that specific business, rather than a generic catalog item.
The standard pattern on schema.org involves using the provider property within the Service object to reference the business. By using the @id attribute, you create a permanent identifier for your business entity that other parts of your site can reference. This ensures that even if your URL structure changes, the logical link between the business and its services remains intact for crawlers.
Below is a concrete example of how this looks in JSON-LD. Note how the Service object does not repeat the full business details but instead points to the @id of the parent entity.
{
"@context": "https://schema.org",
"@type": "Service",
"name": "Commercial Plumbing Repair",
"provider": {
"@id": "https://www.example.com#business"
},
"areaServed": {
"@type": "GeoCircle",
"geoMidpoint": {
"@type": "GeoCoordinates",
"latitude": -31.9275,
"longitude": 115.8374
},
"geoRadius": 10000
}
}
If you offer multiple variations of the same service (e.g., emergency vs. scheduled), you can group them under an OfferCatalog property within the Service object. This adds another layer of specificity that helps distinguish between different packages or tiers.
This structural clarity is critical for AI search visibility. When AI models generate answers about local services, they rely on this structured data to disambiguate what is actually offered. A flat, unlinked service tag is easily ignored or misattributed. By building a robust entity graph, you reduce the chance of your business being confused with competitors or generic service descriptions.
While this nested approach will not restore star ratings to your organic snippet, it does build the entity confidence necessary for your business to be accurately represented in AI-generated answers. The goal shifts from chasing a specific visual element to ensuring your digital footprint is logically coherent and machine-readable. This foundation is what allows your review schema and other metadata to be correctly associated with the right entity, even if the stars themselves remain hidden in the organic results.
How to validate your markup without chasing stars
Google’s Rich Results Test remains the primary tool for verifying if a page is eligible for rich snippets. When you paste your URL, focus on the diagnostic feedback rather than the visual preview. A successful validation for service page markup typically displays “No error found” or indicates that the page is eligible for a rich result regarding the Service type. You are looking for syntax correctness, not a star icon. If the tool flags an error, it will be specific: a missing closing bracket, an invalid property name, or a malformed JSON-LD structure. Fixing these ensures the structured data is parseable by crawlers.
Check for consistency, not stars
The goal of validation is to confirm that the data is clean and consistent with your Google Business Profile. Since star ratings are derived from the Business Profile, not on-site markup, the review schema you add to the page does not need to produce a visual change in the search results to be effective. Its value lies in entity clarity. When you validate the markup, ensure that the @id referenced in the Service object points to the correct LocalBusiness entity, and that the Name, Address, and Phone (NAP) details match your Business Profile exactly. This consistency builds the confidence search engines need to link your service page to your business identity.
Avoid deprecated features
A critical point for long-term strategy: do not rely on FAQPage schema to boost visibility. Google announced the retirement of FAQ rich results, with the change taking effect in May 2026. If your current structured data strategy depends on FAQ snippets for traffic, plan a transition. While the markup may remain on the page, it will no longer trigger a rich snippet. Focus your validation efforts on the core LocalBusiness and Service entities, which remain central to how AI systems and search engines interpret your business offerings. The schema.org standard for these types is stable and continues to support the entity linking required for AI-generated answers. Validate for accuracy, not for a specific visual output.
Common questions about review schema on service pages
Even with clear guidelines, confusion persists around how review schema interacts with service pages. Here are direct answers to the three questions we hear most often, addressing the gap between technical implementation and actual search engine behavior.
Can I use AggregateRating if I embed third-party reviews?
No. If the business controls the display of reviews on its own page, it is considered self-serving. Google will not show stars in organic results for this configuration. The source of the data does not matter; the control of display does.
Does removing the AggregateRating markup improve my rankings?
No. Removing the markup has no direct impact on rankings. Search engines simply ignore the data for the star feature. Keeping or removing it is a choice, but neither action changes your position in the organic list.
What should I do instead to get review visibility?
Focus on optimizing your Google Business Profile for the Map Pack. Use structured data to reinforce entity consistency across the web, ensuring your service page markup aligns with your profile. This builds the trust signals that actually drive visibility in local search.
The absence of organic stars for self-referencing entities does not mean your structured data is wasted. The nested schema remains a high-leverage asset for entity clarity and AI search visibility. When you link a Service to a LocalBusiness, you help search engines distinguish between your brand and the specific offerings you provide. This precision is critical for how AI systems interpret and cite your content. While the visual feedback of a star rating may be gone, the underlying data still reinforces your business’s identity across the web.
As the industry shifts toward AI-driven search, we should ask ourselves whether traditional trust signals still hold the same weight. How do we define credibility in an era where machines, not just people, are the primary audience?