같은 단어로 검색해도 어떤 가게는 검색 결과에 별점, 영업시간, 가격, 자주 묻는 질문까지 펼쳐지고, 어떤 가게는 파란 제목과 주소 한 줄로 끝납니다. 이 차이는 광고를 더 샀느냐가 아니라, 페이지가 검색엔진에게 '나는 이런 정보를 가진 곳'이라고 코드로 알려주었는지에서 갈립니다. 그 코드가 바로 구조화 데이터(스키마)입니다.
1. 검색엔진은 사람처럼 화면을 '보지' 못한다
방문자는 화면에서 가격표와 영업시간, 후기 별점을 한눈에 알아봅니다. 하지만 검색엔진의 크롤러는 디자인된 화면이 아니라 HTML 코드를 읽습니다. 사람 눈에는 '4.8점'이지만 코드상으로는 그냥 숫자 하나일 뿐, 그것이 '평점'인지 '가격'인지 구분하지 못합니다. 구조화 데이터는 이 정보 하나하나에 의미 표시를 붙여, 검색엔진이 오해 없이 알아듣게 만드는 일입니다.
2. 우리 업종에 맞는 스키마 타입부터 고른다
스키마에는 정해진 종류가 있고, 업종에 맞는 것을 골라야 효과가 납니다. 작은 회사라면 보통 아래 네 가지면 충분합니다.
- LocalBusiness: 오프라인 매장·사무실. 주소, 영업시간, 전화번호, 지도 위치를 검색 결과와 지도에 노출
- Product / Offer: 판매 상품. 가격, 재고, 후기 별점을 함께 표시
- FAQPage: 자주 묻는 질문. 검색 결과 아래에 질문과 답을 펼쳐 노출
- Article: 블로그·뉴스 글. 작성일, 작성자, 대표 이미지를 명시
한 페이지에 여러 타입을 함께 써도 됩니다
예를 들어 매장 소개 페이지라면 LocalBusiness와 FAQPage를 같이 넣어, 검색 결과에 영업시간과 자주 묻는 질문을 동시에 띄울 수 있습니다.
3. 화면에 실제로 보이는 정보만 표시한다
가장 흔한 실수이자 가장 위험한 함정입니다. 별점이 없는데 별점 스키마를 넣거나, 페이지에 없는 가격을 코드에만 적는 것은 구글이 명백히 금지하는 행위입니다. 적발되면 리치 결과가 사라질 뿐 아니라 사이트 전체가 수동 조치(검색 노출 불이익)를 받을 수 있습니다. 원칙은 단순합니다. 방문자 눈에 보이는 정보만 코드에도 적는다.
4. JSON-LD 방식으로 한곳에 모아 넣는다
스키마를 넣는 방법은 여러 가지지만, 구글이 공식적으로 권장하는 방식은 JSON-LD입니다. 본문 HTML을 건드리지 않고, 페이지 상단(head)에 작은 스크립트 한 덩어리로 정보를 모아 넣는 방식이라 관리가 쉽고 디자인이 깨질 위험도 없습니다. 스키마 안에는 'context'로 표준 사전을, 'type'으로 정보의 종류를 선언하고, 그 아래에 상호명·주소·전화번호 같은 항목을 키와 값으로 채워 넣습니다.
5. 발행 전 '리치 결과 테스트'로 반드시 확인한다
스키마는 따옴표 하나만 빠져도 통째로 무시됩니다. 그래서 추측으로 끝내지 말고 검증 도구로 확인해야 합니다.
- 구글 리치 결과 테스트에 페이지 주소를 넣어 오류 없이 인식되는지 확인
- 스키마 마크업 검사기로 항목이 빠짐없이 들어갔는지 점검
- 구글 서치 콘솔에 사이트를 등록해 두면, 시간이 지나며 어떤 스키마가 잡혔고 어디서 오류가 나는지 계속 추적할 수 있습니다
코드 몇 줄이 검색 결과의 인상을 바꾼다
구조화 데이터는 순위를 직접 올려 주지는 않습니다. 하지만 검색 결과에서 우리 가게만 별점과 영업시간을 달고 눈에 띄게 만들어, 같은 자리에서 더 많은 클릭을 가져옵니다. 광고비 한 푼 들지 않고, 한 번 잘 심어두면 계속 일하는 자산입니다.
다만 업종에 맞는 타입 선택과 정책 위반 없는 구현은 생각보다 손이 많이 가는 작업입니다. CYAN은 작은 회사 웹사이트를 만들 때 이런 구조화 데이터와 검색 노출 기반까지 함께 설계합니다. 지금 우리 사이트가 검색 결과에서 어떻게 보이는지 한번 검색해 보시고, 경쟁사와 비교해 아쉽다면 점검부터 시작해 보세요.