How should you test schema markup after you publish a Webflow site?
Test the live URL, not the code you pasted. Run a few published pages through Google's Rich Results Test, confirm the markup matches what is visible on each page, then use Search Console's URL Inspection tool to see what Google found. On CMS templates, test several items, because one empty field can break the output.
Schema markup is easy to get almost right. You write JSON-LD, paste it into a page or a CMS template, publish, and move on. Weeks later, Search Console reports errors on dozens of pages, or worse, nothing reports an error and the markup quietly says something different from the page.
I treat schema like any other production code. It gets tested where it runs, which is the published page, and it gets tested again whenever the template or the content behind it changes. This is the routine I use on Webflow sites, written so a marketer can run it without a developer.
Why is testing the published page different from checking your code?
Because the published page is what search engines read, and it can differ from what you wrote. CMS fields fill in values at publish time, characters in content can break JSON, and pages can carry duplicate or conflicting markup from site-wide code. Only the live HTML shows the final result.
On Webflow, schema typically lives in one of three places: site-wide custom code, page-level custom code, or a CMS template that inserts field values into the markup for each item. Webflow's help center documents how custom code works in each of these, including any plan requirements and character limits, so check the current docs before you build around a specific setup.
The CMS template case is where most problems appear. A template that works for one blog post can fail on another because a field is empty, a title contains a quote mark, or a date is formatted differently. The code is identical across items, but the output is not, which is why testing one item is never enough.
Which tools should you use to test structured data?
Use Google's Rich Results Test to check whether a live page's markup is valid for Google's rich result types, and the URL Inspection tool in Search Console to confirm Google has found it after deployment. For schema types Google does not use for rich results, the Schema Markup Validator is a useful general check.
Google's introduction to structured data recommends JSON-LD as the format that is easiest to implement and maintain. It names the Rich Results Test for validation and the URL Inspection tool to confirm Google found your structured data after you deploy it. Those two tools cover most of what a Webflow site needs.
I use them for different questions. The Rich Results Test answers "is this markup valid right now?" URL Inspection answers "what did Google actually see the last time it crawled?" When the two disagree, the page probably changed after Google's last crawl, or something in rendering differs.
Step 1: How do you test a single published page?
Paste the published URL, not a staging link, into the Rich Results Test. Read every detected item, open each one, and check errors first, then warnings. Then compare each value in the markup against the visible page: title, author, date, price, or FAQ text. Any mismatch is a problem even when the tool shows no errors.
That last check is the one people skip, and it matters. Google's structured data documentation says not to add structured data about information that is not visible to the user. If your FAQ schema lists five questions and the page shows four, or your article markup shows an old publish date, the markup is misleading even if it is technically valid.
I keep a short note per page type with the fields I expect to see and where each one comes from. For a blog post that might be headline, author name, date published, and image. Having that note makes the comparison fast and repeatable for whoever runs the check next time.
Step 2: How do you test a CMS template across many items?
Pick at least five items that stress the template: the newest, the oldest, one with the longest title, one with special characters like quotes or ampersands, and one with optional fields left empty. Test each published URL. If all five pass, the template is probably safe. If one fails, fix the template, not the item.
Empty optional fields are the most common failure. A template that inserts an image URL or a description will output an empty value, or broken syntax, when that field is blank. The fix is usually to make the field required in the CMS, or to restructure the markup so the property is only included when the content exists.
Special characters are the second most common failure. A double quote inside a title can end a JSON string early and break the whole block. If you see a parsing error on one item but not others, look at that item's text for quotes, line breaks, or unusual symbols first. I covered more of the blog-specific setup in my guide to BlogPosting JSON-LD schema on a Webflow blog.
Step 3: How do you check for duplicate or conflicting markup?
Look at every structured data item the test detects on a page, not only the one you added. Site-wide code, third-party embeds, and apps can each add their own markup. Two Organization blocks with different names, or two Article blocks for one page, send mixed signals. Keep one clear source for each entity.
This is common on sites that several people have worked on. One person added Organization schema to the site-wide head code years ago. Another added it again to the homepage. A review widget added its own product markup. Each piece looked fine alone, but together the page describes the company three slightly different ways.
My rule is that each fact has one home. Organization details live in one site-wide block. Page-specific types live on that page or its template. When I find conflicting copies, I remove the extras rather than trying to make them match, because matching copies drift apart again with the next edit.
Step 4: How do you confirm what Google actually picked up?
A few days after publishing, open URL Inspection in Search Console for a tested page and check the detected structured data in the indexed result. Then watch the rich result status reports, which Google says help you monitor validity over time, since templating or serving issues can appear after deployment.
That note about templating and serving issues comes straight from Google's structured data introduction, and it describes exactly what happens on CMS sites. A template edit, a new field, or a bulk content import can break markup on pages that passed testing last month. The status reports are your early warning.
Google is also clear that valid markup does not guarantee rich results. Eligibility depends on following feature-specific guidelines and general policies. So if a valid page shows no rich result, that is not necessarily a bug. If you are thinking about AI-generated markup in particular, I wrote about whether you should trust AI-generated schema markup on Webflow.
How often should you rerun these checks?
Rerun them after any change to a CMS template, after adding new custom code or an app that injects markup, after large content imports, and on a light monthly schedule otherwise. A quick monthly pass of three or four key URLs catches most regressions before they spread across hundreds of pages.
The trigger list matters more than the calendar. Schema breaks often trace back to a change someone made for another reason, such as adding a new field to a blog template or installing a widget. Tying schema tests to those changes catches problems at the moment they appear.
For larger sites, this is a good candidate for light automation. A scheduled job can fetch a sample of published URLs, extract the JSON-LD, and check that required properties are present and non-empty. It does not replace Google's tools, but it flags broken items early, which is the part that saves time.
What should you do next?
Pick your most important page types, such as the homepage, a blog post, and a product or service page. Run each live URL through the Rich Results Test, compare every value against the visible page, and test five stress-case items for each CMS template. Fix templates first, then set a monthly recheck.
That first pass usually takes an hour or two and can easily surface an issue worth fixing, such as an empty field or a duplicate block. Schema is one of the clearest signals you can give search engines and AI systems about what a page is, so it is worth keeping accurate.
If you want help auditing schema across a Webflow site, or setting up an automated check that catches broken markup before Search Console does, reach out through pravinkumar.co. I am a Certified Webflow Partner and I build websites and the automations behind them for lead generation. Let's chat.
Get found, cited and the back office automated
Let's make your site the source AI engines quote and wire up the systems behind it.
Read more blogs
Let's get your website found and cited by AI
Tell me what you're working on, whether AI search is skipping your product, your back office is buried in manual work, or you need a build that does both.