For rich link previews, OpenGraph[0] is much more often supported than JSON-LD.
For seo purpose, the kind of JSON-LD a search engine will support is very specific and limited. You are far better consulting the targetted search engine's documentation (Google[1], Bing[2]) and following that. Anything else is a waste of time.
Outside of search engines, again, without a specific purpose, JSON-LD is mostly useless. If you have a specific need that requires JSON-LD, go ahead and include the data you know will be useful. Including anything else is like shouting into the void.
IndieWeb[3] does use structured data but considers JSON-LD a DRY violation and uses Microformats[4] instead.
1: https://developers.google.com/search/docs/appearance/structu...
2: https://www.bing.com/webmasters/help/marking-up-your-site-wi...
I would encourage people who have the pragmatic bent to read about JSON-LD from the Google documentation for web sites;
https://developers.google.com/search/docs/appearance/structu...
You’ll also notice that a lot of the information is relevant to only a small subset of sites. Rotten Tomatoes can publish the critic rating for movies using JSON-LD, but that’s not relevant for me (even if I write a review for a movie).
JSON-LD is nice because it’s easy and it is actually used by search engines. Yes, it can duplicate information in the web page itself, but I think the dream of perfectly annotating information so it only appears exactly once in your document is, well, a dream of spherical cows and massless ropes. It takes human effort to make a webpage and I am ok with a little duplication in the final product. My <h1> duplicates information in <title> anyway.
Some additional information, what you actually want to implement for every website is Structured Data, using the Schema.org vocabulary.
JSON-LD is one of the ways to do this. There's also RDFa and Microdata.
I used this article and can recommend it when I first learned about it: https://neilpatel.com/blog/get-started-using-schema/
You can try exploring what data to add with this tool: https://technicalseo.com/tools/schema-markup-generator/
The full list can be found on the schema.org site: https://schema.org/docs/schemas.html
Do these attributes actually help with search engine visibility or do they just make it easier for search engines to keep users from leaving the search page? Honest question here.
i understand the desire, but this is torture, unless you can get a machine to generate it for you.
I found out some years ago that emails that have the fancy features like plane tickets embedded or tracking information are all done with JSON-LD in the emails.
AFAIK only gmail supports it, though.
EDIT: some more info about it: https://www.emailonacid.com/blog/article/email-development/s...
we use JSON-LD on our SaaS and it made a noticeable difference for rich snippets. the FAQ Page schema in particular, google started showing our FAQ answers directly in search results within a week of adding it. one thing i learned the hard way: keep the FAQ answers in the JSON-LD identical to what is viseble on the page. google will ignore schema if the text doesn't match the page content.
We have semantic HTML, but for some weird reason we need to yet again re-express the semantic meaning of our website in bespoke weird JSON in a script tag that the browser won't process.
Super useful article, wish that had existed in my seo days.
I had misunderstood the type field, because to me I was often just linking to a webpage, even if it is for a saas, the marketing page is still a webpage.
There is a fine balance after which the symbiosis turns into exploitation. Websites trying to get visibility with the help of search engines was mutually beneficial to a large degree. However this is altogether going in a direction where the website owner is getting nothing for their sweat work.
In the old days (a few weeks ago) you could read google’s SEO recommendations and guidelines. This was great for debunking many a recommendation from clueless SEO agencies trying to force requirements on dev teams.
Is there any similar recommendations available for their new, LLM, world?
Isn't this just Opengraph but in json? What's the advantage?
It seems useful but then we have to manage similar metadata in multiple places, so hygiene around consistency becomes important
Thanks, I've seen these JSON-LD "updates" in Codex and Claude way to long without understanding what it's all about :)
Imagine if we had managed to deliver on the original promises of the Semantic Web, instead of having these locked-in platforms. How incredibly useful all that linked and structured data would've been to humans and LLMs at the same time.
Since 2024, the traffic to our content based marketing pages is down about 85%. What I don't get is how Google has not been terribly impacted as well by the rise of the zero click SERP. Their SERP ad revenue, which is click-based, must be down by a similarly egregious amount. That being said, I've been unable to find any published numbers to refute or confirm this thesis.
If only there was some kind of markup language for websites where different tags could have different meanings. If only.
A bit disappointing that (IIUC) for the common parsers you have to say everything twice, in HTML and in the accompanying JSON-LD form even though RDFa exists for the exact purpose of letting you point at the values already present in your markup. (Admittedly RDFa is perhaps too flexible for its own good when you just want to mark up some stuff, but if you’re writing a full parser anyway dealing with a bit of excessive cleverness in the format should not be too bad.)
[dead]
> It can aid web crawlers in understanding the semantic structure of your site, qualifying you for richer link previews, and even potentially improving your search ranking.
This is fighting the last war, to stretch a metaphor.
As far as I and my WWW site are concerned, Google has nowadays switched to giving people lengthy LLM-generated versions of my stuff, with errors, above pointing people to my actual stuff. 'Breadcrumbs' and getting a pretty display name instead of the domain name, don't address the fact that Google de-prioritizes all of that, pretty tweaks or no, nowadays.
This is a lot of effort for stuff that people visiting my actual site directly will never see, and which people using Google will not find above the fold of its own massively LLM-ized version of stuff.