Claude API 쓰다가 요금 폭탄 맞기 전에 알아야 할 것들
Claude API 비용이 어떻게 계산되는지, 토큰이 뭔지, 모델별 가격 차이가 얼마나 나는지 실제 숫자로 풀어봤습니다. 과금 구조 제대로 모르면 고지서 보고 당황합니다.
API 키 발급받고 처음 테스트 돌렸을 때, 저도 그냥 막 썼어요. "어차피 몇 번 해봤자 얼마나 나오겠어." 그러다가 한 달 뒤 청구서 보고 잠깐 멈췄던 기억이 있습니다. 금액이 엄청났던 건 아닌데, 내가 정확히 어디서 얼마가 나왔는지 설명을 못 하겠더라고요. 그게 더 찜찜했습니다.
Claude API를 처음 연결하는 과정은 Claude API, 처음 연결하는 날 생기는 일들에서 다뤘으니까, 여기선 그 다음 단계 얘기를 할게요. 연결은 됐는데 요금이 어떻게 붙는 건지 아직 안 와닿는 분들 위한 글입니다.
토큰이라는 단위, 글자 수랑 다른 이유
비용 구조를 이해하려면 토큰부터 잡고 가야 해요. 근데 이게 처음엔 진짜 헷갈립니다. 글자 수도 아니고, 단어 수도 아니거든요.
쉽게 말하면 이런 거예요. AI 모델이 텍스트를 처리할 때 문자를 그대로 읽는 게 아니라, 의미 단위로 쪼개서 숫자로 변환해요. 이 조각 하나하나가 토큰입니다. 영어는 단어 하나가 대략 토큰 하나에서 두 개 사이인데, 한국어는 같은 의미를 표현해도 토큰이 더 많이 나와요. 한글 자체가 영어보다 토큰 효율이 낮기 때문입니다.
실제로 재봤더니, "안녕하세요, 오늘 날씨가 좋네요." 이 문장이 영어 "Hello, the weather is nice today."보다 토큰이 더 나왔어요. 길이는 비슷한데도요. 한국어로 API 많이 쓰는 분들이 이 부분에서 예상보다 비용이 더 나오는 경우가 있습니다.
대략적인 감으로는, 한국어 기준으로 글자 한 자가 토큰 하나 정도라고 생각하면 조금 넉넉하게 잡히는 편이에요.
입력 토큰과 출력 토큰, 가격이 다릅니다
여기서 많은 분들이 놓치는 포인트가 있어요. Claude API는 내가 보내는 텍스트(입력)와 Claude가 돌려주는 텍스트(출력)의 가격이 다릅니다. 출력이 훨씬 비싸요.
Claude 3.5 Sonnet 기준으로 보면, 입력 토큰은 1백만 토큰당 3달러, 출력 토큰은 1백만 토큰당 15달러예요. 딱 다섯 배 차이입니다. 단순히 "출력이 조금 더 비싸겠지" 생각했다면, 다섯 배라는 숫자는 꽤 다르게 느껴질 거예요.
실제 상황으로 바꿔볼게요. 긴 문서 요약을 시키는 작업이 있다고 해봐요. 5천 토큰짜리 문서를 입력하고, 500토큰짜리 요약을 받는다면, 비용 계산은 이렇게 됩니다.
- 입력: 5,000 × (3 / 1,000,000) = $0.015
- 출력: 500 × (15 / 1,000,000) = $0.0075
입력이 10배 많은데 비용은 입력이 두 배 나왔어요. 이 감각을 잡으면 설계할 때 달라집니다.
모델마다 가격이 왜 이렇게 차이 나는 걸까
친구한테 "Claude 써봤어?" 물어봤더니 "비싸지 않아?" 하는데, 뭘 쓰냐에 따라 완전히 다른 얘기예요.
Anthropic이 제공하는 모델이 여러 개거든요. 지금 기준으로 주요 라인업은 Haiku, Sonnet, Opus 세 계열입니다. 성능이 올라갈수록 비용도 올라가요.
Claude 3 Haiku는 입력 1백만 토큰당 0.25달러예요. Sonnet은 3달러, Opus는 15달러. 입력 기준으로만 봐도 Haiku 대비 Opus가 60배 비쌉니다. 단순 분류 작업이나 짧은 텍스트 처리를 Opus로 돌리면 그냥 돈 낭비예요. 반대로 복잡한 추론이 필요한 작업을 Haiku에 맡겼다가 결과 품질이 나와서 재시도를 열 번 하는 것도 낭비고요.
작업 성격에 맞는 모델을 고르는 게 비용 관리의 절반입니다. 간단한 분류나 요약은 Haiku, 코드 작성이나 논리 추론은 Sonnet, 정말 복잡하고 긴 맥락이 필요한 건 Opus. 이 구분만 지켜도 같은 작업을 훨씬 싸게 할 수 있어요.
컨텍스트 창을 꽉 채우면 벌어지는 일
이게 가장 흔한 요금 폭탄 원인이에요. 솔직히 말하면 저도 처음에 이 부분을 제대로 안 봤습니다.
Claude API는 대화 히스토리를 매번 통째로 다시 보내는 구조예요. 채팅 앱 만들어서 대화를 쌓아가다 보면, 10번째 메시지를 보낼 때 앞의 9번 대화가 다 입력 토큰으로 잡힌다는 거예요. 대화가 길어질수록 매 요청마다 입력 토큰이 기하급수적으로 늘어납니다.
예를 들어 볼게요. 메시지 한 개당 평균 500토큰이라고 하면, 20번 주고받은 시점에서 한 번의 API 요청에 입력 토큰만 10,000개가 들어가요. 근데 그 대화를 100번 한다면? 입력 토큰 합산이 어마어마해집니다. 단순 계산기 앱 같은 거 만든다고 역할극 히스토리 쌓았다가 고지서 받고 당황하는 경우가 이거예요.
해결 방법은 히스토리를 주기적으로 요약해서 압축하거나, 작업 성격에 따라 매번 새 컨텍스트로 시작하거나, 꼭 필요한 부분만 골라서 넘기는 방식을 쓰는 겁니다.
Anthropic 콘솔에서 직접 확인하는 법
이론만 알면 불안하니까, 실제 숫자를 보는 방법도 짚고 갈게요.
console.anthropic.com에 로그인하면 Usage 탭이 있어요. 여기서 날짜별, 모델별로 입력·출력 토큰이 얼마나 나갔는지 볼 수 있습니다. 처음 며칠 동안은 이걸 매일 확인하는 걸 권해요. 내가 예상한 토큰 수와 실제 수가 얼마나 차이 나는지 감을 잡아야 하거든요.
API 응답 자체에도 토큰 정보가 담겨 있어요. 응답 객체 안에 usage 필드가 있고, 거기에 input_tokens랑 output_tokens가 찍혀 나옵니다. 코드 짤 때 이걸 로깅해두면 나중에 비용 추적이 훨씬 편합니다. 귀찮다고 안 해두면 나중에 후회해요.
월 예산을 설정해두는 것도 방법이에요. 콘솔에서 사용량 알림을 걸어두면 특정 금액 이상 나갈 때 이메일로 알려줍니다. 테스트 중에 실수로 루프를 잘못 돌려서 수백 번 요청이 나가는 상황을 이게 막아줘요.
그래서 월에 얼마 나오는 건데
제일 많이 받는 질문인데, 솔직히 쓰는 방식에 따라 너무 달라서 단정 짓기 어려워요. 그래도 현실적인 예시를 들어볼게요.
하루에 문서 요약 100건을 처리한다고 해봐요. 문서 평균 2,000토큰, 요약 결과 300토큰, Claude 3.5 Sonnet 사용 기준입니다.
- 입력: 100 × 2,000 × (3 / 1,000,000) = $0.6/일
- 출력: 100 × 300 × (15 / 1,000,000) = $0.45/일
- 합계: 약 $1.05/일 → 한 달이면 약 $31.5
원화로 4만 원 초반 대. 꽤 쓸 만한 수준이죠. 근데 같은 작업을 Opus로 돌리면 그냥 다섯 배 이상으로 뛰어요. 모델 선택이 얼마나 중요한지 이 숫자가 말해줍니다.
반대로 개인 공부나 간단한 사이드 프로젝트 수준이라면 한 달 5달러도 안 나오는 경우가 많아요. 겁먹을 필요 없다는 얘기도 됩니다.
📌 한 줄 정리: Claude API 비용은 토큰 단위로 붙고, 출력이 입력보다 훨씬 비싸다. 모델을 작업에 맞게 고르고, 컨텍스트를 불필요하게 쌓지 않는 것만 신경 써도 비용은 충분히 통제됩니다.
콘솔에서 usage 확인하는 습관, API 응답에서 토큰 수 로깅하는 것, 이 두 가지가 요금 폭탄을 막는 현실적인 방법이에요.