한국어 토큰 수 실측 — 공식 countTokens API 값과 문서의 4자 어림이 갈리는 자리
한국어 토큰 수 계산을 어림값 대신 공식 countTokens 엔드포인트로 직접 재 봤어요. 문서는 약 4자에 1토큰이라고 적지만 실측한 한국어는 2자 남짓에 1토큰이었고, 글자 수가 두 배 넘는 영어 문장이 오히려 토큰은 적게 나왔어요.
AI 기술을 누구나 쉽게 활용할 수 있도록 실전 가이드를 작성합니다. ChatGPT, Claude, AI 자동화, SEO 분야를 전문으로 다룹니다.
Claude Opus 4.7의 per-token 가격표만 보면 이전 Opus 세대와 같은 구간이에요. 그런데 모델을 갈아탄 뒤 월 청구가 눈에 띄게 늘었다는 이야기가 나옵니다. 원인은 단가가 아니라 토크나이저예요.
Opus 4.7부터 새 토크나이저가 적용되면서 같은 텍스트라도 이전 모델보다 더 많은 토큰으로 쪼개져요. 특히 한국어·일본어·중국어 같은 다바이트 문자가 영향을 크게 받는 편입니다. 단가는 그대로인데 토큰 수가 늘어나니 실효 비용이 올라가는 구조예요. 증가폭은 문서 성격과 워크로드에 따라 편차가 크니, 대략적인 배수를 가정하지 말고 본인 프롬프트로 직접 측정해야 합니다.
1M 컨텍스트 윈도우도 같은 함정. 표면적으로는 9K 토큰 호출과 900K 토큰 호출이 동일 per-token 단가지만, 캐싱 없이 매번 수십만 토큰을 풀로 보내면 호출당 입력 비용이 크게 뜨고 하루 수백 회면 그대로 곱해집니다. 그래서 가격표 자체가 아니라 호출 패턴·캐시 전략·컨텍스트 트리밍을 동시에 손봐야 본전이 나와요.

이 글은 토크나이저 변경으로 늘어난 토큰 수를 흡수하면서 1M 컨텍스트의 본전을 최대로 뽑는 7가지 패턴을 정리해요. 뒤에 나오는 비용 표는 실제 청구 내역이 아니라 가정한 호출량으로 계산한 시뮬레이션이니, 본인 트래픽 수치를 넣어 다시 계산해 보세요.
가장 먼저 할 일은 모델 전환 후 토큰 사용량이 실제로 얼마나 늘었는지 측정하는 거예요. Anthropic 콘솔의 Usage 대시보드에서 모델별 일일 토큰 수치를 비교하고, 대표 프롬프트 몇 개를 count_tokens 엔드포인트에 두 모델로 각각 돌려 직접 대조하세요. 남이 말한 배수를 그대로 가져다 쓰면 거의 틀립니다.
체크할 지표 4가지. (1) 입력 토큰 증가율 — 모델 전환 전후 7일 평균 비교. (2) 출력 토큰 증가율 — 보통 입력만큼 크게 흔들리지 않아요. (3) 언어별 영향 — 한국어 트래픽 비중이 높을수록 증가폭이 커지는 경향. (4) 워크로드별 영향 — RAG 같은 긴 컨텍스트 작업이 짧은 채팅보다 영향이 누적적으로 큼.
증가폭이 작으면 캐싱 위주 최적화로 충분하고, 눈에 띄게 크면 청크 재조정·압축 사전 단계까지 함께 손봐야 해요. 기준선을 잡아 두면 이후 최적화 효과도 같은 잣대로 측정할 수 있습니다.
캐싱이 비용 최적화의 80%를 차지해요. Anthropic API에서 cache_control 마커를 메시지 블록에 추가하면 첫 호출은 표준 단가 + 25%(캐시 쓰기 비용), 두 번째 이후는 캐시 hit 단가가 표준의 10% 수준으로 청구돼요. 5분 TTL이 기본이고, 1시간 TTL은 캐시 쓰기 비용을 더 내는 대신 캐시가 더 오래 유지되는 선택지입니다.
캐시 친화적 호출 구조의 5가지 원칙. (1) 변하지 않는 블록을 먼저 — 시스템 프롬프트·툴 정의·긴 컨텍스트 문서는 앞에, 사용자 메시지는 뒤에 배치. (2) 블록 단위로 분리 — 한 블록이 너무 크면 캐시 hit 범위가 좁아짐, 1,024 토큰 이상 단위로 끊기. (3) 순서 고정 — 같은 컨텍스트라도 순서가 바뀌면 캐시 미스. (4) 호출 빈도 분석 — 5분 안에 다시 부를 호출은 5분 TTL, 시간 단위는 1시간 TTL 선택. (5) 캐시 hit 율 모니터링 — 콘솔에서 cache_creation_input_tokens vs cache_read_input_tokens 비율 추적.
실제 사내 RAG 시스템에서 같은 문서 묶음을 하루 50번 조회하는 경우 캐싱 적용 전 일 $50 → 적용 후 $5~7 수준. 90% 절감이 진짜 가능한 영역이에요.
5분 TTL은 챗봇·실시간 코딩 에이전트에 어울리고 1시간 TTL은 다음 4가지 시나리오에 본전이 커요.
(1) 사내 위키 검색 — 직원 100명이 하루 종일 같은 매뉴얼을 검색하는 케이스, 1시간 TTL로 캐시 재사용 빈도 극대화. (2) 문서 일괄 분석 — 100페이지 PDF를 30개 질문으로 분석할 때 PDF 본문 자체를 캐시. (3) 고객 지원 챗봇 — 자주 묻는 질문 처리 시 약관·FAQ 본문을 캐시. (4) 코드베이스 어시스턴트 — 같은 repo를 여러 개발자가 조회할 때 코드 트리·import 그래프를 캐시.
1시간 TTL은 5분 TTL보다 캐시 쓰기 비용이 비싼 대신 캐시가 오래 살아 있어요. 그래서 손익은 ‘호출 간격’이 가릅니다. 같은 컨텍스트를 5분 안에 다시 부르는 워크로드면 기본 5분 TTL이 유리하고, 호출이 띄엄띄엄 들어와 5분 캐시가 매번 만료돼 버리는 워크로드면 1시간 TTL이 유리해요. 호출 빈도 분석 → TTL 선택이 핵심이고, 정확한 쓰기 비용 배수는 Anthropic 프롬프트 캐싱 공식 문서에서 확인하세요.
Anthropic 배치 API는 24시간 안에 결과가 나오면 되는 작업에 한해 입력·출력 모두 50% 할인. 캐싱 90%와 별개 적용이라 캐싱된 호출에 배치까지 더하면 실효 단가는 표준의 5% 수준까지 떨어져요.
배치 API가 본전인 워크로드 5가지. (1) 콘텐츠 일괄 분류·태깅 — 블로그 500개 메타 추출, 일 1회 야간 실행. (2) 야간 리포트 — 매일 새벽 DB 데이터로 인사이트 요약 슬랙 발송. (3) 데이터셋 라벨링 — RAG 평가용 정답 라벨, 모델 fine-tune 데이터 준비. (4) 백필 — 과거 6개월 로그 재분석. (5) 이메일 답변 초안 — 고객 문의 일괄 처리 후 사람이 검수.
콘솔에서 JSONL 업로드(한 줄에 한 요청씩) 후 결과 다운로드. 한국 스타트업 기준 트래픽의 30%가 비실시간 작업이라 배치만 분리해도 월 비용 15~20% 절감 가능해요.
1M 컨텍스트가 있다고 매번 풀로 채우는 건 비효율. 트리밍의 4단계 전략.
(1) 사전 임베딩 검색 — 1만 개 문서 중 top-20만 골라서 Opus에 전달. 검색은 OpenAI text-embedding-3-small($0.02/M)이나 Cohere multilingual($0.10/M)로 처리. (2) 재랭킹 — top-20을 Haiku 4.5로 한 번 더 평가해 top-5만 추출. Haiku 호출 비용이 본 호출의 5% 미만. (3) 요약 압축 — top-5 본문을 Haiku로 1/3 크기로 압축. 핵심 fact는 유지. (4) 최종 호출 — Opus에 트리밍된 5,000~10,000 토큰만 전달.
이 흐름을 적용하면 같은 정확도에서 입력 토큰 50~70% 절감. 한국어 RAG 기준 입력 50K 토큰 컨텍스트가 15K로 줄어요. 비용·응답 속도 동시 개선.

Opus 4.7만 쓰는 게 아니라 입력 복잡도에 따라 Haiku 4.5·Sonnet 4.6·Opus 4.7을 라우팅하는 게 본전. 가격 차이가 5~10배라서 라우팅 잘못 짜면 비용이 그대로 폭증.
라우팅 룰 예시. (1) Haiku 4.5(가장 저렴한 등급) — 간단 분류, 한 줄 요약, 키워드 추출, 의도 인식, FAQ 매칭. 트래픽의 60~70%. (2) Sonnet 4.6(중간 등급) — 일반 챗봇 응답, 코드 작성, 중간 길이 문서 분석, 다단계 reasoning 1~3 step. 트래픽의 25~35%. (3) Opus 4.7(최상위 등급) — 1M 컨텍스트 분석, 복잡 멀티 step reasoning 5+ step, 안전 critical 작업. 트래픽의 5% 미만. 등급별 실제 단가는 공식 요금 페이지에서 확인하세요.
라우터는 입력 길이·키워드·과거 호출 패턴으로 자동 분류. LangChain·LiteLLM·OpenRouter 같은 게이트웨이가 라우팅 추상화 제공. 단일 Opus 대비 60~75% 비용 절감 가능. 단 응답 품질 일관성 평가를 자동 파이프라인으로 같이 구축해야 해요.
7가지 최적화를 모두 적용한 정량 시뮬레이션. 시나리오는 한국어 RAG 챗봇 일 1,000 호출 + 컨텍스트 평균 50K 토큰 + 응답 1K 토큰.
| 단계 | 입력 토큰/일 | 출력 토큰/일 | 비용/일 | 누적 절감 |
|---|---|---|---|---|
| 기본 (최적화 0%) | 50M | 1M | $275 | - |
| + 캐싱 80% hit | 13M 실효 | 1M | $90 | 67% |
| + 컨텍스트 트리밍 50% | 6.5M 실효 | 1M | $58 | 79% |
| + 배치 30% 분리 | - | - | $48 | 83% |
| + 라우팅 (Haiku 60%) | - | - | $42 | 85% |
월 환산하면 $8,250 → $1,260. 한국 스타트업 기준 한 달 LLM 비용 한 분기 차이. 매출 영향이 직접적이라 비용 최적화는 데브옵스 우선순위 톱 5에 들어가야 해요.
비용 최적화 작업에서 한국 개발자들이 가장 자주 빠지는 함정을 정리해요.
(1) 캐시 hit율 모니터링 누락 — cache_control 마커만 박고 실제 hit율을 안 보면 캐시 미스가 계속 일어나는데 모르고 지나감. Anthropic 콘솔에서 cache_creation_input_tokens과 cache_read_input_tokens 비율을 매일 추적해야 해요. hit율이 50% 미만이면 호출 순서·블록 구조 재설계 필요. 잘 짜인 RAG 시스템은 hit율 80% 이상이 일반적.
(2) TTL 선택 오류 — 1시간 TTL은 5분 TTL보다 캐시 쓰기가 비싸요. 호출이 잦지 않으면 비싼 쓰기 값만 치르고 정작 캐시를 다시 읽지 못한 채 끝납니다. 반대로 호출 간격이 5분보다 길면 기본 TTL로는 매번 캐시가 만료돼 쓰기 비용만 반복해서 나가요. 호출 패턴 데이터 7일치를 먼저 분석한 뒤 TTL을 고르는 게 정석입니다.
(3) 배치 작업 잘못 분류 — 실시간 응답이 필요한 챗봇·코딩 에이전트를 배치로 돌리면 사용자 이탈. 반대로 일일 리포트·콘텐츠 분류 같은 비실시간 작업을 실시간 API로 처리하면 비용 2배. 워크로드별 latency 요구사항을 명확히 분리해야 함. 24시간 안에 결과가 나오면 되는 작업은 무조건 배치.
(4) 모델 라우팅 평가 누락 — Haiku로 라우팅했는데 답변 품질이 떨어지면 사용자 만족도·전환율 하락. 자동 평가 파이프라인(LLM-as-judge 또는 사용자 피드백) 필수. 매주 100개 샘플을 두 모델로 처리해 품질 비교.
(5) 사이드 채널 비용 누락 — 임베딩 모델 비용, 벡터 DB 비용, 로깅 비용을 LLM 비용에 포함 안 함. 전체 LLM 인프라 비용을 한 대시보드로 통합 추적해야 진짜 비용 구조가 보여요. 비중은 서비스 성격에 따라 크게 달라지니 업계 평균을 가정하지 말고, 본인 청구서에서 API·임베딩·벡터 DB·로깅을 항목별로 갈라 놓는 것부터 하세요.
서비스 유형마다 비용이 새는 지점이 달라요. 자체 시스템을 튜닝할 때 어느 레버부터 당길지 판단하는 기준입니다.
(1) B2B SaaS 고객 지원 챗봇 — 호출 수는 많은데 컨텍스트는 중간 크기. 약관·FAQ 본문이 매번 똑같이 들어가니 cache_control이 1순위이고, 문의 대부분이 단순 분류라 하위 모델 라우팅이 2순위예요. 야간 리포트 같은 비실시간 부분은 배치로 떼어냅니다.
(2) AI 코딩 어시스턴트 SaaS — 컨텍스트가 크고(repo 코드) 여러 개발자가 같은 저장소를 조회해요. 캐시 재사용 빈도가 높으니 긴 TTL 캐싱이 압도적 1순위입니다. 자동완성처럼 가벼운 요청은 하위 모델로 내리고, 최상위 모델은 복잡한 reasoning에만 씁니다.
(3) 콘텐츠 마케팅 자동화 SaaS — 호출 수는 적은데 컨텍스트가 아주 커요(브랜드 가이드·과거 콘텐츠). 고정 자산 캐싱 + 컨텍스트 트리밍이 핵심이고, 콘텐츠 생성 자체가 실시간일 필요가 없으니 배치 비중을 크게 잡을 수 있습니다.
세 유형의 공통점은 순서예요. 캐싱 → 라우팅 → 배치·트리밍 순으로 붙이면 대부분 캐싱 단계에서 가장 큰 폭이 잡힙니다. 절감률은 서비스마다 다르니 각 단계를 적용할 때마다 콘솔 Usage 수치로 실측하세요.
비용 최적화는 한 번 셋업하고 끝나는 게 아니라 매일 모니터링해야 효과 유지돼요.
(1) 일별 토큰 사용량 — 입력·출력·캐시 read·캐시 write 4개 분리. 갑작스러운 증가는 새 기능·새 사용자·악용 가능성 신호. (2) 모델별 호출 비중 — Haiku·Sonnet·Opus 비율. 라우팅이 의도대로 작동하는지 검증. (3) 캐시 hit율 — 80%+ 목표. 50% 미만이면 즉시 호출 구조 재설계. (4) 평균 응답 시간 — 1초 미만이 목표. 1초 초과면 캐싱·트리밍 효과가 부족하다는 신호. (5) 일별 비용 vs 매출 — 비용/매출 비율이 5% 넘으면 LLM 의존도 과다 또는 가격 정책 재검토 필요.
대시보드 도구. Anthropic 콘솔 기본 제공 + Helicone·LangSmith·Langfuse 같은 LLM observability 툴 추가. 한국 사업자 기준 Helicone 무료 플랜으로 충분.
Opus 4.7 비용 절감은 단일 트릭이 아니라 토크나이저 측정 → 캐싱 → TTL → 배치 → 트리밍 → 라우팅 6단계 누적이 핵심. 한 번 셋업한다고 끝나지 않고 트래픽 패턴 변할 때마다 cache hit율·라우팅 비율·청크 크기를 재조정해야 해요.
지금 당장 할 일 3가지. (1) Anthropic 콘솔 Usage 대시보드 열고 토큰 증가율 측정. (2) 가장 자주 호출되는 컨텍스트 블록에 cache_control 마커 추가. (3) 트래픽 분석해 비실시간 작업을 배치 API로 분리. 이 3가지만 해도 첫 주에 30% 비용 절감이 보일 거예요.
관련 글로 Claude Opus 4.7 1M 컨텍스트 실전 활용법 7가지와 GPT-5.5 새 토크나이저 활용 7가지 팁도 같이 참고하세요. 모델별 토크나이저 차이 이해가 비용 최적화의 첫걸음이에요.
per-token 단가가 아니라 토큰 수가 늘어난 게 원인일 수 있어요. Opus 4.7에는 새 토크나이저가 적용돼서 같은 텍스트라도 이전 모델보다 더 많은 토큰으로 쪼개집니다. 특히 한국어·일본어·중국어 같은 다바이트 문자가 영향을 더 크게 받는 편이에요. 단가는 그대로인데 토큰 수가 늘면 청구액은 그만큼 올라갑니다. 증가폭은 문서 성격과 워크로드에 따라 편차가 크니 본인 데이터로 직접 재보는 게 정확해요. 청구서가 갑자기 늘었다면 같은 프롬프트를 두 모델에 count_tokens로 돌려 비교하는 것부터 시작하세요.
네 맞아요. Opus 4.7은 1M 토큰 컨텍스트 윈도우 전체를 표준 가격대로 청구해요. 9K 토큰 요청과 900K 토큰 요청의 per-token 단가가 같다는 뜻입니다. 다만 캐싱 없이 매번 수십만 토큰을 풀로 보내면 호출당 입력 비용이 그대로 곱해져서, 하루 수백 회 호출이면 청구액이 빠르게 불어나요. 컨텍스트가 크다는 사실 자체를 자랑할 게 아니라 프롬프트 캐싱을 붙여 실효 단가를 끌어내리는 게 본전이에요. 캐시 hit 단가는 표준의 10% 수준이라 같은 컨텍스트를 반복 호출할수록 효과가 커집니다. 비용이 무서워서 작은 모델로 잘게 쪼개는 것보다 1M 한 번에 분석하고 캐시를 재사용하는 쪽이 효율이 좋은 경우가 많아요. 정확한 per-token 단가는 Anthropic 공식 요금 페이지에서 확인하세요.
Anthropic API에서 메시지에 cache_control 마커를 추가하면 돼요. 시스템 프롬프트·툴 정의·긴 컨텍스트 문서 블록 끝에 cache_control type ephemeral을 박으면 첫 호출은 25% 추가 비용이 들지만 두 번째 호출부터 캐시 hit 단가가 표준의 10%로 청구. 5분 TTL이 기본이고, 1시간 TTL은 캐시 쓰기 비용을 더 내는 대신 캐시가 더 오래 살아 있어요. 즉 ‘할인 옵션’이 아니라 ‘호출 간격이 벌어질 때 쓰는 옵션’입니다. 사내 RAG 시스템 기준 같은 문서를 하루 50번 조회한다고 가정하면 캐싱 없이 $50 들던 게 캐싱 적용 후 $5~7 수준으로 떨어져요. 핵심은 호출 순서·블록 구조를 캐시 친화적으로 설계하는 거예요.
배치 API는 24시간 안에 결과가 나오면 되는 비실시간 작업에 최적. 입력·출력 모두 50% 할인이라 캐싱 90%와 별도 적용. 잘 어울리는 용도는 (1) 콘텐츠 일괄 분류·태깅 — 블로그 500개 메타 추출, (2) 야간 리포트 생성 — 매일 새벽 DB 데이터로 인사이트 요약, (3) 데이터셋 라벨링 — RAG 평가용 정답 라벨 생성, (4) 백필 작업 — 과거 6개월 로그 재분석. 안 어울리는 영역은 챗봇·실시간 코딩 에이전트. Anthropic 콘솔에서 JSONL 업로드 한 줄에 한 요청씩 넣으면 끝나고 결과는 다운로드 받아요.
4가지 실전 패턴. (1) 청크 크기 재조정 — 같은 문장이 4.7에서 더 많은 토큰으로 쪼개지니, count_tokens로 본인 데이터의 실제 증가폭을 잰 뒤 그만큼 청크 크기를 줄여 같은 의미 단위를 유지하세요. (2) 압축 사전 단계 — Haiku 4.5로 긴 문서를 먼저 요약 후 Opus 4.7에 전달(요약 단계 비용이 본 호출의 10% 미만). (3) 임베딩 단계 분리 — 검색·랭킹은 임베딩 모델 사용해 후보를 좁힌 뒤 Opus에는 상위 5개만 전달. (4) 한자·이모지 제거 — 본문 분석에 불필요한 장식 문자는 사전 처리. 4가지를 함께 적용하면 토크나이저 변경으로 늘어난 토큰 수를 상당 부분 흡수할 수 있어요. 흡수되는 정도는 문서 성격에 따라 다르니 적용 전후를 콘솔 Usage 수치로 비교하세요.
정량 시뮬레이션 예시예요. 기본 시나리오는 한국어 RAG 챗봇 일 1,000 호출 + 컨텍스트당 50K 토큰 + 응답 1K 토큰. (1) 최적화 0% — 입력 50M × $5 + 출력 1M × $25 = $275/일. (2) 캐싱 90% 적용 — 캐시 hit 비율 80% 가정, 입력 비용 $50으로 감소 → $75/일. (3) + 컨텍스트 50% 트리밍 — 입력 25M로 축소 → $50/일. (4) + 배치 적용 가능 부분 30% — $42/일. 결과는 $275 → $42(85% 절감). 월 환산 $8,250 → $1,260. 한국 스타트업 기준 한 달 LLM 비용이 분기 단위로 차이 나는 규모예요.
비용·품질 라우팅이 핵심. (1) 간단 분류·요약 — Haiku 4.5 단독, (2) 일반 챗봇·코드 작성 — Sonnet 4.6, (3) 복잡 추론·1M 컨텍스트 — Opus 4.7. 세 모델의 per-token 단가는 등급별로 몇 배씩 벌어지니 정확한 금액은 Anthropic 공식 요금 페이지에서 확인하세요. 라우터 패턴은 (a) 사용자 입력 길이·복잡도 측정 → (b) 임곗값 미만은 Haiku, 중간은 Sonnet, 1M 컨텍스트나 멀티스텝 reasoning은 Opus. 실제 한국 SaaS 기준 트래픽 70%가 Haiku로 처리되고 Opus는 5% 미만이라도 품질은 유지. 비용은 단일 Opus 대비 60~75% 절감. 모델 변경 시 응답 일관성 평가가 필요하니 자동 평가 파이프라인을 같이 구축하세요.