Schema markup that Google and AI models actually read
We translate your site into the vocabulary machines use. JSON-LD written to Google's documentation, validated page template by page template, and monitored after every redesign. Nothing about the way your site looks changes.
What structured data is, and what it buys you
Structured data is markup in your page code that describes the content in the schema.org vocabulary. A person looks at a page and sees a price list, a review or a company address. A crawler sees text, unless you explicitly say: this is a price, this is a rating of 4.8 out of 5, these are the opening hours.
Valid schema markup unlocks rich results: star ratings, product prices and availability, expandable FAQ lists, breadcrumb paths instead of a raw URL. A result like that takes up more space and draws the eye, so it collects a higher click-through rate without moving position. You pull more clicks out of the ranking you already have, with no new content and no link building.
Why it matters more now that AI answers the question
An increasing share of answers reaches the user through AI Overviews, ChatGPT or Perplexity rather than through a list of links. Language models do not look at your page, they parse its code. Schema in JSON-LD gives them a ready, unambiguous layer of facts: who you are, what you sell, at what price, where you operate.
That is why structured data is now a foundation of generative engine optimisation rather than an SEO extra. A company described cleanly and machine-readably has a better chance of being quoted correctly than a competitor with identical copy and no markup. The distinction between the disciplines is set out in SEO, AEO and GEO and how they differ, and the citation mechanics in where AI citations come from.
Which types make sense for your site
We match types to the kind of page and to the business goal, instead of pasting everything everywhere. This is what each of the common types changes in the result:
| Schema type | What it changes in search results | Where it fits |
|---|---|---|
| Organization / LocalBusiness | Company details, logo, address and opening hours in the brand panel and in local results | Any site, and the first type for a service business |
| Service | An unambiguous description of what you do, for Google and for language models, so queries match better | Service business |
| Product with Offer | Price and availability shown directly next to the result | Online shop |
| Review and AggregateRating | Star ratings next to the result, tied to the item that was actually reviewed | Online shop, and service pages that collect reviews |
| FAQPage | A list of questions and answers expanded under your result | Both, wherever the questions are genuinely on the page |
| Article | Date, author and thumbnail, and a better chance in Google Discover | Blog and knowledge base |
| BreadcrumbList | A readable navigation path instead of a raw URL | Both |
| Event / HowTo / JobPosting | Event dates, instruction steps and job openings in dedicated Google modules | Where the site really has that content |
A service business
The core set is Organization or LocalBusiness on the whole site, one Service block per offer page, BreadcrumbList across the navigation, and Article on the blog. FAQPage goes only on pages where the questions and answers are visible to a visitor. That is enough for Google to connect the company, the offer and the location, and enough for a model to describe your business without guessing.
An online shop
The centre of gravity moves to Product with Offer on every product page: price, currency, availability. Review and AggregateRating are added only where genuine reviews exist, and always attached to the product they belong to. Category pages get BreadcrumbList, and the shop itself gets one Organization block, not three from three different plugins.
Structured data works best next to the content it describes. How the two are planned together is on content marketing, and the crawling and performance side is on technical SEO.
How the implementation runs
- Audit of the existing markup. We check what you already have, since plugins routinely generate duplicates and errors, and what your competitors are showing in the results.
- Mapping types to templates. Home page, service pages, products, blog, contact: each template gets the right set of types, defined once and reused.
- JSON-LD implementation. We write the markup to Google's documentation and keep it consistent with the content a visitor can see.
- Validation. Every template goes through the Rich Results Test and is submitted for reindexing in Search Console.
- Monitoring and reporting. We watch the enhancement reports, fix new errors and show which rich results are live.
A standard implementation for a company site closes in two to three weeks. To start we need access to the CMS and to Search Console.
How we check that it is correct
Markup that validates is not the same as markup that is right. We run four checks, and the last one is the reason most sites lose their rich results:
- Google's Rich Results Test, per template rather than per page, so a fix reaches every URL built from that template.
- The schema.org validator, which catches vocabulary errors that Google's tool ignores because it does not use that type.
- Search Console enhancement reports after reindexing: the count of valid items should climb and errors should fall to zero. This is the only source that shows what Google actually accepted.
- A comparison against the visible page. If the markup declares a rating or a question that a visitor cannot see, it is wrong even when it validates cleanly.
We repeat the whole set after every redesign or template update, because that is exactly when markup breaks silently. Monitoring is part of the service, not an add-on.
Platforms, plugins and their limits
We implement schema on WordPress and WooCommerce, Shopify, other shop platforms, and custom or headless builds. The technology is not a barrier. JSON-LD can be injected into any template, including through Google Tag Manager when there is no access to the code.
Plugins such as Yoast, Rank Math or Schema Pro are fine as a starting point, but they generate basic types only and they do not know your business. They will not describe a service together with the area it covers, they will not tie a review to a specific product, and two of them running at once will happily duplicate the markup. A manual implementation makes sense when you want full control and types matched to your content rather than to your theme.
The mistakes we find in almost every audit
- Markup that does not match the page. Schema declares ratings or an FAQ that are nowhere in the visible content. This is the shortest route to losing rich results.
- Schema spam. A 5.0 rating pasted everywhere, keywords stuffed into description fields. Google issues manual actions for this, so those blocks come out first.
- Duplicate types from plugins. Two SEO plugins and a theme producing three different Organization blocks. We keep one, consistent version.
- No validation after changes. A redesign or a template update quietly breaks the markup and nobody notices until the enhancement report does.
What it costs
On the Polish market, a full manual schema implementation for a company site is usually 3000 to 6000 PLN net as a one-off, or 1500 to 3000 PLN net per month inside an ongoing SEO retainer.
At Neurise, structured data is part of the SEO and GEO packages at 599 to 1499 PLN net per month, alongside the rest of the visibility work. The ranges and what sits in each one are on the pricing page, and the wider offer on the services page. Large shops and headless builds get an individual quote after the free audit.
Worth knowing if you are buying from outside Poland: the amounts above are quoted in Polish zloty and reflect what agencies charge in Poland, so read them next to the offers you have collected in your own market. We work in English.
The effect, and how we report it
We do not promise magic, we show where the change is visible and in which tool. After implementation we track the enhancement reports in Google Search Console, where the number of valid items should rise and errors should drop to zero, and we compare click-through rate before and after for the pages that received new markup. Rich results usually appear within one to four weeks of reindexing.
For one e-commerce client, after Product and AggregateRating went live, the click-through rate on product cards rose while positions stayed the same. The extra clicks came without a single new link. We do not quote a percentage here, because we publish a figure only with the tool, the period and the scope it came from.
More results, with the working method behind each one, are on case studies.
Questions we get asked
What is structured data?
It is markup in the page code that describes the content using the shared schema.org vocabulary. Thanks to it, Google and language models know that a given fragment is a price, a rating, a question or a company address rather than ordinary text.
Does schema markup improve rankings?
It is not a direct ranking factor, but it raises click-through rate through rich results and helps search engines understand the page correctly. In practice, more clicks from the same position is a real gain.
Which format should I use: JSON-LD, microdata or RDFa?
JSON-LD. It is the format Google officially recommends: kept in a single script block, independent of the HTML, and the easiest to maintain. Microdata and RDFa work, but they break more often when the template changes.
How long until rich results appear?
Usually one to four weeks after the page is crawled again. The exact time depends on how often the site is crawled. Google never guarantees that rich results will be shown, but markup that is valid and consistent with the visible content is the precondition.
How do I check whether my markup is correct?
Paste the address into Google's Rich Results Test or the schema.org validator, then read the enhancement reports in Search Console. You can also order the free audit and we will do it for you.
Does structured data help with visibility in ChatGPT and AI Overviews?
Yes. Schema is the machine-readable layer of the page, so language models find it easier to establish who you are, what you sell and at what price. It is one of the foundations of AEO and GEO, meaning optimisation for AI answers.
How much does implementation cost?
A full manual implementation for a company site is typically 3000 to 6000 PLN net as a one-off on the Polish market. At Neurise, structured data is included in the SEO and GEO packages at 599 to 1499 PLN net per month, and larger sites are quoted individually.
More answers about search visibility and AI are on the FAQ page.
Free audit of your structured data.
We run your site through the Rich Results Test, list the markup errors and show which rich results you are handing to competitors. No obligation, delivered as a short report.
Contact
NEURISE sp. z o.o., ul. Karola Szymanowskiego 6/10, 99-300 Kutno, Poland. KRS 0001208946, VAT ID PL7752678033.
E-mail: seo@neurise.io
Phone: +48 509 919 101