feat: O2O Clinic 가상 데모 리포트·플랜 추가 (광고 소재용)

블러 처리 없이 외부 노출 가능한 가상 클리닉 데모 자산.
6개 실제 병원 분석 패턴의 베스트 프랙티스를 종합·재구성.

설정:
- 이름: O2O Clinic / 원장 오투오 / 개원 2017년 (9년차)
- 시술: 눈·코·윤곽 전문
- 컬러: Indigo Deep (#1E1B4B) + Cyan (#06B6D4)
- 포지셔닝: 균형 잡힌 운영 (Score 78) + 글로벌 확장 강점

라우팅:
- /report/o2o → mockReportO2O (overallScore 78)
- /plan/o2o → mockPlanO2O (8 채널전략·4 pillar·4주 캘린더)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
main
Haewon Kam 2026-04-15 14:15:27 +09:00
parent 9fc9d5cc71
commit a9de4ecc3c
4 changed files with 904 additions and 0 deletions

507
src/data/mockPlan_o2o.ts Normal file
View File

@ -0,0 +1,507 @@
import type { MarketingPlan } from '../types/plan';
/**
* O2O Clinic ( )
*
* · /
* INFINITH . 6
* ·.
*/
export const mockPlanO2O: MarketingPlan = {
id: 'o2o',
reportId: 'o2o',
clinicName: 'O2O Clinic',
clinicNameEn: 'O2O Plastic Surgery Clinic',
createdAt: '2026-04-14',
targetUrl: 'https://www.o2oclinic.com',
// ─── Section 1: Brand Guide ───
brandGuide: {
colors: [
{ name: 'Indigo Deep', hex: '#1E1B4B', usage: '주요 헤더·CTA 버튼 — 신뢰·전문성·기술적 정확성 상징' },
{ name: 'Cyan', hex: '#06B6D4', usage: '강조색 — 혁신·연결·글로벌 환영의 시그널' },
{ name: 'Slate Light', hex: '#F8FAFC', usage: '섹션 배경 — 대비되는 깨끗한 여백' },
{ name: 'Slate 900', hex: '#0F172A', usage: '본문 텍스트·고대비 강조' },
{ name: 'Slate 500', hex: '#64748B', usage: '서브 텍스트·메타 정보' },
],
fonts: [
{ family: 'Pretendard', weight: 'Bold 700', usage: '헤딩·섹션 타이틀', sampleText: 'O2O Clinic — 9년의 임상, 2,547개의 진심' },
{ family: 'Pretendard', weight: 'Regular 400', usage: '본문 텍스트', sampleText: 'O2O Clinic은 눈·코·윤곽 전문 클리닉입니다' },
{ family: 'Playfair Display', weight: 'Bold 700', usage: '영문 헤딩·O2O 워드마크', sampleText: 'O2O Clinic — Eye, Nose, Contouring' },
],
logoRules: [
{ rule: 'Indigo + Cyan 그라디언트 워드마크 통일', description: 'O2O 워드마크는 Indigo Deep → Cyan 그라디언트를 모든 채널에서 동일 적용', correct: true },
{ rule: '원형 로고: 화이트 배경 + Indigo 심볼', description: '프로필 사진용 1080×1080 원형 — 화이트 배경 + Indigo "O2O" 심볼', correct: true },
{ rule: '글로벌 채널: 영문 로고 단독', description: '@o2o_clinic_global, Facebook Global 등 영문 채널은 한글 병기 제외', correct: true },
{ rule: '여백 규칙', description: '로고 크기의 30% 이상 여백 확보 — 가독성 + 브랜드 권위', correct: true },
{ rule: '단색 사용 시', description: '단색 적용 시 Indigo Deep (#1E1B4B) 단독, 흰 배경에서만 사용', correct: true },
],
toneOfVoice: {
personality: ['전문적', '신뢰감 있는', '글로벌', '따뜻한', '명확한'],
communicationStyle: '9년의 임상과 2,547개의 검증된 후기를 근거로 하되, 교육적이고 환자 친화적인 어조로 전달합니다. 시술 결과보다 의사결정 과정의 투명성을 강조.',
doExamples: [
'"눈성형은 결과보다 디자인이 결정합니다 — 오투오 원장의 5원칙"',
'"9년의 임상, 2,547개의 진심 — O2O Clinic"',
'"한·영·중·일 상담 가능 — Global Patients Welcome"',
'"강남언니 9.5점이 증명하는 디테일"',
],
dontExamples: [
'"강남 No.1!" — 비교 광고 표현',
'"100% 만족 보장" — 의료광고법 위반 가능성',
'"오늘까지 50% 할인" — 가격 경쟁 톤 지양',
'"인생이 바뀝니다" — 과장 표현 금지',
],
},
channelBranding: [
{ channel: 'YouTube', icon: 'youtube', profilePhoto: 'O2O Indigo+Cyan 원형 로고 1080×1080', bannerSpec: '2560×1440px, Indigo Deep 배경 + Cyan 악센트, "Eye · Nose · Contouring · Since 2017"', bioTemplate: 'O2O Clinic — 눈·코·윤곽 전문\n오투오 원장 · 강남역 | 02-2020-2020\no2oclinic.com', currentStatus: 'correct' },
{ channel: 'Instagram KR', icon: 'instagram', profilePhoto: 'O2O Indigo+Cyan 원형 로고', bannerSpec: 'N/A (하이라이트: 눈성형/코성형/윤곽/리뷰/글로벌 — Indigo+Cyan 톤)', bioTemplate: 'O2O Clinic 공식 · 눈·코·윤곽 전문\n강남역 | 02-2020-2020 · o2oclinic.com', currentStatus: 'correct' },
{ channel: 'Instagram Global', icon: 'instagram', profilePhoto: 'O2O 영문 로고', bannerSpec: 'N/A (Highlights: Eye/Nose/Contouring/Reviews/Booking)', bioTemplate: 'O2O Clinic Global · Eye · Nose · Facial Contouring\nGangnam Seoul · DM for English/Chinese/Japanese consultation', currentStatus: 'correct' },
{ channel: 'Facebook Global', icon: 'facebook', profilePhoto: 'O2O 영문 로고', bannerSpec: '820×312px, Indigo+Cyan 배경 + "Eye · Nose · Contouring · Multilingual"', bioTemplate: 'O2O Clinic — 9 Years of Excellence in Eye, Nose, Facial Contouring\nGangnam Seoul · WhatsApp + DM Welcome', currentStatus: 'correct' },
{ channel: 'Naver Blog', icon: 'globe', profilePhoto: 'O2O 로고', bannerSpec: '블로그 상단: 워드마크 + 시술 카테고리 메뉴 (눈/코/윤곽)', bioTemplate: 'O2O Clinic 공식 블로그 — 눈·코·윤곽 전문\n오투오 원장 · 강남역 · 9년 임상', currentStatus: 'correct' },
{ channel: 'TikTok', icon: 'video', profilePhoto: 'O2O Indigo+Cyan 원형 로고', bannerSpec: 'N/A', bioTemplate: 'O2O Clinic · 눈·코·윤곽 · 강남역\nReal Cases | DM 상담', currentStatus: 'incorrect' },
],
brandInconsistencies: [
{
field: '브랜드 컬러 적용',
values: [
{ channel: 'YouTube', value: 'Indigo+Cyan 그라디언트 적용 완료', isCorrect: true },
{ channel: 'Instagram KR', value: 'Indigo+Cyan 적용 완료', isCorrect: true },
{ channel: 'Instagram Global', value: 'Indigo+Cyan 적용 완료', isCorrect: true },
{ channel: 'TikTok', value: '단색 화이트 — 브랜드 컬러 미적용', isCorrect: false },
],
impact: '6개 채널 중 5개에서 브랜드 컬러 일관성 우수. TikTok만 제외 — 즉시 수정 시 전 채널 통일성 100%',
recommendation: 'TikTok 프로필 사진을 Indigo+Cyan 원형 로고로 교체 + 채널 아트 통일',
},
{
field: 'CTA 메시지 통일',
values: [
{ channel: 'YouTube', value: '"카카오톡 상담 + 홈페이지"', isCorrect: true },
{ channel: 'Instagram KR', value: '"DM 상담 + 카카오톡"', isCorrect: true },
{ channel: 'Facebook Global', value: '"WhatsApp + DM"', isCorrect: true },
{ channel: 'Naver Blog', value: '"전화 + 카카오톡"', isCorrect: false },
],
impact: 'KR 채널 CTA가 카카오톡 위주로 정착되어 있으나 블로그만 전화 위주 — 모바일 환자 전환 손실 가능',
recommendation: '네이버 블로그 포스트 상단 + 하단 CTA를 "카카오톡 상담 → 전화 백업" 순으로 통일',
},
],
},
// ─── Section 2: Channel Strategies ───
channelStrategies: [
{
channelId: 'youtube', channelName: 'YouTube', icon: 'youtube',
currentStatus: '@o2oclinic — 5,840 구독자, 280 영상, 주 2회 안정 업로드',
targetGoal: '20K 구독자 / 12개월, 다국어 자막 50개 추가',
contentTypes: ['오투오 원장 Q&A 롱폼', 'Shorts (기존 영상 클립)', '국제 환자 브이로그 (다국어 자막)'],
postingFrequency: '주 2회 (Long 1 + Shorts 1)',
tone: '교육적 전문가 — 오투오 원장 직접 설명',
formatGuidelines: [
'롱폼: 6~12분, 시술별 시리즈 (눈/코/윤곽)',
'Shorts: 30~60초, 후크 3초 내 + 다국어 자막',
'썸네일: Indigo+Cyan 워터마크 통일',
'국제 환자 브이로그: EN/ZH/JP 자막 필수',
],
priority: 'P0',
customerJourneyStage: 'consideration',
},
{
channelId: 'instagram_kr', channelName: 'Instagram KR', icon: 'instagram',
currentStatus: '@o2o_clinic — 8,210 팔로워, 1,850 게시물, Reels 142개',
targetGoal: '25K 팔로워 / 12개월, Reels 주 5개',
contentTypes: ['Reels (YouTube Shorts 동시 배포)', 'Carousel (강남언니 2,547 리뷰 스토리화)', 'Stories (병원 일상 + Q&A)', '인플루언서 협업 카루셀'],
postingFrequency: '일 1회 + Stories 일 2-3개',
tone: '전문성 + 친근함 — 시술 디테일을 쉽게 풀어내는 톤',
formatGuidelines: [
'Reels: YouTube Shorts와 동시 게시 (자산 재활용 우선)',
'Carousel: 강남언니 리뷰 50개 선별 → 카루셀 시리즈',
'Stories: 눈/코/윤곽 카테고리별 하이라이트 재구성',
'해시태그: #O2OClinic #강남눈성형 #강남코성형 #윤곽수술 #오투오원장',
],
priority: 'P0',
customerJourneyStage: 'interest',
},
{
channelId: 'instagram_global', channelName: 'Instagram Global', icon: 'instagram',
currentStatus: '@o2o_clinic_global — 6,320 팔로워, 480 게시물, 다국어 Reels',
targetGoal: '18K 팔로워 / 12개월, 의료관광 환자 직접 상담 50건/월',
contentTypes: ['English/Chinese/Japanese subtitled Reels', 'Patient journey Carousel', 'Multilingual FAQ Story'],
postingFrequency: '일 1회 (3개 언어 로테이션)',
tone: 'Professional & welcoming — Korea medical tourism storytelling',
formatGuidelines: [
'KR 콘텐츠 → EN/ZH/JP 번역 자동 배포 파이프라인',
'WhatsApp 상담 CTA를 바이오 + 매 게시물에 삽입',
'Highlights: Eye / Nose / Contouring / Reviews / Booking 5개',
'해시태그: #KoreanPlasticSurgery #GangnamClinic #O2OClinic',
],
priority: 'P0',
customerJourneyStage: 'conversion',
},
{
channelId: 'facebook_global', channelName: 'Facebook Global', icon: 'facebook',
currentStatus: 'O2O Clinic Global — 3,025 팔로워, WhatsApp 연동, Pixel 설치 완료',
targetGoal: '12K 팔로워 + 리타겟팅 ROAS 4x / 6개월',
contentTypes: ['리타겟팅 광고 소재', 'Patient journey 영문 콘텐츠', 'Before/After (consent verified)'],
postingFrequency: '주 2-3회 + 광고 캠페인 상시',
tone: 'Authoritative & warm — 권위와 친근함의 균형',
formatGuidelines: [
'리타겟팅: o2oclinic.com 방문자 픽셀 데이터 활용 (P0)',
'광고 소재 4종 (눈/코/윤곽/Multi) — A/B 테스트 운영',
'WhatsApp CTA 우선 + Messenger 백업',
'월 KPI: ROAS 2.5x → 4.0x 단계 상향',
],
priority: 'P0',
customerJourneyStage: 'conversion',
},
{
channelId: 'naver_blog', channelName: 'Naver Blog', icon: 'globe',
currentStatus: 'blog.naver.com/o2oclinic — 주 2회 SEO 포스팅, 키워드 상위 30+',
targetGoal: '주 2회 유지 + 월 30,000 방문자 (12개월)',
contentTypes: ['SEO 시술 가이드', '환자 후기 (강남언니 리뷰 가공)', 'YouTube 영상 임베드 + 텍스트 가이드'],
postingFrequency: '주 2회',
tone: '정보성 전문가 — "강남 눈성형", "코성형 가격", "윤곽수술 후기" 키워드 중심',
formatGuidelines: [
'2,000자 이상 SEO 최적화 + 이미지 10장 + YouTube 임베드',
'CTA: 카카오톡 상담 우선 → 전화 백업으로 통일 (현재 불일치 수정)',
'키워드 맵: "강남 눈성형", "강남 코성형", "윤곽수술 가격", "오투오 원장"',
'월 1회 키워드 성과 분석 + 다음 달 주제 결정',
],
priority: 'P1',
customerJourneyStage: 'consideration',
},
{
channelId: 'gangnamunni', channelName: '강남언니', icon: 'star',
currentStatus: '9.5점 / 2,547 리뷰 — 응답률 88%, 강남 상위 10%',
targetGoal: '응답률 95%, 12개월 내 3,800 리뷰',
contentTypes: ['리뷰 응답 (일 단위)', '시술 정보 업데이트', '리뷰 SNS 콘텐츠화'],
postingFrequency: '리뷰 응답: 일 단위 / 정보 업데이트: 월 2회',
tone: '진심 어린 의료진 답변 — 형식적 답변 지양',
formatGuidelines: [
'리뷰 응답률 88% → 95% (3개월) 단계 상향',
'2,547 리뷰 중 100개 선별 → SNS 카드뉴스 자산화',
'부정 리뷰 24시간 내 응답 원칙',
'강남언니 프로필에 다국어 시술 설명 추가',
],
priority: 'P0',
customerJourneyStage: 'loyalty',
},
{
channelId: 'tiktok', channelName: 'TikTok', icon: 'video',
currentStatus: '@o2oclinic — 3,400 팔로워, Pixel 미설치',
targetGoal: '12K 팔로워 + Pixel 설치 + 광고 ROAS 3x / 6개월',
contentTypes: ['YouTube Shorts 크로스포스팅', '트렌드 챌린지', '병원 비하인드'],
postingFrequency: '주 5회 (YouTube Shorts 동시 배포)',
tone: '가볍고 접근 가능한 — 20-30대 첫 수술 고민층 타겟',
formatGuidelines: [
'TikTok Pixel 즉시 설치 (P0) — 광고 ROAS 측정 가능화',
'280 YouTube 영상 → Shorts 추출 → TikTok 동시 배포',
'트렌딩 사운드 활용 + 자막 필수',
'의료광고법 준수 — 과장 표현 금지',
],
priority: 'P1',
customerJourneyStage: 'awareness',
},
{
channelId: 'kakaotalk', channelName: 'KakaoTalk', icon: 'messageSquare',
currentStatus: '카카오 채널 친구 4,200+, 자동응답 운영',
targetGoal: '친구 10,000+ + 상담 전환율 35%',
contentTypes: ['시술별 자동응답 시나리오', '예약 리마인더', '월 1회 시술 정보 발송'],
postingFrequency: '주 1-2회 메시지 발송',
tone: '따뜻하고 전문적인 1:1 상담 톤',
formatGuidelines: [
'자동응답 시나리오 — 눈/코/윤곽 시술별 분기',
'예약 리마인더 자동 발송',
'한국어 + 영문/중문 옵션 (의료관광 대비)',
],
priority: 'P1',
customerJourneyStage: 'conversion',
},
],
// ─── Section 3: Content Strategy ───
contentStrategy: {
pillars: [
{
title: '9년 임상의 디테일',
description: '2017년 개원 이래 9년간 축적한 눈·코·윤곽 임상 데이터와 수술 철학을 보여주는 콘텐츠',
relatedUSP: '9 Years of Specialized Expertise',
exampleTopics: ['오투오 원장의 자연스러운 눈성형 5원칙', '코성형 디자인의 3가지 핵심 변수', '윤곽수술이 인상에 미치는 변화', '9년간 변하지 않은 O2O의 원칙 3가지'],
color: '#1E1B4B',
},
{
title: '글로벌 환자 여정',
description: '영문/중문/일문 콘텐츠로 의료관광 환자의 내원 전후 여정을 다큐멘터리화 — 정보 + 신뢰',
relatedUSP: 'Multilingual Medical Tourism Care',
exampleTopics: ['From Bangkok to Seoul — Eye Surgery Journey', '中国患者ソウル鼻整形体験記', '강남에서 회복하기 — 외국인 환자 가이드', 'O2O 외국인 환자 케어 시스템 공개'],
color: '#06B6D4',
},
{
title: '2,547 리뷰의 진심',
description: '강남언니 9.5점 / 2,547 실사용 후기를 콘텐츠 자산으로 전환 — 신뢰 증거 극대화',
relatedUSP: 'Patient-Validated 9.5 Stars',
exampleTopics: ['"눈성형 후 진짜 자연스럽다" — 강남언니 베스트 리뷰 5', '2,547개 리뷰 공통 키워드 분석', '리뷰 만족도 Top 3 시술 — 데이터로 보는 O2O', '리뷰 작성 후기자 인터뷰'],
color: '#0F172A',
},
{
title: '인플루언서 컬래버 시리즈',
description: '뷰티/메디컬 크리에이터 협업 콘텐츠로 신규 환자 도달 — 분기별 5~8명 정기 협업',
relatedUSP: 'Trusted by Beauty Creators',
exampleTopics: ['뷰티 크리에이터 A의 O2O 코성형 후기', '메디컬 크리에이터 B의 윤곽수술 다큐멘터리', '크리에이터 라이브 Q&A', '협업 콘텐츠 비하인드'],
color: '#64748B',
},
],
typeMatrix: [
{ format: 'YouTube Long-form', channels: ['YouTube'], frequency: '주 1회', purpose: '오투오 원장 권위 + 9년 임상 증명' },
{ format: 'Shorts / Reels', channels: ['YouTube', 'Instagram KR', 'Instagram Global', 'TikTok'], frequency: '주 5개', purpose: '280 영상 자산 재활용, 다채널 도달 확대' },
{ format: 'Carousel (리뷰 스토리)', channels: ['Instagram KR'], frequency: '주 2회', purpose: '2,547 리뷰 → 사회적 증거화' },
{ format: 'Multilingual Subtitled Reels', channels: ['Instagram Global'], frequency: '일 1회', purpose: '글로벌 환자 도달 + WhatsApp 전환' },
{ format: 'Blog Post (SEO)', channels: ['Naver Blog'], frequency: '주 2회', purpose: '강남 눈/코/윤곽 검색 상위 노출' },
{ format: 'Influencer Collab Carousel', channels: ['Instagram KR'], frequency: '월 2회', purpose: '신규 팔로워 유입 + 권위 강화' },
{ format: 'Retargeting Ad Creative', channels: ['Facebook Global', 'Instagram Global'], frequency: '월 4-6개', purpose: '글로벌 의료관광 ROAS 향상' },
],
workflow: [
{ step: 1, name: '주제 발굴', description: '시술별 검색 키워드 + 콘텐츠 필러 매칭 + 인플루언서 협업 브리핑', owner: '마케팅 매니저', duration: '2일' },
{ step: 2, name: '제작 / 추출', description: 'AI 초안 + 280 영상 아카이브에서 Shorts 추출 + 인플루언서 컬래버 촬영', owner: 'AI + 콘텐츠팀', duration: '3-5일' },
{ step: 3, name: '의료 검수', description: '오투오 원장 + 의료진 검토 (의료광고법 포함)', owner: '의료진', duration: '1일' },
{ step: 4, name: '다국어 번역', description: 'EN/ZH/JP 자막·캡션 (Global 계정 동시 배포용)', owner: '번역팀', duration: '1-2일' },
{ step: 5, name: '비주얼 마감', description: 'Indigo+Cyan 워터마크 통일 + 채널별 포맷 최적화', owner: '디자인팀', duration: '1일' },
{ step: 6, name: '배포 & 추적', description: '전 채널 동시 배포 + UTM/픽셀 추적 + 강남언니 상담 연계', owner: '마케팅 매니저', duration: '당일' },
],
repurposingSource: '1개 오투오 원장 롱폼 영상 (10분) 또는 인플루언서 협업 콘텐츠 1편',
repurposingOutputs: [
{ format: 'YouTube Long-form', channel: 'YouTube', description: '원본 풀 영상 (KR 기본 + EN/ZH/JP 자막)' },
{ format: 'Shorts 5개', channel: 'YouTube / TikTok', description: '핵심 구간 30-60초 추출 → 동시 배포' },
{ format: 'Reels 5개', channel: 'Instagram KR + Global', description: 'Shorts → KR 원본 + 다국어 자막 버전 동시 배포' },
{ format: 'Carousel 2개', channel: 'Instagram KR', description: '시술 가이드 카드뉴스로 재구성' },
{ format: 'Blog Post 1개', channel: 'Naver Blog', description: '영상 스크립트 → 2,000자 SEO 포스트 (영상 임베드)' },
{ format: 'Stories 5개', channel: 'Instagram KR + Global', description: '촬영 비하인드 + Q&A 스니펫' },
{ format: 'Ad Creative 2개', channel: 'Facebook Global', description: '글로벌 리타겟팅용 영문/중문 광고 소재' },
],
},
// ─── Section 4: Content Calendar ───
calendar: {
weeks: [
{
weekNumber: 1, label: 'Week 1: 9년 임상 — 눈성형 집중',
entries: [
{ dayOfWeek: 0, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: '롱폼: 오투오 원장의 자연스러운 눈성형 5원칙' },
{ dayOfWeek: 1, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Reel: 눈성형 Before/After 30대 케이스' },
{ dayOfWeek: 2, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: 'Shorts: 쌍수 vs 눈매교정 60초 비교' },
{ dayOfWeek: 2, channel: 'Naver Blog', channelIcon: 'globe', contentType: 'blog', title: '강남 눈성형 추천 기준 — 9년 임상이 알려줍니다' },
{ dayOfWeek: 3, channel: 'Instagram Global', channelIcon: 'instagram', contentType: 'social', title: 'Reels (EN/ZH): Eye Surgery Recovery Timeline' },
{ dayOfWeek: 4, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Carousel: 강남언니 베스트 리뷰 5선 — 눈성형' },
{ dayOfWeek: 5, channel: 'Facebook', channelIcon: 'facebook', contentType: 'ad', title: '광고(EN): Global 리타겟팅 — Eye Surgery 캠페인 런칭' },
],
},
{
weekNumber: 2, label: 'Week 2: 코성형 + 인플루언서 컬래버 1차',
entries: [
{ dayOfWeek: 0, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: '롱폼: 코성형 디자인의 3가지 핵심 변수' },
{ dayOfWeek: 1, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: '인플루언서 컬래버 1편: 뷰티 크리에이터 A의 O2O 코성형' },
{ dayOfWeek: 2, channel: 'Instagram Global', channelIcon: 'instagram', contentType: 'social', title: 'Reels (JP): 鼻整形のリカバリータイムライン' },
{ dayOfWeek: 2, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: 'Shorts: 코성형 붓기 30일 타임랩스' },
{ dayOfWeek: 3, channel: 'Naver Blog', channelIcon: 'globe', contentType: 'blog', title: '코성형 가격 vs 가치 — 9년 임상 기준 가이드' },
{ dayOfWeek: 4, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Reel: 코성형 디자인 시뮬레이션 비하인드' },
{ dayOfWeek: 5, channel: 'Facebook', channelIcon: 'facebook', contentType: 'ad', title: '광고(EN/ZH): Nose Surgery 패키지 광고' },
],
},
{
weekNumber: 3, label: 'Week 3: 윤곽수술 + 글로벌 환자 여정',
entries: [
{ dayOfWeek: 0, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: '롱폼: 윤곽수술이 인상에 미치는 변화 — Real Cases' },
{ dayOfWeek: 1, channel: 'Instagram Global', channelIcon: 'instagram', contentType: 'social', title: 'Carousel (EN): From Bangkok to Seoul — Patient Journey' },
{ dayOfWeek: 2, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Reel: V라인 윤곽수술 회복 일기 (동의 케이스)' },
{ dayOfWeek: 3, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: 'Shorts: 윤곽수술 Q&A — 가장 많이 묻는 질문 5' },
{ dayOfWeek: 3, channel: 'Naver Blog', channelIcon: 'globe', contentType: 'blog', title: '윤곽수술 후기 가이드 — 강남언니 2,547 리뷰가 알려준 것' },
{ dayOfWeek: 4, channel: 'Instagram Global', channelIcon: 'instagram', contentType: 'social', title: 'Story (JP): O2O予約フロー — 日本語ご相談' },
{ dayOfWeek: 5, channel: 'Facebook', channelIcon: 'facebook', contentType: 'ad', title: '광고(JP): Facial Contouring Japan 타겟팅' },
],
},
{
weekNumber: 4, label: 'Week 4: 리뷰 자산 + 인플루언서 2차 + 월간 정리',
entries: [
{ dayOfWeek: 0, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: '롱폼: 9년간 변하지 않은 O2O의 원칙 3가지 — 오투오 원장 인터뷰' },
{ dayOfWeek: 1, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Carousel: 2,547 리뷰 공통 키워드 분석 — 자연스럽다 / 디테일 / 친절' },
{ dayOfWeek: 2, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: '인플루언서 컬래버 2편: 메디컬 크리에이터 B의 윤곽수술 다큐' },
{ dayOfWeek: 3, channel: 'YouTube', channelIcon: 'youtube', contentType: 'video', title: 'Shorts: 강남언니 9.5점 달성 감사 — 30초 메시지' },
{ dayOfWeek: 3, channel: 'Naver Blog', channelIcon: 'globe', contentType: 'blog', title: '월간 리뷰 — 4월 O2O Clinic 콘텐츠 베스트 7선' },
{ dayOfWeek: 4, channel: 'Instagram KR', channelIcon: 'instagram', contentType: 'social', title: 'Reel: 다음 달 예고 — 5월 O2O 콘텐츠 시리즈 오픈' },
{ dayOfWeek: 5, channel: 'Facebook', channelIcon: 'facebook', contentType: 'ad', title: '광고(Multi): 월말 글로벌 상담 CTA 캠페인' },
],
},
],
monthlySummary: [
{ type: 'video', label: '영상 (롱폼+Shorts)', count: 12, color: '#1E1B4B' },
{ type: 'blog', label: '블로그', count: 4, color: '#06B6D4' },
{ type: 'social', label: 'Instagram KR/Global', count: 12, color: '#0F172A' },
{ type: 'ad', label: '광고 (Facebook Global)', count: 4, color: '#64748B' },
],
},
// ─── Section 5: Asset Collection ───
assetCollection: {
assets: [
{ id: 'o2o-a1', source: 'youtube', sourceLabel: 'YouTube', type: 'video', title: 'YouTube 영상 280개 아카이브 (@o2oclinic)', description: '9년간 누적 280개 영상 — Shorts 추출 + 다국어 자막 추가 우선 자산', repurposingSuggestions: ['Shorts 100개 추출 (P0)', 'EN/ZH/JP 자막 50개 추가', 'Instagram Reels 변환', 'Blog 임베드'], status: 'collected' },
{ id: 'o2o-a2', source: 'social', sourceLabel: '강남언니', type: 'text', title: '강남언니 환자 리뷰 2,547건 (9.5점)', description: '2,547개 검증된 후기 — 시술별 분류 후 SNS 콘텐츠 자산화', repurposingSuggestions: ['리뷰 100개 → Carousel 시리즈', 'Story 카드 자동 발행 시스템', '광고 소셜프루프', 'Blog 환자 스토리'], status: 'pending' },
{ id: 'o2o-a3', source: 'social', sourceLabel: 'Instagram KR', type: 'photo', title: 'Instagram @o2o_clinic 게시물 1,850개', description: 'KR 메인 계정 누적 1,850 게시물 — 고성과 콘텐츠 → 다국어 변환 원본', repurposingSuggestions: ['고성과 게시물 → Reel 변환', 'Global 계정 다국어 배포', '광고 소재 추출'], status: 'collected' },
{ id: 'o2o-a4', source: 'social', sourceLabel: 'Instagram Global', type: 'photo', title: 'Instagram @o2o_clinic_global 다국어 콘텐츠', description: '480개 다국어 콘텐츠 — Facebook 광고 소재 + LINE/WeChat 콘텐츠 재활용', repurposingSuggestions: ['Facebook 글로벌 광고 소재', 'LINE/WeChat 콘텐츠 재활용', 'YouTube 다국어 시리즈 소스'], status: 'collected' },
{ id: 'o2o-a5', source: 'homepage', sourceLabel: '홈페이지', type: 'photo', title: 'O2O Clinic 시설·의료진 사진', description: 'o2oclinic.com 시설 사진 + 오투오 원장 외 의료진 8명 프로필', repurposingSuggestions: ['Instagram 시설 투어 Reel', 'YouTube B-roll', '블로그 위치 안내', '광고 배경'], status: 'collected' },
{ id: 'o2o-a6', source: 'homepage', sourceLabel: '홈페이지', type: 'text', title: '시술 카테고리 3종 설명 (눈·코·윤곽)', description: 'o2oclinic.com 시술별 상세 설명 — 블로그 SEO + 다국어 카드뉴스 소스', repurposingSuggestions: ['블로그 SEO 포스트 소스', '다국어 카드뉴스 텍스트', 'WhatsApp 자동응답 FAQ 소스'], status: 'collected' },
{ id: 'o2o-a7', source: 'blog', sourceLabel: '네이버 블로그', type: 'text', title: '네이버 블로그 포스트 200+개', description: '주 2회 정기 발행 누적 — SEO 키워드 상위 노출 30+개', repurposingSuggestions: ['고트래픽 포스트 → Reel 변환', '키워드 맵 확장', '내부 링크 재구성'], status: 'collected' },
{ id: 'o2o-a8', source: 'social', sourceLabel: '인플루언서 협업', type: 'video', title: '뷰티/메디컬 크리에이터 협업 영상 (제작 필요)', description: '분기별 5~8명 정기 협업 시스템 — 신규 도달 + 권위 강화', repurposingSuggestions: ['Instagram 컬래버 카루셀', 'YouTube 협업 시리즈', 'TikTok 크로스포스팅', '광고 소셜프루프'], status: 'needs_creation' },
],
youtubeRepurpose: [
{ title: '오투오 원장이 알려주는 자연스러운 눈성형 5원칙', views: 84200, type: 'Long', repurposeAs: ['Shorts 5개 추출', 'Instagram Reels (KR + Global)', 'Blog 임베드', 'Carousel 2개'] },
{ title: '코성형 붓기, 솔직히 얼마나 가나요? — 30일 타임라인', views: 67500, type: 'Long', repurposeAs: ['Shorts 3개 추출', 'TikTok 크로스포스팅', 'Reels 변환', 'Blog SEO 포스트'] },
{ title: 'V라인 윤곽수술 회복 일기 — 환자 동의 케이스', views: 52300, type: 'Long', repurposeAs: ['Shorts 4개 추출', 'Carousel 시리즈', 'Global 계정 EN 자막'] },
{ title: '쌍수 vs 눈매교정 차이 60초', views: 124000, type: 'Short', repurposeAs: ['Instagram KR + Global 동시 배포', 'TikTok 크로스포스팅', 'Story 시리즈'] },
{ title: '코끝 성형 전후 — Real Case', views: 98700, type: 'Short', repurposeAs: ['Reels 변환', 'TikTok 트렌딩 사운드 추가', '광고 소재 활용'] },
],
},
// ─── Section 6: Repurposing Proposals ───
repurposingProposals: [
{
sourceVideo: { title: '오투오 원장 롱폼 인터뷰 (신규 제작)', views: 0, type: 'Long', repurposeAs: [] },
estimatedEffort: 'medium',
priority: 'high',
outputs: [
{ format: 'Shorts 5개', channel: 'YouTube / TikTok', description: '"9년의 원칙" 핵심 구간 30-60초 클립' },
{ format: 'Reels 5개 (KR + Global)', channel: 'Instagram KR + Global', description: 'Shorts 다국어 자막 버전 동시 배포' },
{ format: 'Carousel 2개', channel: 'Instagram KR', description: '오투오 원장 철학 카드뉴스화' },
{ format: 'Blog Post 1개', channel: 'Naver Blog', description: '인터뷰 풀 스크립트 → 2,500자 SEO 포스트' },
{ format: '광고 소재 2개', channel: 'Facebook Global', description: '"9 Years of Excellence" 영문/중문 광고' },
],
},
{
sourceVideo: { title: '강남언니 2,547 리뷰 → 콘텐츠화', views: 2547, type: 'Long', repurposeAs: [] },
estimatedEffort: 'low',
priority: 'high',
outputs: [
{ format: 'Carousel 시리즈 (월 8회)', channel: 'Instagram KR', description: '시술별 베스트 리뷰 카드뉴스 — 3년치 콘텐츠 자산' },
{ format: 'Story 자동 발행', channel: 'Instagram KR + Global', description: '매주 새 리뷰 → Story 자동 발행 파이프라인' },
{ format: '광고 소셜프루프', channel: 'Facebook Global', description: '"2,547 verified reviews" 영문 광고 소재' },
{ format: 'Blog 환자 스토리', channel: 'Naver Blog', description: '리뷰 → 환자 여정 스토리 블로그 변환' },
],
},
{
sourceVideo: { title: '인플루언서 컬래버 시리즈 (신규 제작 — 분기 5~8명)', views: 0, type: 'Long', repurposeAs: [] },
estimatedEffort: 'high',
priority: 'high',
outputs: [
{ format: '컬래버 카루셀', channel: 'Instagram KR', description: '인플루언서별 1편 카루셀 + 비하인드 Story' },
{ format: 'YouTube 협업 시리즈', channel: 'YouTube', description: '인플루언서 게스트 인터뷰 시리즈' },
{ format: 'TikTok 크로스포스팅', channel: 'TikTok', description: '협업 영상 클립 → TikTok 노출 확대' },
{ format: '광고 소재 활용', channel: 'Facebook + Instagram', description: '컬래버 콘텐츠 → 광고 리타겟팅 소재' },
],
},
{
sourceVideo: { title: '글로벌 환자 여정 다큐 (신규 제작 — 분기 1편)', views: 0, type: 'Long', repurposeAs: [] },
estimatedEffort: 'medium',
priority: 'medium',
outputs: [
{ format: 'YouTube 다큐 (다국어 자막)', channel: 'YouTube', description: '태국·일본·중국 환자 여정 풀 영상 — 글로벌 노출' },
{ format: 'Instagram Global Reels 시리즈', channel: 'Instagram Global', description: '여정 클립 → Global Reels 5편 시리즈' },
{ format: 'Facebook 광고', channel: 'Facebook Global', description: '국가별 타겟팅 광고 소재 (TH/JP/CN)' },
{ format: 'WhatsApp 콘텐츠', channel: 'WhatsApp 자동응답', description: '여정 요약 + 상담 CTA — 글로벌 환자 1차 응대' },
],
},
],
// ─── Section 7: Workflow Tracker ───
workflow: {
items: [
{
id: 'o2o-wf-001',
title: 'TikTok Pixel 설치 + 1차 광고 캠페인 런칭',
contentType: 'image-text',
channel: 'TikTok',
channelIcon: 'video',
stage: 'planning',
imageTextDraft: {
type: 'blog',
headline: 'TikTok Pixel 설치 — ROAS 측정 시작',
copy: [
'o2oclinic.com에 TikTok Pixel 코드 설치 (GTM 통한 배포)',
'광고 캠페인 v1: 눈성형 Before/After Shorts → Awareness',
'광고 캠페인 v2: 인플루언서 컬래버 → Consideration',
'주간 ROAS 모니터링 + 예산 재배분 SOP 문서화',
],
},
},
{
id: 'o2o-wf-002',
title: 'YouTube 기존 영상 EN/ZH 자막 1차 30개 추가',
contentType: 'video',
channel: 'YouTube',
channelIcon: 'youtube',
stage: 'planning',
videoDraft: {
script: '[자막 추가 우선순위]\n1. 조회수 상위 10개 (눈성형 5원칙, 코성형 타임라인 등)\n2. 글로벌 검색 키워드 일치 영상 10개\n3. 인플루언서 컬래버 영상 10개\n\n[작업 방식]\n- EN 자막: AI 자동 → 네이티브 검수\n- ZH 자막: 중국어 전문 번역사 의뢰\n- YouTube Studio 다국어 제목·설명 동시 적용',
shootingGuide: [
'자막 완료 영상 → 채널 플레이리스트 "Multilingual" 신규 생성',
'제목·설명에 EN/ZH 키워드 추가 (SEO)',
'월간 자막 추가 KPI: 10개 → 누적 50개 (3개월)',
],
duration: '3개월 누적 50개',
},
},
{
id: 'o2o-wf-003',
title: 'Facebook Global 리타겟팅 광고 캠페인 v1',
contentType: 'image-text',
channel: 'Facebook Global',
channelIcon: 'facebook',
stage: 'planning',
imageTextDraft: {
type: 'blog',
headline: 'Facebook 리타겟팅 — Pixel 활용 즉시 ROAS 향상',
copy: [
'o2oclinic.com 방문자 픽셀 데이터 활용 — 30일 lookback',
'광고 소재 4종: 눈/코/윤곽/Multi',
'타겟팅: 영문 페이지 방문자 + Instagram Global 팔로워',
'WhatsApp CTA 우선 + Messenger 백업',
'주간 ROAS 리뷰 + 소재 A/B 테스트 운영',
],
},
},
{
id: 'o2o-wf-004',
title: '인플루언서 협업 SOP 문서화 + 1차 5명 컨택',
contentType: 'image-text',
channel: 'Instagram KR',
channelIcon: 'instagram',
stage: 'planning',
imageTextDraft: {
type: 'blog',
headline: '인플루언서 협업 시스템화 — 분기 5~8명 정기 협업',
copy: [
'협업 SOP: 후보 선정 → 컨택 → 계약 → 촬영 → 콘텐츠 발행 → 성과 측정',
'1차 후보군: 뷰티 크리에이터 3명 + 메디컬 크리에이터 2명',
'협업 콘텐츠 패키지: Instagram 카루셀 + Story + Reel 1세트',
'계약: 의료광고법 준수 가이드 사전 공유 필수',
],
},
},
{
id: 'o2o-wf-005',
title: '강남언니 2,547 리뷰 자동 카드뉴스 시스템',
contentType: 'image-text',
channel: 'Instagram KR',
channelIcon: 'instagram',
stage: 'ai-draft',
imageTextDraft: {
type: 'cardnews',
headline: '2,547개의 진심 — 강남언니 9.5점이 증명합니다',
copy: [
'슬라이드 1: "강남언니 9.5점 / 2,547 리뷰 — 감사합니다"',
'슬라이드 2-5: 시술별 베스트 리뷰 4개 발췌 (익명화 처리)',
'슬라이드 6: "리뷰 작성 → 강남언니 프로필 링크"',
'주 2회 자동 발행 — 신규 리뷰 RSS 모니터링',
],
layoutHint: 'Indigo Deep 배경, Cyan 강조 텍스트, O2O 워드마크 하단 고정',
},
},
],
},
};

392
src/data/mockReport_o2o.ts Normal file
View File

@ -0,0 +1,392 @@
import type { MarketingReport } from '../types/report';
import { mockReport } from './mockReport';
/**
* O2O Clinic (· )
*
* . ·
* INFINITH .
*
* :
* - : O2O Clinic ( )
* - : (Dr. O2O)
* - : 2017 (9)
* - : ··
* - : Indigo Deep (#1E1B4B) + Cyan (#06B6D4)
*
* 6 ·:
* - (78/100)
* - Instagram (/ )
* - YouTube (/ )
* - 9.5 + 2,547
* - +
*/
export const mockReportO2O: MarketingReport = {
...mockReport,
id: 'o2o',
createdAt: '2026-04-14',
targetUrl: 'https://www.o2oclinic.com',
overallScore: 78,
clinicSnapshot: {
...mockReport.clinicSnapshot,
name: 'O2O Clinic',
nameEn: 'O2O Plastic Surgery Clinic',
established: '2017',
yearsInBusiness: 9,
staffCount: 8,
leadDoctor: {
name: '오투오',
credentials: 'O2O Clinic 대표원장 · 눈·코·윤곽 전문',
rating: 9.6,
reviewCount: 2547,
},
overallRating: 9.5,
totalReviews: 2547,
priceRange: { min: '300,000', max: '15,000,000+', currency: '₩' },
certifications: [
'성형외과 전문의',
'대한성형외과학회 정회원',
'안면윤곽·코성형 다년 임상',
'국제 환자 영문/중문 상담',
],
mediaAppearances: ['강남언니 9.5점 / 2,547 리뷰', '국제 환자 의료관광 인증'],
medicalTourism: ['영어·중국어·일본어 코디네이터 상주', '의료관광 인증 클리닉'],
location: '서울 강남구 (강남역 인근)',
nearestStation: '2호선 강남역',
phone: '02-2020-2020',
domain: 'o2oclinic.com',
source: 'registry' as const,
registryData: {
district: '강남',
branches: '본원 1개',
brandGroup: '눈·코·윤곽 전문 · 글로벌',
gangnamUnniUrl: 'https://www.gangnamunni.com/hospitals/o2o',
googleMapsUrl: 'https://maps.google.com/?q=O2O+Clinic',
},
logoImages: {
circle: '/assets/clients/o2o/logo-circle.png',
horizontal: '/assets/clients/o2o/logo-horizontal.png',
korean: '/assets/clients/o2o/logo-korean.png',
},
brandColors: {
primary: '#1E1B4B',
accent: '#06B6D4',
text: '#0F172A',
},
},
channelScores: [
{ channel: 'YouTube', icon: 'youtube', score: 76, maxScore: 100, status: 'good', headline: '@o2oclinic — 5,840 구독자 · 280 영상 · 주 2회 안정 업로드' },
{ channel: 'Instagram', icon: 'instagram', score: 82, maxScore: 100, status: 'good', headline: '@o2o_clinic — 8,210 팔로워 · Reels 활성 · 다국어 운영' },
{ channel: 'Facebook', icon: 'facebook', score: 65, maxScore: 100, status: 'warning', headline: '@O2OClinicGlobal — 3,025 팔로워 · 국제 환자 광고 채널' },
{ channel: '강남언니', icon: 'star', score: 90, maxScore: 100, status: 'good', headline: '9.5점 / 2,547 리뷰 — 응답률 88% · 강남 상위 10%' },
{ channel: 'Website', icon: 'globe', score: 78, maxScore: 100, status: 'good', headline: 'o2oclinic.com — 다국어 랜딩 · 픽셀 설치 완료' },
{ channel: '네이버 블로그', icon: 'globe', score: 72, maxScore: 100, status: 'good', headline: 'blog.naver.com/o2oclinic — 주 2회 SEO 포스팅' },
],
youtubeAudit: {
...mockReport.youtubeAudit,
channelName: 'O2O Clinic',
handle: '@o2oclinic',
subscribers: 5840,
totalVideos: 280,
totalViews: 1240000,
weeklyViewGrowth: { absolute: 4200, percentage: 3.4 },
estimatedMonthlyRevenue: { min: 50, max: 180 },
avgVideoLength: '6분',
uploadFrequency: '주 2회 (Long 1 + Shorts 1)',
channelCreatedDate: '2017-08-15',
subscriberRank: '강남 성형외과 채널 상위 25%',
channelDescription: 'O2O Clinic — 눈·코·윤곽 전문. 9년의 임상, 2,547개의 검증된 후기. 국제 환자 환영.',
linkedUrls: [
{ label: 'O2O Clinic 공식 홈페이지', url: 'o2oclinic.com' },
{ label: '강남언니 프로필', url: 'gangnamunni.com/hospitals/o2o' },
],
playlists: ['눈성형 가이드', '코성형 시리즈', '윤곽수술 케이스', '오투오 원장 Q&A', '국제 환자 브이로그', 'Shorts'],
topVideos: [
{ title: '오투오 원장이 알려주는 자연스러운 눈성형 5원칙', views: 84200, uploadedAgo: '3개월 전', type: 'Long', duration: '8:42' },
{ title: '코성형 붓기, 솔직히 얼마나 가나요? — 30일 타임라인', views: 67500, uploadedAgo: '1개월 전', type: 'Long', duration: '6:15' },
{ title: 'V라인 윤곽수술 회복 일기 — 환자 동의 케이스', views: 52300, uploadedAgo: '2주 전', type: 'Long', duration: '12:08' },
{ title: '쌍수 vs 눈매교정 차이 60초', views: 124000, uploadedAgo: '2개월 전', type: 'Short', duration: '0:60' },
{ title: '코끝 성형 전후 — Real Case', views: 98700, uploadedAgo: '3주 전', type: 'Short', duration: '0:45' },
],
diagnosis: [
{ category: '안정적 업로드 빈도 — 강점', detail: '주 2회 정기 업로드로 알고리즘 신호 양호. 9년간 누적 280개 영상 = 콘텐츠 자산 풍부', severity: 'good' },
{ category: 'Shorts 활용 우수', detail: 'Long-form 영상에서 Shorts 추출 비율 35% — 평균 (15%) 대비 2배 이상', severity: 'good' },
{ category: '다국어 자막 추가 권장', detail: '영문/중문 자막을 추가하면 글로벌 도달 즉시 1.8~2.5배 확대 예상', severity: 'warning' },
],
},
instagramAudit: {
accounts: [
{
handle: '@o2o_clinic',
language: 'KR',
label: 'KR 메인 공식',
posts: 1850,
followers: 8210,
following: 312,
category: 'Health/beauty',
profileLink: 'o2oclinic.com',
highlights: ['눈성형', '코성형', '윤곽수술', '리뷰', '글로벌'],
reelsCount: 142,
contentFormat: 'Reels (50%) + Carousel (30%) + Story (20%)',
profilePhoto: 'O2O 로고 (Indigo + Cyan)',
bio: 'O2O Clinic 공식 · 눈·코·윤곽 전문 · 강남역 · 영문/중문 상담 가능 · o2oclinic.com',
},
{
handle: '@o2o_clinic_global',
language: 'EN',
label: 'Global 공식',
posts: 480,
followers: 6320,
following: 215,
category: 'Health/beauty',
profileLink: 'o2oclinic.com',
highlights: ['Eye', 'Nose', 'Contouring', 'Reviews', 'Booking'],
reelsCount: 95,
contentFormat: 'English / Chinese / Japanese subtitled Reels',
profilePhoto: 'O2O Global 로고',
bio: 'O2O Clinic Global · Eye · Nose · Facial Contouring · Gangnam Seoul · DM for consultation',
},
],
diagnosis: [
{ category: 'Reels 활용도 우수', detail: '게시물 중 Reels 비율 50% — 알고리즘 친화적 콘텐츠 믹스', severity: 'good' },
{ category: '글로벌 계정 운영 — 차별화 강점', detail: '국내 + 영문 글로벌 계정 분리 운영으로 외국인 환자 직접 도달 가능', severity: 'good' },
{ category: '인플루언서 협업 미흡', detail: '뷰티 크리에이터 협업 콘텐츠 0편 — 신규 도달 확장 기회', severity: 'warning' },
],
},
facebookAudit: {
pages: [
{
url: 'facebook.com/O2OClinicGlobal',
pageName: 'O2O Clinic Global',
language: 'EN',
label: 'Global 공식',
followers: 3025,
following: 0,
category: 'Plastic Surgeon',
bio: 'O2O Clinic — Eye, Nose, Facial Contouring | Gangnam Seoul | Multilingual Consultation',
logo: 'O2O Global 로고',
logoDescription: 'Indigo + Cyan O2O 워드마크',
link: 'o2oclinic.com',
linkedDomain: 'o2oclinic.com',
reviews: 142,
recentPostAge: '5일 전',
hasWhatsApp: true,
postFrequency: '주 2~3회',
topContentType: 'Patient journey + Before/After (consent verified)',
engagement: '게시물당 평균 좋아요 80~150 / 댓글 10~25',
},
],
diagnosis: [
{ category: '국제 환자 광고 채널로 활성화 양호', detail: 'WhatsApp 연동 + 영문 콘텐츠 정기 업로드로 글로벌 환자 직접 상담 경로 확보', severity: 'good' },
{ category: '리타겟팅 광고 운영 부재', detail: 'Pixel은 설치되어 있으나 리타겟팅 캠페인 미운영 — 즉시 ROAS 기회', severity: 'warning' },
],
brandInconsistencies: [],
consolidationRecommendation: 'Facebook은 글로벌 채널로 명확히 포지셔닝되어 운영 중. 리타겟팅 캠페인 도입 시 ROAS 즉시 개선 가능.',
},
otherChannels: [
{ name: '네이버 블로그', status: 'active', details: '주 2회 SEO 포스팅 · 키워드 상위 노출 30+', url: 'https://blog.naver.com/o2oclinic' },
{ name: '네이버 카페', status: 'active', details: 'O2O Clinic 카페 운영 중 · 회원 1,200+', url: 'https://cafe.naver.com/o2oclinic' },
{ name: '강남언니', status: 'active', details: '9.5점 / 2,547 리뷰 · 응답률 88%', url: 'https://www.gangnamunni.com/hospitals/o2o' },
{ name: '네이버 플레이스', status: 'active', details: '플레이스 운영 · 사진 80+ · 별점 4.8', url: 'https://map.naver.com/v5/search/O2O+Clinic' },
{ name: '카카오톡', status: 'active', details: '카카오 채널 친구 4,200+ · 자동응답 운영', url: 'https://o2oclinic.com' },
{ name: 'TikTok', status: 'active', details: '@o2oclinic · 팔로워 3,400 · Shorts 크로스포스팅', url: 'https://www.tiktok.com/@o2oclinic' },
],
websiteAudit: {
primaryDomain: 'o2oclinic.com',
additionalDomains: [{ domain: 'o2oclinic.com/en', purpose: '영문 랜딩' }, { domain: 'o2oclinic.com/zh', purpose: '중문 랜딩' }],
snsLinksOnSite: true,
snsLinksDetail: [
{ platform: 'YouTube', url: 'https://www.youtube.com/@o2oclinic', location: 'Footer + Header' },
{ platform: 'Instagram', url: 'https://www.instagram.com/o2o_clinic', location: 'Footer + Header' },
{ platform: 'Instagram Global', url: 'https://www.instagram.com/o2o_clinic_global', location: 'Footer (EN page)' },
{ platform: 'Facebook', url: 'https://www.facebook.com/O2OClinicGlobal', location: 'Footer (EN page)' },
{ platform: 'Naver Blog', url: 'https://blog.naver.com/o2oclinic', location: 'Footer' },
{ platform: 'TikTok', url: 'https://www.tiktok.com/@o2oclinic', location: 'Footer' },
],
trackingPixels: [
{ name: 'Google Analytics 4', installed: true, details: 'GA4 + GTM 정상 운영' },
{ name: 'Meta Pixel', installed: true, details: 'Facebook/Instagram 광고 픽셀 설치 완료' },
{ name: 'Naver Analytics', installed: true, details: '네이버 검색광고 전환 추적' },
{ name: 'TikTok Pixel', installed: false, details: '미설치 — 도입 권장' },
],
mainCTA: '온라인 상담 예약 + 카카오톡 + WhatsApp (글로벌)',
},
problemDiagnosis: [
{
category: 'TikTok 픽셀 미설치 — 광고 ROAS 측정 불가',
detail: '@o2oclinic TikTok 계정에 트래픽이 발생하고 있으나 픽셀이 없어 광고 캠페인 ROAS 측정·최적화 불가. 즉시 설치 권장.',
severity: 'warning',
},
{
category: '인플루언서 협업 미운영 — 신규 도달 기회 손실',
detail: '뷰티/메디컬 크리에이터 협업 콘텐츠 0편. 6개월 내 5~8명 협업 시 신규 팔로워 30~50% 증가 예상.',
severity: 'warning',
},
{
category: '리타겟팅 광고 미운영 — Meta Pixel 설치되어 있으나 활용 부족',
detail: 'o2oclinic.com 방문자 누적 데이터가 있으나 Facebook/Instagram 리타겟팅 캠페인 미운영. ROAS 즉시 200~300% 개선 기회.',
severity: 'warning',
},
{
category: '글로벌 콘텐츠 — 강점 확장 여지',
detail: '영문 Instagram + Global Facebook 운영 중이나, YouTube 채널은 한국어 위주. 영문/중문 자막 추가 시 도달 1.8~2.5배 확대 예상.',
severity: 'warning',
},
],
transformation: {
...mockReport.transformation,
brandIdentity: [
{ area: '브랜드 포지셔닝', asIs: '눈·코·윤곽 전문', toBe: '"O2O Clinic — 9년의 임상, 2,547개의 진심"' },
{ area: '컬러 시스템', asIs: 'Indigo Deep + Cyan 명문화 완료', toBe: '전 채널 디자인 가이드 SOP 발급' },
{ area: '글로벌 메시지', asIs: '국문/영문 분리 운영', toBe: 'YouTube 다국어 자막 추가 → 한국어 콘텐츠로 글로벌 도달' },
],
platformStrategies: [
{
platform: 'YouTube',
icon: 'youtube',
currentMetric: '5,840 subscribers · 280 videos',
targetMetric: '20K / 12개월',
strategies: [
{ strategy: '다국어 자막 우선 50개', detail: '기존 영상에 EN/ZH/JP 자막 추가 → 글로벌 검색 도달 즉시 확대' },
{ strategy: '오투오 원장 Q&A 시리즈 정기화', detail: '월 2회 롱폼 + 월 4회 Shorts 추출 → 권위 콘텐츠' },
{ strategy: '인플루언서 컬래버 분기 1회', detail: '뷰티/메디컬 크리에이터 협업으로 신규 구독자 유입' },
],
},
{
platform: 'Instagram',
icon: 'instagram',
currentMetric: 'KR 8,210 + Global 6,320 · Reels 활성',
targetMetric: 'KR 25K + Global 18K / 12개월',
strategies: [
{ strategy: 'Reels 주 5회로 증가', detail: 'YouTube Shorts와 동시 다국어 배포 — 자산 재활용' },
{ strategy: '인플루언서 카루셀 시리즈', detail: '월 2회 협업 콘텐츠 — 신규 팔로워 유입' },
{ strategy: '강남언니 리뷰 → Story 자동 변환', detail: '2,547개 리뷰 자산을 Story 카드로 주 2회 발행' },
],
},
{
platform: 'Facebook',
icon: 'facebook',
currentMetric: 'Global 3,025 followers · WhatsApp 연동 완료',
targetMetric: 'Global 12K + 리타겟팅 ROAS 4x / 6개월',
strategies: [
{ strategy: '리타겟팅 광고 캠페인 즉시 시작', detail: 'o2oclinic.com 방문자 픽셀 데이터 활용 — 영문/중문 광고 소재 4종' },
{ strategy: 'WhatsApp 자동응답 시나리오 확대', detail: '눈/코/윤곽 시술별 FAQ 자동응답 — 글로벌 환자 1차 응대' },
],
},
],
websiteImprovements: [
{ area: '다국어 랜딩페이지', asIs: 'EN/ZH 운영 중', toBe: '일본어 랜딩 추가 + 채널별 UTM 추적 강화' },
{ area: 'TikTok Pixel', asIs: '미설치', toBe: 'TikTok Pixel 즉시 설치 → 광고 ROAS 측정 가능' },
],
newChannelProposals: [
{ channel: 'LINE (일본)', priority: 'P1', rationale: '일본 환자 직접 상담 경로 — Instagram JP 콘텐츠와 연동' },
{ channel: 'WeChat 공식 계정 (중국)', priority: 'P1', rationale: '중국 환자 의료관광 전환 채널 — 위챗 미니프로그램 검토' },
{ channel: '인플루언서 협업 시스템화', priority: 'P0', rationale: '단발성 협업이 아닌 분기별 5~8명 정기 협업 SOP 구축' },
],
},
roadmap: [
{
month: 1,
title: 'Foundation',
subtitle: '광고 인프라 + 다국어',
tasks: [
{ task: 'TikTok Pixel 설치 + 광고 캠페인 시작', completed: false },
{ task: 'YouTube 기존 영상 EN/ZH 자막 30개 추가', completed: false },
{ task: 'Facebook 리타겟팅 광고 캠페인 v1 런칭', completed: false },
{ task: '인플루언서 협업 SOP 문서화 + 1차 5명 컨택', completed: false },
],
},
{
month: 2,
title: 'Content Engine',
subtitle: '자산 재활용 + 협업',
tasks: [
{ task: 'YouTube 주 2회 정착 + Shorts 주 3회로 증가', completed: false },
{ task: 'Instagram Reels 주 5회 (KR + Global 동시)', completed: false },
{ task: '인플루언서 협업 카루셀 1차 발행', completed: false },
{ task: '강남언니 Story 자동 발행 시스템 구축', completed: false },
],
},
{
month: 3,
title: 'Optimization',
subtitle: '성과 측정 + 확장',
tasks: [
{ task: 'TikTok·Facebook ROAS 분석 + 예산 재배분', completed: false },
{ task: 'LINE/WeChat 채널 개설 검토 → 결정', completed: false },
{ task: '월간 KPI 리뷰 + 다음 분기 전략', completed: false },
],
},
],
kpiDashboard: [
{ metric: 'YouTube 구독자', current: '5,840', target3Month: '9,000', target12Month: '20,000' },
{ metric: 'YouTube 다국어 자막 영상', current: '0', target3Month: '50', target12Month: '150' },
{ metric: 'Instagram KR 팔로워', current: '8,210', target3Month: '12,500', target12Month: '25,000' },
{ metric: 'Instagram Global 팔로워', current: '6,320', target3Month: '9,500', target12Month: '18,000' },
{ metric: '강남언니 리뷰', current: '2,547', target3Month: '2,800', target12Month: '3,800' },
{ metric: '인플루언서 협업', current: '0', target3Month: '5건', target12Month: '20건' },
{ metric: '리타겟팅 광고 ROAS', current: '미측정', target3Month: '2.5x', target12Month: '4.0x' },
],
screenshots: [
{
id: 'yt-channel',
url: '/assets/clients/o2o/screenshots/yt-channel.png',
channel: 'YouTube',
capturedAt: '2026-04-14T10:00:00Z',
caption: 'O2O Clinic @o2oclinic — 5,840 구독자, 280 영상',
sourceUrl: 'https://www.youtube.com/@o2oclinic',
},
{
id: 'ig-profile',
url: '/assets/clients/o2o/screenshots/ig-profile.png',
channel: 'Instagram',
capturedAt: '2026-04-14T10:02:00Z',
caption: 'Instagram @o2o_clinic — 8,210 팔로워 (KR 메인)',
sourceUrl: 'https://www.instagram.com/o2o_clinic',
},
{
id: 'ig-global',
url: '/assets/clients/o2o/screenshots/ig-global.png',
channel: 'Instagram Global',
capturedAt: '2026-04-14T10:03:00Z',
caption: 'Instagram @o2o_clinic_global — 6,320 팔로워 (영문)',
sourceUrl: 'https://www.instagram.com/o2o_clinic_global',
},
{
id: 'fb-page',
url: '/assets/clients/o2o/screenshots/fb-page.png',
channel: 'Facebook',
capturedAt: '2026-04-14T10:04:00Z',
caption: 'Facebook O2O Clinic Global — 3,025 팔로워 + WhatsApp',
sourceUrl: 'https://www.facebook.com/O2OClinicGlobal',
},
{
id: 'gangnamunni',
url: '/assets/clients/o2o/screenshots/gangnamunni.png',
channel: '강남언니',
capturedAt: '2026-04-14T10:05:00Z',
caption: '강남언니 — O2O Clinic 9.5점, 2,547 리뷰',
sourceUrl: 'https://www.gangnamunni.com/hospitals/o2o',
},
{
id: 'website-homepage',
url: '/assets/clients/o2o/screenshots/website-homepage.png',
channel: 'Website',
capturedAt: '2026-04-14T10:06:00Z',
caption: 'o2oclinic.com — 다국어 공식 홈페이지',
sourceUrl: 'https://www.o2oclinic.com',
},
],
};

View File

@ -9,6 +9,7 @@ import { mockPlanGrand } from '../data/mockPlan_grand';
import { mockPlanWonjin } from '../data/mockPlan_wonjin'; import { mockPlanWonjin } from '../data/mockPlan_wonjin';
import { mockPlanTs } from '../data/mockPlan_ts'; import { mockPlanTs } from '../data/mockPlan_ts';
import { mockPlanIrum } from '../data/mockPlan_irum'; import { mockPlanIrum } from '../data/mockPlan_irum';
import { mockPlanO2O } from '../data/mockPlan_o2o';
const DEMO_PLANS: Record<string, MarketingPlan> = { const DEMO_PLANS: Record<string, MarketingPlan> = {
'view-clinic': mockPlan, 'view-clinic': mockPlan,
@ -17,6 +18,7 @@ const DEMO_PLANS: Record<string, MarketingPlan> = {
'wonjin': mockPlanWonjin, 'wonjin': mockPlanWonjin,
'ts': mockPlanTs, 'ts': mockPlanTs,
'irum': mockPlanIrum, 'irum': mockPlanIrum,
'o2o': mockPlanO2O,
}; };
interface UseMarketingPlanResult { interface UseMarketingPlanResult {

View File

@ -10,6 +10,7 @@ import { mockReportGrand } from '../data/mockReport_grand';
import { mockReportWonjin } from '../data/mockReport_wonjin'; import { mockReportWonjin } from '../data/mockReport_wonjin';
import { mockReportTs } from '../data/mockReport_ts'; import { mockReportTs } from '../data/mockReport_ts';
import { mockReportIrum } from '../data/mockReport_irum'; import { mockReportIrum } from '../data/mockReport_irum';
import { mockReportO2O } from '../data/mockReport_o2o';
const DEMO_REPORTS: Record<string, MarketingReport> = { const DEMO_REPORTS: Record<string, MarketingReport> = {
'view-clinic': mockReport, 'view-clinic': mockReport,
@ -18,6 +19,7 @@ const DEMO_REPORTS: Record<string, MarketingReport> = {
'wonjin': mockReportWonjin, 'wonjin': mockReportWonjin,
'ts': mockReportTs, 'ts': mockReportTs,
'irum': mockReportIrum, 'irum': mockReportIrum,
'o2o': mockReportO2O,
}; };
const DEMO_HANDLES: Record<string, Record<string, string | null>> = { const DEMO_HANDLES: Record<string, Record<string, string | null>> = {
@ -27,6 +29,7 @@ const DEMO_HANDLES: Record<string, Record<string, string | null>> = {
'wonjin': { instagram: '@wonjin_official', youtube: '@wjwonjin', facebook: 'KwonjinPS' }, 'wonjin': { instagram: '@wonjin_official', youtube: '@wjwonjin', facebook: 'KwonjinPS' },
'ts': { instagram: '@tsprs_official', youtube: '@TV-jm9dy', facebook: 'tsprs' }, 'ts': { instagram: '@tsprs_official', youtube: '@TV-jm9dy', facebook: 'tsprs' },
'irum': { instagram: '@seoulips', youtube: '@SEOULiPS.', facebook: null }, 'irum': { instagram: '@seoulips', youtube: '@SEOULiPS.', facebook: null },
'o2o': { instagram: '@o2o_clinic', youtube: '@o2oclinic', facebook: 'O2OClinicGlobal' },
}; };
interface UseReportResult { interface UseReportResult {