SOYOYU
기초·인프라extends Organization, Place

LocalBusiness

물리적 위치를 가진 사업체. 매장·사무실·병원·식당 등 손님이 찾아갈 수 있는 모든 사업의 기준 타입.

XEO 효과 4가지

리치 결과

●●●●●결정적

구글 비즈니스 프로필 매칭, 지도 결과, "근처" 검색에서 별점·영업시간·전화 버튼이 직접 노출. 지역 사업의 핵심 마크업.

AI 인용

●●●●○높음

AI가 "~ 근처 ~"·"영업시간"·"전화번호" 질문에 답할 때 가장 자주 참조. AI 검색의 로컬 답변 정확도를 좌우.

사용 빈도

●●●●○높음

매장형 사업이라면 거의 필수. 그 외에는 적용 안 됨.

구현 난이도

●●●○○중간

필수 3개에 geo·운영시간을 더해야 효과 발휘. 다지점 운영이면 지점별 @id 관리가 추가됨.

이럴 때 쓴다

  • 매장·사무실·병원·식당 등 방문 가능한 모든 업종
  • 지역 검색(맵·"근처 ~") 노출이 매출과 직결되는 사업
  • 운영시간·전화번호·주소가 비즈니스의 핵심 정보인 경우
  • 더 구체적인 하위 타입(Restaurant·Dentist·LegalService 등)이 있다면 그걸 우선
다지점 기본 형태
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "@id": "https://example.com/locations/seoul#business",
  "name": "소요유 강남점",
  "image": "https://example.com/seoul.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "테헤란로 123",
    "addressLocality": "서울특별시 강남구",
    "postalCode": "06234",
    "addressCountry": "KR"
  },
  "geo": { "@type": "GeoCoordinates", "latitude": 37.5, "longitude": 127.04 },
  "telephone": "+82-2-1234-5678",
  "openingHoursSpecification": [{
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
    "opens": "09:00",
    "closes": "18:00"
  }],
  "priceRange": "$$"
}

다지점은 각 지점이 별도 @id를 가져야 entity가 분리됨.

자주 보는 안티패턴

  • LocalBusiness만 쓰고 더 구체적인 하위 타입(Restaurant 등)을 안 씀
  • geo(위도·경도) 누락 — 지도 노출 약화
  • openingHoursSpecification 형식 오류
  • 여러 지점인데 priceRange·image를 지점마다 다르게 채움
음식점에도 일반 LocalBusiness
{ "@type": "LocalBusiness", "name": "맛집", "servesCuisine": "한식" }

servesCuisine은 Restaurant 타입에서만 인식됨. 음식점이면 Restaurant 타입을 써야 메뉴·요리 종류 신호가 살아남.

필수 필드

  • nameText사업체명 (간판 그대로)
  • addressPostalAddress도로명·우편번호 포함 전체 주소. Google 리치 결과 노출 조건
  • telephoneText국가코드 포함 (+82-2-1234-5678). Google이 권장하지만 필수는 아님
  • geoGeoCoordinates위도·경도. 지도·근처 검색에 핵심
  • openingHoursSpecificationOpeningHoursSpecification[]요일별 영업 시간
  • priceRangeText$·$$·$$$ 또는 가격대 텍스트
  • imageURL[]외관·내부 사진 절대 URL 배열
  • urlURL공식 사이트 또는 지점 페이지 URL

해설

지역 검색에서 노출되고 싶다면 반드시 깔아야 할 한 타입. Organization을 상속하지만 address·telephone·openingHoursSpecification 같은 물리적 사업체에만 의미 있는 필드가 추가된다. 매장·사무실·병원·학원·식당 — 손님이 찾아갈 수 있는 모든 사업체가 이 타입의 대상.

리치 결과 관점에서 LocalBusiness는 schema.org에서 가장 시각화가 강한 타입 중 하나다. 구글 비즈니스 프로필과 매칭되면 — 검색 결과에 별점·영업시간·전화 버튼·길찾기·사진이 한꺼번에 노출된다. 같은 단어로 검색해도 LocalBusiness 마크업이 있는 사업체는 세 줄 짜리 SERP 카드를, 없는 사업체는 제목 한 줄을 받는다.

AI 인용 관점에서 "강남에서 늦게까지 하는 치과 알려줘"·"가까운 한식집 영업시간" 같은 질문에 AI가 답할 때 — LocalBusiness JSON-LD의 openingHoursSpecification·geo를 직접 본다. 마크업이 없으면 AI는 사이트 본문 텍스트에서 영업시간을 추측하고, 잘못된 정보를 답할 가능성이 올라간다.

가장 큰 함정: 음식점인데 LocalBusiness만 쓰고 끝내는 케이스. 더 구체적인 하위 타입이 있으면 그걸 써야 한다. 음식점은 Restaurant, 치과는 Dentist, 변호사 사무실은 LegalService. 하위 타입을 쓰면 servesCuisine(요리 종류)·medicalSpecialty(진료 과목) 같은 도메인 특화 필드를 인식한다. LocalBusiness는 해당 업종에 맞는 하위 타입이 없을 때의 폴백이다.

다지점 사업은 각 지점이 별개의 LocalBusiness entity가 되어야 한다. @id를 지점별로 다르게 부여하고, 본사 Organization과는 parentOrganization으로 연결한다. 그래야 Google이 어느 지점이 검색됐는지를 정확히 매칭한다.