# Title Check

> 글 제목 후보를 네이버 API로 실측 비교한다. 같은 뜻의 다른 표현 중 사람들이 실제로 검색하는 말이 무엇인지, 타깃 키워드가 제목에 들어 있는지, 기존 글 제목과 얼마나 같아 보이는지, SERP에서 잘리는지, 양산형 상투어가 섞였는지를 잰다. 트리거 — "제목 정해줘", "제목 어떤 게 나아", "제목 후보", "제목 뽑아줘", "이 제목 괜찮아", "헤드라인", "제목 A/B", "무슨 표현을 써야 하나", "환급 vs 돌려받기", "제목 검증", "title check", "headline". 주제가 정해진 뒤 제목을 확정하는 단계에서 쓴다. 주제 자체를 고르는 것은 blueocean 스킬이다.

- Skill: `formars0309-cloud/title-check` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add formars0309-cloud/title-check`
- Raw SKILL.md: https://api.skillmd.com/api/skills/formars0309-cloud/title-check/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: formars0309-cloud (https://skillmd.com/u/formars0309-cloud)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/formars0309-cloud/title-check

---


# 제목 판정

제목은 검색 결과에서 독자가 보는 유일한 것이다. 본문이 아무리 좋아도 제목에서 걸러진다.

**이 도구는 제목을 만들지 않는다. 만드는 건 당신이 한다. 도구는 감으로 못 하는 것만 잰다.**

그 분업이 핵심이다. 후보를 3~6개 쓰고, 도구로 재고, 숫자를 보고 고친다.

## 도구

```bash
node ~/.claude/skills/title-check/scripts/title-check.mjs \
  --keyword 본인부담상한제 \
  --title "요양병원비 환급, 왜 생각보다 적게 돌아오나 — 본인부담상한제" \
  --title "본인부담상한제 총정리! 놓치지 말고 환급금 받아가세요" \
  --compare 환급,환급금,돌려받기,초과금
```

| 옵션 | 뜻 |
|---|---|
| `--keyword <k>` | 타깃 키워드. 포함 검사와 경쟁 제목 조회의 기준 |
| `--title <t>` | 후보 제목. 여러 번 쓴다 |
| `--file <path>` | 마크다운 프론트매터에서 `title` 과 `keywords[0]` 를 읽는다 |
| `--backlog <path>` | 백로그 JSON 전체를 한 번에 훑는다 |
| `--compare <a,b,c>` | 같은 뜻의 다른 표현들. **가장 쓸모 있는 옵션이다** |
| `--no-rivals` | 경쟁 제목 조회 생략 |
| `--json` | JSON 출력 |

### 백로그 일괄 모드

```bash
node ~/.claude/skills/title-check/scripts/title-check.mjs --backlog src/data/content-backlog.json
```

`[{ priority, id, query, title }]` 또는 `{ items: [...] }` 형태를 읽는다.
모든 항목의 표현을 한 번에 모아 5개씩 끊어 조회하므로, 항목마다 따로 도는 것보다 호출이 훨씬 적다.

손봐야 할 항목을 위로 올리고 통과한 것은 아래 표로 보여준다.
경쟁 제목은 조회하지 않는다 — 항목당 1회씩 더 들고, 넓은 키워드에서는 결과를 믿을 수 없다.
문제 항목만 추린 뒤 그것들을 개별 모드로 다시 보는 편이 낫다.

## 무엇을 재는가

### 1. 표현 수요 — 이게 제일 중요하다

같은 뜻인데 사람들이 치는 말은 하나뿐이다.

```
   3,310  환급 ← 이걸 쓰세요
   1,850  환급금
      40  초과금  (83배 적음)
      15  돌려받기  (221배 적음)
```

`환급`과 `돌려받기`는 뜻이 같다. 검색량은 221배 차이다. 제목에 어느 쪽을 쓰느냐로 갈린다.
**이건 취향 문제가 아니라 측정 대상이다.** 취향으로 정하지 마라.

동의 표현은 도구가 모른다. 당신이 `--compare` 로 준다. 그게 분업이다.

### 2. 타깃 키워드 포함

제목에 검색어가 없으면 그 글은 그 검색어로 안 잡힌다.

**통째 일치로 보지 않는다.** 타깃이 `요양병원비용`이고 제목이 `요양병원 한 달 비용`이면
붙어 있지 않을 뿐 검색엔진이 못 찾지 않는다. 그래서 글자 단위 덮임률로 잰다.

- 100% — 통과
- 50~99% — 일부가 빠졌다. 무엇이 빠졌는지 보여준다 (`욕창단계` 중 `단계`)
- 50% 미만 — 사실상 다른 주제다. 제목이나 타깃 키워드 중 하나가 틀렸다

**접두사 함정을 조심하라.** `요양병원 욕창`(월 40)이 아니라 `욕창`(월 14,890)이다.
백로그의 타깃 키워드가 틀려 있으면 제목도 같이 틀린다. 의심되면 `blueocean` 으로 먼저 재라.

### 3. 가장 비슷한 기존 글

내 제목과 2-gram 유사도가 가장 높은 기존 글 하나를 보여준다.

- 50% 이상이면 같은 글로 보인다. 다시 써라
- 30% 이상이면 꽤 비슷하다

20개 전체와의 합집합 비교는 하지 않는다. 제목이 20개면 어휘 합집합이 거의 모든 것을 덮어
항상 높거나, 복합어가 조금 달라 항상 0 이 된다. 둘 다 쓸모없다.

### 4. 길이와 상투어

폭 30em 을 넘으면 구글에서 잘릴 수 있고, 34em 을 넘으면 대체로 잘린다.
한글 전각 1em, 라틴·숫자 0.5em 으로 추정한다. 폰트와 기기마다 다르므로 정확한 값이 아니라 눈금이다.

상투어 — `총정리` `완벽정리` `한눈에` `알아보자` `모든것` `A to Z` `꿀팁` `놓치지` `숨은` 등.
양산형·AI 글 신호이고 독자에게 아무 정보도 주지 않는다. 애드센스 심사에서도 불리하다.

## 재지 못하는 것 — 이걸 아는 게 중요하다

- **클릭률.** 클릭 데이터가 없다. 어떤 제목이 더 눌릴지 이 도구는 모르고, 아는 척하지도 않는다
- **실제 검색 순위.** 검색 API 는 유사도 정렬이지 순위가 아니다. 여기 나온 제목 목록은 SERP 가 아니다

위 숫자로 순위나 트래픽을 예측하지 마라. 재는 것만 재라.

## 경쟁 제목 조회의 함정

**넓은 머리 키워드로 조회하면 결과가 쓰레기다.** `욕창` 한 단어로 조회하면
청구코드 고시와 요양보호사 시험 요약이 올라온다. 유사도 정렬이라 그렇다.

낱말 두세 개짜리 롱테일이 가장 잘 나온다. `본인부담상한제 환급 신청` 처럼.
도구는 결과의 절반 넘게 타깃 키워드가 빠져 있으면 **[경고]** 를 띄운다. 그 경고가 뜨면
그 목록으로 판단하지 마라.

## 쓰는 순서

1. 주제와 타깃 키워드를 확정한다 (`blueocean` 스킬)
2. 제목 후보를 3~6개 쓴다. 서로 다른 각도로 — 질문형, 반전형, 숫자형, 대상 지정형
3. 같은 뜻의 다른 표현을 `--compare` 에 모아 넣는다
4. 도구를 돌린다
5. 수요가 큰 표현으로 갈아끼우고, 상투어를 빼고, 길이를 맞춘다
6. 원고를 고쳤으면 `--file` 로 다시 확인한다

## 자격증명

`blueocean` 스킬과 같은 파일을 쓴다. `~/.claude/.naver-api.env` 또는 프로젝트 `./.env`.
검색광고 3종(수요)은 필수, API HUB 2종(경쟁 제목)은 없으면 그 축만 건너뛴다.

네이버가 2026 년에 NAVER API HUB 로 이관해 구형 규격은 401 이 난다.
자세한 신구 대조는 `blueocean` 스킬의 SKILL.md 에 있다.

