89
GEO 점수 / 100
질의 의도 적합성
80
신뢰성/인덱싱
100
구조화 데이터
90
모바일 가독성
85
LLM 평가 (글 수준/일치성)
평가 모델 버전
gpt-5.2
평가 기준 스킬
LLM 요청 스킬 내용 보기
글의 수준
55
제목의 수준
100
제목-내용 일치성
45
LLM 종합 점수
66
기준 데이터: title_length=34, word_count=261, h2_count=3, schema_count=1
개선점 및 개선 방법
- 본문을 질문형 H2/H3 구조로 재구성하고, 각 섹션에 짧은 결론 문장을 먼저 제시하세요.
- 본문 밀도를 높이기 위해 근거 데이터/예시/출처 링크를 추가하고 700단어 이상을 목표로 하세요.
- 상위 키워드를 제목과 메타 설명에 자연스럽게 1회 포함해 제목-내용 일치성을 높이세요.
- 과도한 반복 키워드를 줄이고 동의어/문맥어로 치환해 의미 밀도를 개선하세요.
GEO 핵심 체크 상태
Canonical 설정
통과
https://blog-presser.50.internal.kr/
HTML lang 설정
통과
ko-KR
JSON-LD 존재
통과
count=1
JSON-LD @type 감지
통과
Person, WebSite, CollectionPage
robots.txt 존재
통과
발견됨
sitemap.xml 존재
통과
발견됨
질문/키워드 데이터 충분성
미통과
word_count=261
팩트 기반 해석
1. GEO 점수는 현재 저장된 SEO 분석 결과(JSON)만으로 계산한 보조 지표입니다.
2. canonical/lang/schema/robots/sitemap 같은 "기계 해석 신호"가 누락되면 GEO 점수를 강하게 감점합니다.
3. LLM 평가는 제목/본문량/구조/키워드 이슈를 기반으로 점수화했습니다.
GEO 원본 데이터
meta_analysis
{
"score": 90,
"title": {
"content": "프레서 - 블로그 - 프로그래밍 개발 노하우, 코드 예제 수록",
"length": 34
},
"description": {
"content": "프로그래밍 개발 노하우, 코드 예제 수록",
"length": 22
},
"og": {
"title": "유니티 게임 개발 팀원 모집합니다",
"description": "프로그래밍 개발 노하우, 코드 예제 수록",
"image": "https://blog-presser.50.internal.kr/wp-content/themes/documents/assets/images/landing_thumbnail.png",
"type": "website",
"url": "https://blog-presser.50.internal.kr/"
},
"canonical": "https://blog-presser.50.internal.kr/",
"lang": "ko-KR",
"charset": "UTF-8",
"hreflangs": [],
"issues": [
{
"severity": "warning",
"message": "Description이 너무 짧습니다 (22자, 권장: 70~160자)"
}
]
}
schema_analysis
{
"score": 94,
"count": 1,
"types": [
"Person",
"WebSite",
"CollectionPage"
],
"schemas": [
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Person",
"@id": "https://blog-presser.50.internal.kr/#person",
"name": "프레서 - 블로그"
},
{
"@type": "WebSite",
"@id": "https://blog-presser.50.internal.kr/#website",
"url": "https://blog-presser.50.internal.kr",
"name": "프레서 - 블로그",
"publisher": {
"@id": "https://blog-presser.50.internal.kr/#person"
},
"inLanguage": "ko-KR",
"potentialAction": {
"@type": "SearchAction",
"target": "https://blog-presser.50.internal.kr/?s={search_term_string}",
"query-input": "required name=search_term_string"
}
},
{
"@type": "CollectionPage",
"@id": "https://blog-presser.50.internal.kr/#webpage",
"url": "https://blog-presser.50.internal.kr/",
"name": "프레서 - 블로그 - 프로그래밍 개발 노하우, 코드 예제 수록",
"about": {
"@id": "https://blog-presser.50.internal.kr/#person"
},
"isPartOf": {
"@id": "https://blog-presser.50.internal.kr/#website"
},
"inLanguage": "ko-KR"
}
]
}
],
"issues": [
{
"severity": "info",
"message": "JSON-LD Person 권장 필드 'url' 누락"
},
{
"severity": "info",
"message": "JSON-LD Person 권장 필드 'image' 누락"
},
{
"severity": "info",
"message": "JSON-LD Person 권장 필드 'jobTitle' 누락"
}
]
}
robots_analysis
{
"score": 100,
"robots": {
"exists": true,
"blocks_all": false,
"has_user_agent": true,
"invalid_directives": [],
"content": "User-agent: *\nDisallow: /wp-admin/\nAllow: /wp-admin/admin-ajax.php\n\nSitemap: https://blog-presser.50.internal.kr/sitemap_index.xml\n",
"sitemap_urls": [
"https://blog-presser.50.internal.kr/sitemap_index.xml"
]
},
"sitemap": {
"exists": true,
"url": "https://blog-presser.50.internal.kr/sitemap_index.xml",
"type": "sitemapindex",
"url_count": 0,
"has_lastmod": true,
"has_priority": false,
"size": 705
},
"issues": []
}
keyword_analysis
{
"score": 60,
"word_count": 261,
"top_keywords": [
{
"word": "리스트",
"count": 20,
"density": "7.66",
"variants": {
"리스트가": 20
}
},
{
"word": "존재하지",
"count": 20,
"density": "7.66",
"variants": {
"존재하지": 20
}
},
{
"word": "않습니다",
"count": 20,
"density": "7.66",
"variants": {
"않습니다": 20
}
},
{
"word": "워드프레스",
"count": 8,
"density": "3.07",
"variants": {
"워드프레스": 8
}
},
{
"word": "git",
"count": 6,
"density": "2.30",
"variants": {
"git": 6
}
},
{
"word": "프로그래밍",
"count": 4,
"density": "1.53",
"variants": {
"프로그래밍": 4
}
},
{
"word": "총정리",
"count": 4,
"density": "1.53",
"variants": {
"총정리": 4
}
},
{
"word": "플러터",
"count": 4,
"density": "1.53",
"variants": {
"플러터": 4
}
},
{
"word": "블로그",
"count": 3,
"density": "1.15",
"variants": {
"블로그": 3
}
},
{
"word": "설치",
"count": 3,
"density": "1.15",
"variants": {
"설치": 3
}
},
{
"word": "객체",
"count": 3,
"density": "1.15",
"variants": {
"객체": 3
}
},
{
"word": "지향",
"count": 3,
"density": "1.15",
"variants": {
"지향": 3
}
},
{
"word": "서버",
"count": 2,
"density": "0.77",
"variants": {
"서버": 2
}
},
{
"word": "파일",
"count": 2,
"density": "0.77",
"variants": {
"파일": 2
}
},
{
"word": "함수",
"count": 2,
"density": "0.77",
"variants": {
"함수": 2
}
},
{
"word": "즐겨찾기",
"count": 2,
"density": "0.77",
"variants": {
"즐겨찾기": 2
}
},
{
"word": "서비스",
"count": 2,
"density": "0.77",
"variants": {
"서비스": 2
}
},
{
"word": "게임",
"count": 2,
"density": "0.77",
"variants": {
"게임": 2
}
},
{
"word": "개발",
"count": 2,
"density": "0.77",
"variants": {
"개발": 2
}
},
{
"word": "현재",
"count": 2,
"density": "0.77",
"variants": {
"현재": 2
}
}
],
"issues": [
{
"severity": "warning",
"message": "콘텐츠가 261단어로 적습니다 (권장: 300+ 단어)"
},
{
"severity": "info",
"message": "주요 키워드 '리스트'가 Title에 포함되지 않았습니다"
},
{
"severity": "info",
"message": "주요 키워드 '리스트'가 Description에 포함되지 않았습니다"
},
{
"severity": "warning",
"message": "키워드 밀도가 높은 단어: 리스트, 존재하지, 않습니다 (5% 초과)"
}
]
}
mobile_analysis
{
"score": 80,
"viewport": "width=device-width, initial-scale=1",
"has_horizontal_scroll": false,
"small_touch_targets": 61,
"small_fonts": 1,
"issues": [
{
"severity": "warning",
"message": "61개 요소의 터치 영역이 44px 미만입니다"
},
{
"severity": "info",
"message": "1개 요소의 폰트 크기가 작습니다"
}
]
}
link_analysis
{
"score": 80,
"total": 103,
"internal": 89,
"external": 14,
"no_text": 30,
"generic_text": 0,
"non_crawlable": 0,
"issues": [
{
"severity": "warning",
"message": "30개 링크에 앵커 텍스트가 없습니다 (29%)"
}
]
}