홈페이지 분석 리포트
프리릭 코딩 스토어 · 2026-04-26 08:02
ⓘ 이 점수는 홈페이지 1장 기준입니다. 페이지별 점수 / 사이트 전체 집계는 사이트 리포트에서 보세요.
85
/ 100
이전 분석 대비 변화
prev analysis #211
점수 변화
-7
신규 이슈
29
해결된 이슈
3
신규 referring domain
0
🔴 신규 critical: [meta] Meta Description이 없습니다
🔴 신규 critical: [duplicate] '로그인 · 라이트 코딩' 제목을 가진 페이지 5건 중복 (예: https://store.prelik.com/my/learn…
🔴 신규 critical: [duplicate] '1인 창업자의 라라벨 | laravel' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com…
🔗 신규 broken: [INT 404] https://store.prelik.com/cdn-cgi/l/email-protection
🔗 신규 broken: [INT 404] https://store.prelik.com/cdn-cgi/l/email-protection
🔗 신규 broken: [INT 404] https://store.prelik.com/cdn-cgi/l/email-protection
메타
45
성능
100
헤딩
100
이미지
100
링크
100
모바일
95
로봇
100
키워드
70
스키마
60
GEO
54
보안
98
접근성
97
중복콘텐츠
41
사이트맵
90
내부링크
88
깨진링크
68
백링크
0
평가 요약
전체 이슈
9
Critical
1
Warning
5
Info
3
메타
4건
헤딩
통과
이미지
1건
링크
통과
성능
통과
키워드
2건
모바일
1건
스키마
1건
로봇
통과
Canonical:
없음
JSON-LD:
0개
robots/sitemap:
robots OK / sitemap OK
메타 태그
제목 (28)
prelik store - 도구 · 템플릿 · 번들
설명 (0)
Canonical:
HTML lang:
ko
charset:
UTF-8
오픈 그래프
og:title:
없음
og:description:
없음
og:image:
없음
og:type:
없음
og:url:
없음
Title이 너무 짧습니다 (28자, 권장: 30~60자)
Meta Description이 없습니다
누락된 OG 태그: ogTitle, ogDescription, ogImage
Canonical URL이 설정되지 않았습니다
성능
TTFB
350ms
FCP
948ms
DCL
880ms
DOM Complete
1143ms
헤딩 구조
H1
(1)
- 실무에서 바로 쓰는 도구와 템플릿
H2
(3)
- 프로그램
- 템플릿
- 패키지 번들
이미지
전체: 0
alt 있음: 0
alt 없음: 0
비율: 100%
페이지에 이미지가 없습니다
링크
전체: 12
내부: 11
외부: 1
키워드
단어 수: 79
템플릿 (5, 6.33%)
번들 (3, 3.80%)
다운로드 (3, 3.80%)
전체 (3, 3.80%)
prelik (2, 2.53%)
store (2, 2.53%)
도구 (2, 2.53%)
라이선스 (2, 2.53%)
프로그램 (2, 2.53%)
보기 (2, 2.53%)
00 (2, 2.53%)
일괄 (2, 2.53%)
소스 (2, 2.53%)
10 (1, 1.27%)
14 (1, 1.27%)
콘텐츠가 79단어로 적습니다 (권장: 300+ 단어)
키워드 밀도가 높은 단어: 템플릿 (5% 초과)
모바일
뷰포트: width=device-width, initial-scale=1.0
가로 스크롤: 없음
9개 요소의 터치 영역이 작습니다
스키마.org (JSON-LD)
JSON-LD 블록:
0
@type 감지:
없음
유형:
없음
수집된 JSON-LD 원본 데이터가 없습니다.
Schema.org 구조화 데이터(JSON-LD)가 없습니다
robots 및 사이트맵
robots.txt: 발견됨
sitemap.xml: 발견됨
보안 헤더
98
✓
HTTPS
✓
HSTS
✓
CSP
✓
nosniff
✓
X-Frame
✓
Referrer-Policy
✓
Permissions-Policy
쿠키 2개 — Secure 없음: 0, HttpOnly 없음: 1, SameSite 없음: 0
HttpOnly 플래그 없는 쿠키 1개 — XSS 로 JS 탈취 가능
외부 리소스 3개 중 SRI(integrity=) 없음: script 0, stylesheet 2
접근성 (WCAG 2)
97
레이블 없는 input: 0
이름 없는 button: 0
Skip link: 없음
Heading 계층 skip: 0
Alt 누락 이미지: 0
html[lang]: ko
"본문으로 건너뛰기" 링크 없음 — 키보드 사용자 내비게이션 비효율
중복 콘텐츠
41
크롤 페이지: 32
중복 title 그룹: 6
중복 desc 그룹: 3
리다이렉트 체인 2+: 0
'로그인 · 라이트 코딩' 제목을 가진 페이지 5건 중복 (예: https://store.prelik.com/my/learning)
'1인 창업자의 라라벨 | laravel' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/products/laravel-solo-founder)
'강의 · 라이트 코딩' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/courses/laravel-solo-founder/lessons/2)
'로그인 · 프렐릭 코딩 스토어' 제목을 가진 페이지 3건 중복 (예: https://store.prelik.com/login)
'claude code 실전 워크플로 | laravel' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/products/claude-code-workflow)
'prelik coding store' 제목을 가진 페이지 5건 중복 (예: https://store.prelik.com/legal/faq)
동일 meta description 2건 (예: "1인 창업자의 라라벨...")
동일 meta description 7건 (예: "1인 개발자가 만든 프로그램·강의·파일 번들을 한 곳에서. 월 구독 또는 개별 구매....")
동일 meta description 2건 (예: "ai 페어프로그래밍으로 생산성 3배. 실제 커밋 기반 예제....")
meta description 없는 페이지가 전체의 절반 이상 (17건)
사이트맵 ↔ 크롤 diff
90
sitemap URL: 15
크롤 URL: 32
Orphan: 0
sitemap 누락: 17
크롤됐지만 sitemap 에 없는 페이지 17건 (예: https://store.prelik.com/my/learning | https://store.prelik.com/products/laravel-solo-founder | https://store.prelik.com/courses/laravel-solo-founder/lessons/2)
내부 링크 그래프 (PageRank / orphan)
88
페이지: 42
Orphan: 5
Dead-end: 10
평균 inbound: 5.81
평균 outbound: 5.81
nofollow 내부: 0
Top PageRank
https://store.prelik.com/
pr 0.13371 · in 28 · out 9
https://store.prelik.com/catalog/bundle
pr 0.07298 · in 15 · out 5
https://store.prelik.com/catalog/file_bundle
pr 0.07298 · in 15 · out 4
https://store.prelik.com/catalog/program
pr 0.07298 · in 15 · out 6
https://store.prelik.com/login
pr 0.0562 · in 15 · out 3
https://store.prelik.com/register
pr 0.05383 · in 20 · out 4
https://store.prelik.com/forgot-password
pr 0.03711 · in 9 · out 2
https://store.prelik.com/plans
pr 0.03651 · in 14 · out 16
https://store.prelik.com/products/uiux-source-pack
pr 0.03041 · in 2 · out 14
https://store.prelik.com/legal/privacy
pr 0.0304 · in 10 · out 14
Orphan 페이지 (5)
https://store.prelik.com/courses/uiux-source-pack
d1
https://store.prelik.com/courses/dev-toolbox-pro
d1
https://store.prelik.com/courses/markdown-converter
d1
https://store.prelik.com/checkout/enterprise-monthly
d2
https://store.prelik.com/courses/claude-code-workflow
d1
깨진 링크 (Broken Link Audit)
68
총 링크: 265
검증됨: 265
미검증: 0
내부 깨짐: 22
외부 깨짐: 0
샘플
INT
https://store.prelik.com/cdn-cgi/l/email-protection
404
INT
https://store.prelik.com/cdn-cgi/l/email-protection
404
INT
https://store.prelik.com/cdn-cgi/l/email-protection
404
INT
https://store.prelik.com/courses
404
INT
https://store.prelik.com/certificates
404
INT
https://store.prelik.com/community
404
INT
https://store.prelik.com/about
404
INT
https://store.prelik.com/instructors
404
INT
https://store.prelik.com/faq
404
INT
https://store.prelik.com/cdn-cgi/l/email-protection
404
INT
https://store.prelik.com/faq
404
INT
https://store.prelik.com/courses
404
INT
https://store.prelik.com/certificates
404
INT
https://store.prelik.com/community
404
INT
https://store.prelik.com/about
404
메뉴 트리 / 네비게이션 (Google sitelinks 적합도)
공통 내부 링크 / breadcrumb / 사이트 구조 분석
50
크롤 페이지: 42
공통 메뉴: 1
depth≤2 도달: 100%
BreadcrumbList: ✗
SiteNavSchema: ✗
감지된 공통 메뉴 (coverage 내림차순)
⚡
프렐릭 코딩 스토어
https://store.prelik.com/
67% · 28페이지
공통 메뉴가 1개로 적음 (권장 3~10개)
Backlinks (외부 인바운드 링크)
0
총 백링크: 0
Referring 도메인: 0
Dofollow: 0%
Alive ratio: -%
Alive: 0
Dead: 0
미검증: 0
최근 7일: 0
최근 30일: 0
소스:
GEO (생성형 검색 최적화)
54
direct_answer
70
qa_structure
50
schema_strength
40
eat_signals
45
citations
60
content_depth
35
keyword_alignment
100
quotations
50
statistics
70
lists
40
FAQPage / HowTo JSON-LD 없음 — AI 검색(ChatGPT/AI Overview)이 Q&A 로 인용하기 어려움
Article/BlogPosting schema 없음 — author/date 명시로 E-E-A-T 강화 권장
질문형 H2/H3 (예: "~인가?", "왜 ~할까?") 없음 — 생성형 검색 인용에 불리
본문이 79단어로 얕음 — AI 인용 블록 추출에 400+ 단어 권장
H1 직후 요약 문단 / TL;DR 섹션 없음 — AI 가 핵심 답변 추출 어려움
추가 권장 체크 로직 (예시)
아래 항목은 데이터 연동 전에도 설계 가능한 규칙 예시입니다. 실제 운영에서는 GSC/백링크 도구 연동 후 점수화하세요.
1) 백링크 품질 점수 (오프페이지)
backlink_score = 0.35*ref_domain_growth + 0.30*high_quality_domain_ratio + 0.20*anchor_naturalness - 0.15*spam_link_ratio 권장 임계값: high_quality_domain_ratio >= 0.6, spam_link_ratio <= 0.1
2) URL-H1 정합성 점수 (완전 일치 필수 아님)
url_h1_alignment = semantic_similarity(url_slug, h1_text) if alignment < 0.45: warning if alignment < 0.30: critical 설명: 문자열 완전 동일보다 주제 일치(semantic) 우선
3) 제목-본문 일치성
title_body_match = 100 if top_keyword_not_in_title: -25 if top_keyword_not_in_description: -20 if intro_missing_core_topic: -15 if final < 70: 개선 필요
4) 내부링크 분배
internal_link_health = 100 if orphan_pages > 0: -min(40, orphan_pages*5) if core_pages_inlinks_avg < 3: -20 if anchor_empty_ratio > 0.1: -15
5) CTR 개선 우선순위 (성과 기반)
priority = impressions * max(0, expected_ctr - current_ctr) 상위 priority 페이지부터 title/meta rewrite -> 14/28일 효과 비교
개선 팁: "URL이 H1과 완전 동일" 같은 단일 규칙보다, 정합성(semantic) + 검색 성과(CTR/노출) + 기술 신호(canonical/schema)를 함께 보는 방식이 더 안정적입니다.
원본 분석 데이터 (저장 JSON)
meta_analysis
{
"score": 45,
"title": {
"content": "prelik store - 도구 · 템플릿 · 번들",
"length": 28
},
"description": {
"content": "",
"length": 0
},
"og": {
"title": "",
"description": "",
"image": "",
"type": "",
"url": ""
},
"canonical": "",
"lang": "ko",
"charset": "UTF-8",
"hreflangs": [],
"issues": [
{
"severity": "warning",
"message": "Title이 너무 짧습니다 (28자, 권장: 30~60자)"
},
{
"severity": "critical",
"message": "Meta Description이 없습니다"
},
{
"severity": "warning",
"message": "누락된 OG 태그: ogTitle, ogDescription, ogImage"
},
{
"severity": "info",
"message": "Canonical URL이 설정되지 않았습니다"
}
]
}
heading_analysis
{
"score": 100,
"h1_count": 1,
"structure": {
"h1": {
"count": 1,
"items": [
"실무에서 바로 쓰는 도구와 템플릿"
]
},
"h2": {
"count": 3,
"items": [
"프로그램",
"템플릿",
"패키지 번들"
]
}
},
"issues": []
}
image_analysis
{
"score": 100,
"total": 0,
"with_alt": 0,
"without_alt": 0,
"alt_ratio": 100,
"low_quality_alt": 0,
"missing_alt_images": [],
"issues": [
{
"severity": "info",
"message": "페이지에 이미지가 없습니다"
}
]
}
link_analysis
{
"score": 100,
"total": 12,
"internal": 11,
"external": 1,
"no_text": 0,
"generic_text": 0,
"non_crawlable": 0,
"issues": []
}
performance_analysis
{
"score": 100,
"metrics": {
"lcp": 948,
"inp": 80,
"cls": 8.381257233796297e-5,
"ttfb": 350,
"fcp": 948,
"dom_content_loaded": 880,
"dom_complete": 1143,
"load_event": 1143,
"transfer_size": 3356
},
"issues": []
}
keyword_analysis
{
"score": 70,
"word_count": 79,
"top_keywords": [
{
"word": "템플릿",
"count": 5,
"density": "6.33",
"variants": {
"템플릿": 5
}
},
{
"word": "번들",
"count": 3,
"density": "3.80",
"variants": {
"번들": 3
}
},
{
"word": "다운로드",
"count": 3,
"density": "3.80",
"variants": {
"다운로드": 3
}
},
{
"word": "전체",
"count": 3,
"density": "3.80",
"variants": {
"전체": 3
}
},
{
"word": "prelik",
"count": 2,
"density": "2.53",
"variants": {
"prelik": 2
}
},
{
"word": "store",
"count": 2,
"density": "2.53",
"variants": {
"store": 2
}
},
{
"word": "도구",
"count": 2,
"density": "2.53",
"variants": {
"도구": 2
}
},
{
"word": "라이선스",
"count": 2,
"density": "2.53",
"variants": {
"라이선스": 2
}
},
{
"word": "프로그램",
"count": 2,
"density": "2.53",
"variants": {
"프로그램": 2
}
},
{
"word": "보기",
"count": 2,
"density": "2.53",
"variants": {
"보기": 2
}
},
{
"word": "00",
"count": 2,
"density": "2.53",
"variants": {
"00": 2
}
},
{
"word": "일괄",
"count": 2,
"density": "2.53",
"variants": {
"일괄": 2
}
},
{
"word": "소스",
"count": 2,
"density": "2.53",
"variants": {
"소스": 2
}
},
{
"word": 10,
"count": 1,
"density": "1.27",
"variants": {
"10": 1
}
},
{
"word": 14,
"count": 1,
"density": "1.27",
"variants": {
"14": 1
}
},
{
"word": 20,
"count": 1,
"density": "1.27",
"variants": {
"20": 1
}
},
{
"word": 62,
"count": 1,
"density": "1.27",
"variants": {
"62": 1
}
},
{
"word": "실무",
"count": 1,
"density": "1.27",
"variants": {
"실무에서": 1
}
},
{
"word": "바로",
"count": 1,
"density": "1.27",
"variants": {
"바로": 1
}
},
{
"word": "쓰는",
"count": 1,
"density": "1.27",
"variants": {
"쓰는": 1
}
}
],
"issues": [
{
"severity": "warning",
"message": "콘텐츠가 79단어로 적습니다 (권장: 300+ 단어)"
},
{
"severity": "warning",
"message": "키워드 밀도가 높은 단어: 템플릿 (5% 초과)"
}
]
}
geo_analysis
{
"score": 54,
"sub_scores": {
"direct_answer": 70,
"qa_structure": 50,
"schema_strength": 40,
"eat_signals": 45,
"citations": 60,
"content_depth": 35,
"keyword_alignment": 100,
"quotations": 50,
"statistics": 70,
"lists": 40
},
"signals": {
"h1_count": 1,
"h2_count": 3,
"h3_count": 0,
"question_headings": 0,
"has_faq_page": false,
"has_article": false,
"has_how_to": false,
"has_breadcrumb": false,
"external_links": 1,
"word_count": 79,
"blockquotes": 0,
"quote_sentences": 0,
"stat_sentences": 5,
"percent_occurrences": 0,
"ul_count": 0,
"ol_count": 0,
"table_count": 0,
"li_total": 0,
"tldr_markers": false,
"has_direct_answer": false
},
"improvements": [
"FAQPage JSON-LD 추가 — 핵심 Q&A 3-5개를 mainEntity.Question 으로 마크업하면 AI 인용 확률 상승",
"H2/H3 을 \"~는 무엇인가?\", \"왜 ~할까?\" 같은 질문 형태로 재구성 → 직접 답변 추출에 유리",
"각 섹션 앞에 1-2 문장 요약(TL;DR) 배치 + 근거 데이터/예시 추가로 400+ 단어 확보",
"Article schema 의 author(Person) / datePublished / dateModified 명시 — E-E-A-T 신호"
],
"issues": [
{
"severity": "warning",
"message": "FAQPage / HowTo JSON-LD 없음 — AI 검색(ChatGPT/AI Overview)이 Q&A 로 인용하기 어려움"
},
{
"severity": "warning",
"message": "Article/BlogPosting schema 없음 — author/date 명시로 E-E-A-T 강화 권장"
},
{
"severity": "info",
"message": "질문형 H2/H3 (예: \"~인가?\", \"왜 ~할까?\") 없음 — 생성형 검색 인용에 불리"
},
{
"severity": "warning",
"message": "본문이 79단어로 얕음 — AI 인용 블록 추출에 400+ 단어 권장"
},
{
"severity": "warning",
"message": "H1 직후 요약 문단 / TL;DR 섹션 없음 — AI 가 핵심 답변 추출 어려움"
}
]
}
security_headers_analysis
{
"score": 98,
"is_https": true,
"has_hsts": true,
"has_csp": true,
"has_nosniff": true,
"has_xfo": true,
"has_referrer_policy": true,
"has_permissions_policy": true,
"cookies": {
"total": 2,
"insecure_count": 0,
"no_httponly_count": 1,
"no_samesite_count": 0,
"insecure_samples": []
},
"subresource": {
"scripts_without_integrity": 0,
"links_without_integrity": 2,
"total_external": 3
},
"headers_sample": {
"content-security-policy": "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdn.jsdelivr.net https://cdn.portone.io https://cf.portone.io https://us.i.posthog.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: https: blob:; font-src 'self' https://fonts.gstatic.com data:; connect-src 'self' https://api.portone.io https://us.i.posthog.com https://upload.videodelivery.net https://cloudflareinsights.com wss:; media-src 'self' https://videodelivery.net https://customer-bi86u6r8immqh8to.cloudflarestream.com blob:; frame-src 'self' https://cdn.portone.io https://iamport-checkout.portone.io https://customer-bi86u6r8immqh8to.cloudflarestream.com; object-src 'none'; base-uri 'self'; form-action 'self' https://iamport-checkout.portone.io;",
"permissions-policy": "camera=(), microphone=(), geolocation=()",
"referrer-policy": "strict-origin-when-cross-origin",
"strict-transport-security": "max-age=31536000; includeSubDomains",
"x-content-type-options": "nosniff",
"x-frame-options": "SAMEORIGIN"
},
"issues": [
{
"severity": "info",
"message": "HttpOnly 플래그 없는 쿠키 1개 — XSS 로 JS 탈취 가능"
},
{
"severity": "info",
"message": "외부 리소스 3개 중 SRI(integrity=) 없음: script 0, stylesheet 2"
}
]
}
accessibility_analysis
{
"score": 97,
"unlabeled_inputs": 0,
"buttons_no_name": 0,
"has_skip_link": false,
"heading_skips": 0,
"imgs_missing_alt": 0,
"imgs_empty_alt": 0,
"html_lang": "ko",
"total_forms": 0,
"low_contrast_count": 0,
"contrast_sampled": 14,
"contrast_samples": [],
"issues": [
{
"severity": "info",
"message": "\"본문으로 건너뛰기\" 링크 없음 — 키보드 사용자 내비게이션 비효율"
}
]
}
duplicate_content_analysis
{
"score": 41,
"total_pages": 32,
"duplicate_groups": 6,
"duplicate_pages": 19,
"empty_title_pages": 0,
"thin_title_pages": 0,
"description_duplicate_groups": 3,
"description_missing_pages": 17,
"redirected_pages": 8,
"long_chain_pages": 0,
"issues": [
{
"severity": "critical",
"message": "'로그인 · 라이트 코딩' 제목을 가진 페이지 5건 중복 (예: https://store.prelik.com/my/learning)"
},
{
"severity": "critical",
"message": "'1인 창업자의 라라벨 | laravel' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/products/laravel-solo-founder)"
},
{
"severity": "critical",
"message": "'강의 · 라이트 코딩' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/courses/laravel-solo-founder/lessons/2)"
},
{
"severity": "critical",
"message": "'로그인 · 프렐릭 코딩 스토어' 제목을 가진 페이지 3건 중복 (예: https://store.prelik.com/login)"
},
{
"severity": "critical",
"message": "'claude code 실전 워크플로 | laravel' 제목을 가진 페이지 2건 중복 (예: https://store.prelik.com/products/claude-code-workflow)"
},
{
"severity": "critical",
"message": "'prelik coding store' 제목을 가진 페이지 5건 중복 (예: https://store.prelik.com/legal/faq)"
},
{
"severity": "warning",
"message": "동일 meta description 2건 (예: \"1인 창업자의 라라벨...\")"
},
{
"severity": "warning",
"message": "동일 meta description 7건 (예: \"1인 개발자가 만든 프로그램·강의·파일 번들을 한 곳에서. 월 구독 또는 개별 구매....\")"
},
{
"severity": "warning",
"message": "동일 meta description 2건 (예: \"ai 페어프로그래밍으로 생산성 3배. 실제 커밋 기반 예제....\")"
},
{
"severity": "warning",
"message": "meta description 없는 페이지가 전체의 절반 이상 (17건)"
}
]
}
sitemap_orphan_analysis
{
"score": 90,
"sitemap_count": 15,
"crawled_count": 32,
"orphan_count": 0,
"missing_from_sitemap_count": 17,
"orphan_samples": [],
"issues": [
{
"severity": "info",
"message": "크롤됐지만 sitemap 에 없는 페이지 17건 (예: https://store.prelik.com/my/learning | https://store.prelik.com/products/laravel-solo-founder | https://store.prelik.com/courses/laravel-solo-founder/lessons/2)"
}
]
}
crux_field_data
null
mobile_analysis
{
"score": 95,
"viewport": "width=device-width, initial-scale=1.0",
"has_horizontal_scroll": false,
"small_touch_targets": 9,
"small_fonts": 0,
"issues": [
{
"severity": "info",
"message": "9개 요소의 터치 영역이 작습니다"
}
]
}
schema_analysis
{
"score": 60,
"count": 0,
"types": [],
"schemas": [],
"issues": [
{
"severity": "warning",
"message": "Schema.org 구조화 데이터(JSON-LD)가 없습니다"
}
]
}
robots_analysis
{
"score": 100,
"robots": {
"exists": true,
"blocks_all": false,
"has_user_agent": true,
"invalid_directives": [],
"content": "User-agent: *\nDisallow: /admin\nDisallow: /checkout\nDisallow: /cart\nDisallow: /my/\nDisallow: /billing/\nDisallow: /dashboard\nDisallow: /login\nDisallow: /register\nDisallow: /forgot-password\nDisallow: /reset-password\n\nSitemap: https://store.prelik.com/sitemap.xml\n",
"sitemap_urls": [
"https://store.prelik.com/sitemap.xml"
]
},
"sitemap": {
"exists": true,
"url": "https://store.prelik.com/sitemap.xml",
"type": "urlset",
"url_count": 15,
"has_lastmod": true,
"has_priority": true,
"size": 2551
},
"issues": []
}
integration_analysis
null