Tell Google who you are with a few lines of code
Small business names collide, and search engines have to guess which one you meant. Organization structured data is one way a site owner can stop them guessing. Here's what it is, what we put in ours, and how to test it.

Small business names collide more often than you'd think. Search for one and Google may happily show you details that belong to a different business with a similar name. Nobody did anything wrong. The search engine is making a guess, and short, friendly, lowercase brand names like ours are easy to mix up. You can't edit Google's results, and you can't ask a stranger to rename their company. What you can do is give the search engine less to guess about. The tool for that is structured data, specifically a small block of Organization markup that says, in plain machine terms: this is our name, this is our website, this is our logo, and these other accounts are us too.
Structured data is a standardized format for describing what a page is about, and JSON-LD is the flavor Google recommends. It's a JSON object inside a script tag, so it rides along in the HTML without changing anything a visitor sees. The words it uses come from the schema.org vocabulary, which is where the Organization type lives. Google's Organization structured data guide says adding it to your home page can help Google understand your administrative details and disambiguate your organization in search results. Nothing is required. Google suggests name, url and logo for your online presence, address or telephone for a real-world one, plus legalName for your registered name, email for contact, and sameAs for your profiles on other sites.
Here's ours. It lives in the root layout of our Next.js site, so it ships on every page, home page included. The name is the one people actually see, lhcreative.studio, and legalName carries the registered LLC name. The logo is a full URL to /logo.png. The address lists only the country, because we work online and we'd rather not invent a storefront for the sake of a nicer-looking object. The sameAs list starts with our tech blog, then our X, Facebook and LinkedIn pages. In the real file that list is built from the same socials array our footer uses, so the two can't quietly drift apart. Below is a trimmed version with the values written out by hand.
const organizationJsonLd = {
'@context': 'https://schema.org',
'@type': 'Organization',
name: 'lhcreative.studio',
legalName: 'LH Creative Diversified Enterprises LLC',
url: 'https://lhcreative.studio',
logo: 'https://lhcreative.studio/logo.png',
email: '[email protected]',
address: { '@type': 'PostalAddress', addressCountry: 'US' },
sameAs: [
'https://lhcreative.studio/tech-blog',
'https://x.com/lhcreativehq',
'https://www.facebook.com/profile.php?id=61594276837753',
'https://www.linkedin.com/company/lhcreative-studio/',
],
}
// Rendered once in the root layout's <body>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationJsonLd) }}
/>Now the honest part. This markup is a hint, not an order. Google's general structured data guidelines say it does not guarantee your structured data will show up in search results, even when the markup is correct. So test it, then be patient. The Rich Results Test shows what Google can read from a live URL, and the Schema Markup Validator checks any schema.org markup without the Google-specific rules. Google also recommends submitting a sitemap, and the Sitemaps report in Search Console is where you do it. While tidying up, we also added every Night Sky UI Kit component page to our own sitemap. What Google does with all this is up to Google, and we'll only write about results once we have some.
More articles

What llms.txt is, and how we added one to our site
A plain-English look at llms.txt, the proposed markdown file that gives AI assistants a short map of your site, what it can and can't promise, and how we wrote and tested our own.

How visitors book a call on our site
Picking a time with us takes a few clicks and never leaves the page. Here is how the booking calendar on our site works, and the small checks that stop two people grabbing the same hour.

Meet the Night Sky UI Kit
Three animated React components for dark, night-sky themed sites: a star cursor, a twinkling starfield and a soft aurora glow. Here is what's inside and how to add it.

Behind the Star Cursor
How the Star Cursor draws its comet tail and sparkle dust, and why it quietly steps aside on touch screens and for anyone who prefers reduced motion.

The Science of Music
Why a good chorus gives you chills, why the Mozart effect fizzled, and why some songs refuse to leave your head. Here is what the research actually says about music, mood and focus.

What is LaserSETI?
LaserSETI is a growing network of rooftop cameras that watch huge patches of the night sky for a single-color flash of light. Here is how it works, where the stations are in 2026, and what it has (and has not) found.

Most of the Light Around You Is Invisible
Our eyes catch only a thin band of all the light there is, from violet to red. Here is what we miss, which animals see more of it, and how we use the invisible rest every day.

5 trendy UI effects
A star cursor with a comet tail, frosted glass panels, scroll-driven animation, smooth page transitions and gradients that actually move, plus the one tip we would give for each.

How to make cards lift as you scroll on a phone
Phones can't hover, so our blog cards used to sit flat on mobile. Here's the small CSS class and IntersectionObserver we use to lift whichever card is in the middle of the screen as you scroll.

How to build a thought-bubble tooltip with pure CSS
A step-by-step CSS tutorial for a tooltip that reads its label from a data attribute, pops up in a rounded bubble, trails off in three little circles and stays clickable, with no JavaScript.

Building night sky effects that know when to sit out
How the Night Sky UI Kit's star cursor, starfield and aurora check the visitor's device and settings before they draw a single frame.

How you can set up pull requests to get an automatic first review
Give every pull request an automatic first review the moment it opens, and send each new pull request and its review to a dedicated Slack channel. Here is how the pieces fit.

Inside our resumable, review-gated video production pipeline
How we built a local seven-step pipeline that turns a history topic into a captioned video, with resumable state, bounded retries, and a human review gate.