I maintain a handful of small marketing sites, and for years my structured-data workflow was embarrassing: copy a JSON-LD block from an old project, find-and-replace the values, paste it into the <head>, and hope. It worked until it didn't — a trailing comma here, a wrong @type there, and the rich result silently disappears for a month before anyone notices.
Structured data is one of those things that's easy to add and genuinely hard to add correctly. These are the notes I wish someone had handed me earlier.
What JSON-LD actually is
JSON-LD is just a <script type="application/ld+json"> block that describes your page in a vocabulary search engines understand (schema.org). It doesn't change what a human sees; it changes what a machine is allowed to say about your page — the star ratings, the FAQ accordions, the breadcrumb trails that show up in results.
A minimal Article block is unintimidating:






