프롬프트 캐싱 ROI: Anthropic 90% 할인이 실제로 이익을 내는 시점

최종 업데이트: 2026-05-27 · 11분 분량

toksum.dev 가이드 시리즈의 일부.

CLAUDE SONNET 4.6 입력 단가 표준 입력 매 요청마다 $3.00 / 1M 캐시 쓰기 prefix당 1회 (5분 캐시) $3.75 / 1M 캐시 읽기 이후 모든 요청 $0.30 / 1M 10배 저렴 — 2번째 요청에서 손익분기
쓰기 프리미엄($0.75)은 단 한 번의 추가 캐시 적중으로 회수됩니다. 이후 모든 읽기는 순수 절감.

프롬프트 캐싱이란 정확히 무엇인가

LLM API에 요청을 보낼 때마다 공급자는 입력의 모든 토큰에 대해 키-값(KV) 어텐션 매트릭스를 계산합니다. 이 계산은 프롬프트 처리에서 가장 비싼 부분이며, 입력의 80%가 이전 요청과 동일해도 매번 처음부터 다시 수행됩니다. 프롬프트 캐싱은 입력의 일부에 대해 계산된 KV 매트릭스를 저장하고, 동일한 prefix를 공유하는 이후 요청에서 재사용하는 메커니즘입니다. 비싼 계산이 이미 끝났기에 캐시 적중 토큰에 대해 인하된 단가를 청구합니다.

경제 효과는 압도적입니다. Anthropic은 Claude Sonnet 4.6 표준 입력 $3.00/1M, 캐시 쓰기 $3.75/1M(쓰기에 25% 프리미엄), 캐시 읽기 $0.30/1M — 표준 단가의 10%. OpenAI는 GPT-5.4 표준 입력 $2.50/1M, 캐시 적중 토큰 $1.25/1M — 50% 인하, 요청 형식 변경 없이 자동 적용. Google Gemini의 컨텍스트 캐싱은 시간당 토큰 저장 수수료 + 인하된 읽기 단가로 작동해 경제성 계산이 더 복잡합니다.

핵심 통찰: 프롬프트 캐싱은 고정 비용(쓰기)을 가변 횟수의 읽기에 분산하는 구조입니다. 캐시 엔트리를 한 번 쓰고 1,000번 읽으면 쓰기 비용은 읽기당 무시할 수 있게 됩니다. 한 번 쓰고 캐시 만료 전에 2번만 읽으면 경제성이 나쁠 수 있습니다. 캐싱이 이익이 되는 시점은 단순히 토큰당 단가가 아닌, 실제 요청 패턴을 모델링해야 알 수 있습니다.

Anthropic 상세: cache_control로 명시적 캐싱

Anthropic 프롬프트 캐싱은 명시적입니다 — 캐싱하고 싶은 프롬프트 부분에 cache_control 매개변수를 추가해야 합니다. Messages API에서는 캐싱할 prefix 끝에 해당하는 콘텐츠 블록에 "cache_control": {"type": "ephemeral"}를 추가합니다. 캐시 키는 요청 시작부터 브레이크포인트까지의 정확한 토큰 시퀀스입니다.

Ephemeral 캐시는 마지막 적중 시점부터 5분 수명입니다. 시스템이 같은 prefix를 공유하는 요청을 5분에 한 번 이상 보내면 캐시는 지속 활성. 대부분 적당한 트래픽을 가진 프로덕션 시스템에서는 쉽게 충족됩니다. 확장 캐시(Claude Sonnet 4.6 이상)는 1시간 수명으로, 저트래픽 애플리케이션이나 배치 워크로드(장시간에 걸쳐 요청 분산)에 유용합니다.

캐시 쓰기는 $3.75/1M — 표준 $3.00/1M 대비 25% 프리미엄. 이 프리미엄은 KV 매트릭스를 저장/서빙하는 인프라 비용입니다. 한 번 쓰면 캐시 읽기는 $0.30/1M. 손익분기 계산은 단순합니다: 쓰기 추가 비용 $0.75/1M, 캐시 읽기 1회당 절감 $2.70/1M. 회수에 필요한 추가 읽기 수 = $0.75 ÷ $2.70 ≈ 0.28회. 즉 캐시 쓰기 후 같은 prefix를 한 번 더 사용하면 캐싱이 표준보다 저렴해집니다 — 손익분기는 사실상 두 번째 요청입니다.

최소 캐싱 가능 prefix는 1,024 토큰. 더 짧은 prefix는 조용히 표준 입력 가격으로 대체됩니다 — API는 오류를 반환하지 않고 cache_control이 무시될 뿐. 시스템 프롬프트나 컨텍스트가 자격을 갖출 만큼 충분히 긴지 항상 검증하고, 응답 사용량 메타데이터의 cache_creation_input_tokens, cache_read_input_tokens 필드로 캐시 적중을 확인하세요.

OpenAI GPT-5.4의 암묵적 캐싱

OpenAI 접근은 개발자 경험 측면에서 Anthropic과 정반대입니다 — 캐싱이 자동이며 요청 형식 변경이 필요 없습니다. OpenAI 인프라는 1,024 토큰 이상의 반복 prefix를 감지하고 자동으로 캐시 단가를 적용합니다. 캐시 적중 토큰은 API 응답의 usage 객체의 cached_tokens로 나타나며 $1.25/1M(표준 $2.50/1M의 50%)로 청구됩니다.

암묵적 접근은 쓰기 쉽지만 투명성이 떨어집니다. 캐시 쓰기를 강제하거나 요청 전에 캐시 상태를 검증할 수 없습니다. GPT-5.4의 캐시 수명은 공식 문서화되지 않았으며 — OpenAI는 "서버 부하와 트래픽 패턴에 따라 몇 분에서 몇 시간"으로 설명합니다. 이 예측 불가능성은 OpenAI 캐싱을 비용 계획 가정으로 덜 신뢰성 있게 만듭니다 — 프롬프트가 자주 반복되는 업무 시간에는 적중하고, 비번 시간에는 누락될 수 있습니다. 정밀한 비용 모델링에는 OpenAI 캐시 적중을 보장된 할인이 아닌 확률적 할인으로 다루세요.

OpenAI는 별도 캐시 쓰기 비용을 청구하지 않아 경제성이 단순합니다: 모든 캐시 적중은 순수 절감이며 연관 비용이 없습니다. 캐시 적중 토큰 50% 인하는 직관적이지만, 절대 금액 절감은 Anthropic의 90%(캐시 읽기 기준) 인하보다 작아, 큰 토큰 볼륨에서 의미 있게 차이가 납니다.

워크 예제: 5만 토큰 시스템 프롬프트를 일 100회 재사용

지식베이스 RAG 시스템: 50,000 토큰 시스템 프롬프트(회사 문서 + 가이드라인) + 평균 500 토큰 사용자 쿼리 + 1,000 토큰 출력. 일일 100 사용자 요청, 즉 월 약 3,000 요청. Claude Sonnet 4.6 기준 비용:

월 100,000 요청 규모에서 같은 패턴: 캐싱 없음 약 $16,650/월 → 캐싱 적용 약 $3,330/월 — 월 $13,320 절감, 연 $160,000 절감. 큰 시스템 프롬프트를 가진 RAG, 코드 어시스턴트, 분석 파이프라인에서 캐싱은 비용 구조의 가장 중요한 단일 결정입니다.

캐싱이 이익을 못 내는 경우

모든 워크로드가 캐싱으로 이익을 보는 것은 아닙니다. 다음 패턴에서는 캐시 쓰기 비용이 적중 절감을 초과할 수 있습니다:

의심스러우면 손익분기 검증을 코드로 자동화하세요. 응답의 cache_creation_input_tokens / cache_read_input_tokens를 로깅하고, 주간 비율 (읽기 적중) / (쓰기)이 일정 임계값 미만이면 알림 발송 — 캐싱이 실제 이익을 내지 못한다는 신호.

캐시 + 배치 결합 — 최강 단가 조합

Anthropic의 가장 유리한 종합 단가는 캐싱 + 배치 결합입니다. Message Batches API에 제출하는 요청에도 cache_control을 사용할 수 있고, 캐시 토큰은 캐시 읽기 단가($0.30/1M)로, 비캐시 토큰은 배치 단가(표준의 50%)로 처리됩니다. 출력 토큰도 배치 할인 적용.

5만 토큰 시스템 프롬프트 + 1만 사용자 메시지(각 500 토큰) + 1만 출력(각 1,000 토큰)의 배치 작업:

저렴한 캐시 읽기 단가($0.30/1M)는 배치 할인이 거의 영향을 못 줄 정도로 이미 낮으므로 — 캐시 + 배치의 진짜 가치는 비캐시 사용자 메시지와 출력 토큰의 배치 할인입니다. 출력 단가가 입력의 5배이므로 배치의 출력 50% 할인이 가장 큰 절감을 가져옵니다.

자주 묻는 질문

Anthropic 프롬프트 캐시는 얼마나 오래 유지되나요?

Anthropic은 두 가지 캐시 수명을 제공합니다. 기본 ephemeral 캐시는 마지막 적중 시점부터 5분간 유지됩니다. 지원 모델의 확장 캐시는 1시간 유지됩니다. 캐시 수명은 같은 캐시 엔트리에 적중할 때마다 리셋되므로, 트래픽이 충분하면 캐시는 사실상 무한 유지됩니다.

OpenAI는 Anthropic처럼 캐시 쓰기 비용을 청구하나요?

아니요. OpenAI는 적격 입력에 자동으로 캐싱을 적용하고, 캐시 적중 시에만 캐시 읽기 단가($1.25/1M)를 청구합니다. 별도 쓰기 비용 없음 — OpenAI가 쓰기 비용을 흡수합니다. Anthropic은 캐시 쓰기를 $3.75/1M로 명시 청구하므로 손익분기점 계산이 필요합니다 — 쓰기 비용을 이후 읽기에서 회수.

Anthropic 프롬프트 캐싱의 최소 prefix 크기는?

Anthropic은 cache_control 브레이크포인트 앞에 최소 1,024 토큰을 요구합니다. 더 짧은 prefix는 캐싱되지 않고 표준 입력 가격으로 대체됩니다. 이 임계값은 캐싱이 큰 시스템 프롬프트나 문서 컨텍스트에서만 의미가 있다는 뜻 — 짧은 채팅 메시지에는 적용 불가.

프롬프트 캐싱을 배치 API 할인과 결합할 수 있나요?

예, Anthropic에서. Message Batches API에 제출하는 배치 요청에도 cache_control을 사용할 수 있습니다. 배치 할인(50%)은 비캐시 토큰에, 캐시 읽기 단가($0.30/1M)는 캐시 토큰에 적용됩니다. 어떤 주요 LLM API에서도 사용 가능한 가장 유리한 종합 단가입니다.