
클로드 코드로 한참 작업하다 보면 「아까보다 느려진 것 같은데」 싶은 순간이 옵니다. 검색해 보면 답은 대체로 하나입니다 — 「대화가 길어져서 그렇다, 지우고 새로 시작해라.」
정말 그런지 재봤습니다. 제 PC에 쌓인 세션 기록 182개에서 응답 7,917번을 전부 뽑아 「얼마나 걸렸나」와 「그때 대화가 얼마나 길었나」를 짝지어 봤습니다.
결과가 예상과 달랐습니다. 대화 길이는 거의 상관이 없었습니다.
어떻게 쟀나
클로드 코드는 대화 기록을 .jsonl 파일로 남깁니다. 한 줄이 메시지 하나이고, 시각과 토큰 사용량이 함께 적혀 있습니다.
| 잰 것 | 방법 |
|---|---|
| 응답 시간 | 내가 입력한 시각 → 답이 끝난 시각의 차이 |
| 대화 길이 | 그 요청에 실린 입력 토큰 전부(캐시 포함) |
| 답의 길이 | 출력 토큰 |
도구를 실행한 뒤 이어진 답은 뺐습니다. 파일을 읽거나 명령을 돌린 시간이 섞이면 「모델이 느린 것」과 구별이 안 되기 때문입니다. 사람이 직접 친 입력 다음에 온 답만 셌고, 그렇게 남은 것이 7,917건입니다.
① 겉보기로는 — 대화가 길수록 느립니다
| 그때 대화 크기 | 응답 수 | 응답 시간 |
|---|---|---|
| 5만 토큰 미만 | 26 | 4.9초 |
| 5만~10만 | 191 | 9.0초 |
| 10만~15만 | 261 | 14.2초 |
| 15만~20만 | 246 | 15.3초 |
| 20만 이상 | 7,193 | 17.4초 |
4.9초에서 17.4초 — 3.6배입니다. 여기까지만 보면 「대화가 길어져서 느려진다」가 맞아 보입니다. 대부분의 글이 여기서 멈춥니다.
② 그런데 답도 같이 길어져 있었습니다
같은 표에 답의 길이를 함께 놓으면 그림이 달라집니다.
| 대화 크기 | 응답 시간 | 답의 길이 | 1,000토큰 뽑는 데 |
|---|---|---|---|
| 5만 미만 | 4.9초 | 328 | 13.9초 |
| 5만~10만 | 9.0초 | 617 | 15.2초 |
| 10만~15만 | 14.2초 | 982 | 15.5초 |
| 15만~20만 | 15.3초 | 1,134 | 14.8초 |
| 20만 이상 | 17.4초 | 1,368 | 15.4초 |
맨 오른쪽 칸을 보십시오. 13.9 · 15.2 · 15.5 · 14.8 · 15.4초입니다. 대화가 5만 토큰이든 20만 토큰이든 글자를 뽑아내는 속도는 사실상 같습니다.
응답 시간이 3.6배가 된 이유는 따로 있었습니다. 답이 328토큰에서 1,368토큰으로 4.2배 길어졌기 때문입니다.

생각해 보면 당연합니다. 대화 초반에는 「이 파일 열어줘」 같은 짧은 주문이 오가고, 작업이 깊어질수록 「이걸 이렇게 고치고 왜 그런지 설명해줘」가 됩니다. 질문이 무거워지니 답도 길어집니다.
즉 느려진 것은 대화가 길어져서가 아니라, 내가 어려운 걸 시키기 시작해서입니다.
③ 진짜 느려지는 순간은 따로 있습니다
그럼 「갑자기 느려졌다」는 체감은 무엇일까요. 같은 기록을 캐시 기준으로 갈라 봤습니다.
먼저 캐시가 무엇인지 짧게 말씀드립니다. 클로드는 요청할 때마다 그때까지의 대화 전체를 다시 보냅니다. 매번 처음부터 읽으면 오래 걸리니, 앞부분을 저장해 두고 다음 요청에서 그대로 재사용합니다. 이게 캐시입니다.
| 그 요청에서 | 건수 | 응답 시간 |
|---|---|---|
| 캐시를 읽었다 (평소) | 7,315 | 15.9초 |
| 캐시를 새로 만들었다 (깨졌다) | 597 | 29.8초 |
캐시가 깨진 요청은 1.9배 느립니다. 그리고 이건 전체의 7.5%, 대략 13번에 한 번 일어납니다.
이게 「갑자기」의 정체입니다. 평소 16초 걸리던 것이 갑자기 30초가 되면 사람은 그것을 기억합니다. 느려진 것은 대화가 길어져서가 아니라, 그 한 번의 요청에서 캐시가 깨졌기 때문입니다.
④ 캐시는 언제 깨지나
앞부분이 조금이라도 달라지면 그 뒤가 전부 다시 계산됩니다. 그래서 이런 일들이 캐시를 깹니다.
| 이런 일을 하면 | 왜 깨지나 |
|---|---|
| 지침 파일(CLAUDE.md)을 고친다 | 맨 앞에 실리는 내용이라 통째로 다시 계산됩니다 |
| 도구·MCP를 붙이거나 뗀다 | 도구 목록도 앞부분에 들어갑니다 |
| 대화를 압축한다 | 앞부분이 요약본으로 통째로 바뀝니다 |
| 한참 자리를 비웠다 | 캐시에는 유효기간이 있습니다 |
| 새 세션을 연다 | 쌓아둔 것이 없으니 처음부터 만듭니다 |
여기서 제가 크게 데인 것이 하나 있습니다. 지침 파일이 불필요하게 컸습니다. 작업 폴더 위치 때문에 상위 폴더의 지침까지 딸려 들어가고 있었는데, 정리하고 나니 매 요청에 실리는 양이 90,231토큰에서 21,139토큰으로 줄었습니다. 4분의 1 토막입니다.
이건 캐시가 깨질 때마다 다시 계산해야 하는 양이 4배였다는 뜻입니다. 평소에는 몰랐다가, 깨지는 그 순간에만 값을 치르고 있었던 셈입니다.
⑤ 시작이 느린가 — 반은 맞습니다
「처음 켰을 때 느리다」는 이야기도 재봤습니다.
| 세션에서 몇 번째 | 응답 시간 | 1,000토큰 뽑는 데 |
|---|---|---|
| 첫 번째 | 6.4초 | 20.1초 |
| 두 번째 | 10.8초 | 15.2초 |
| 3~5번째 | 14.7초 | 14.5초 |
| 6~20번째 | 16.9초 | 14.4초 |
| 21번째 이후 | 17.2초 | 15.4초 |
재미있는 대목입니다. 첫 요청은 6.4초로 가장 빠릅니다. 그런데 1,000토큰 뽑는 데는 20.1초로 가장 느립니다.
말을 바꾸면 이렇습니다. 첫 질문은 대개 가벼워서 답이 짧으니 빨리 끝난 것처럼 느껴지지만, 실제 처리 속도는 그때가 제일 느립니다. 쌓아둔 캐시가 없어 처음부터 만들어야 하기 때문입니다.
그래서 무엇을 하면 되나
| 방법 | 효과 |
|---|---|
| 지침 파일을 줄인다 | ⭐ 가장 큽니다. 캐시가 깨질 때마다 치르는 값이 줄어듭니다 |
| 안 쓰는 도구·MCP를 뗀다 | ⭐ 같은 이유입니다. 도구 목록도 매번 실립니다 |
| 작업 중에 설정을 건드리지 않는다 | ⭐ 고칠 일이 있으면 한 번에 모아서 하십시오 |
| 짧게 물으면 짧게 답합니다 | 체감 속도에 직접 닿습니다 — 답 길이가 곧 시간입니다 |
| 대화를 지우고 새로 시작한다 | 생각만큼 효과가 없습니다 — 아래를 보십시오 |
마지막 줄이 이 글의 결론입니다. 대화를 지우면 대화 크기는 줄지만, 제 기록에서 대화 크기는 속도와 거의 상관이 없었습니다. 오히려 새 세션은 캐시가 비어 있어 처음이 더 느립니다.
물론 대화를 지우는 것이 비용에는 확실히 도움이 됩니다. 매 요청에 실리는 양이 줄어드니까요. 다만 「느려서 지운다」는 제 기록으로는 근거가 약합니다. 짐을 덜려고 지우는 것과 빨라지려고 지우는 것은 다른 이야기입니다.
이 숫자의 한계
정직하게 적어 둡니다.
제 PC 한 대, 제 사용 방식 하나의 기록입니다. 7,917건이라 표본은 작지 않지만, 다른 사람의 작업 방식에서도 같은 모양이 나온다는 보장은 없습니다.
응답 시간에는 네트워크와 서버 혼잡이 섞여 있습니다. 제가 잰 것은 「내가 입력한 순간부터 답이 끝난 순간까지」이고, 그 안에 무엇이 얼마나 들어 있는지는 밖에서 알 수 없습니다. 시간대별로 서비스가 붐비는 정도도 걸러내지 못했습니다.
구간마다 표본 수가 크게 다릅니다. 5만 토큰 미만은 26건뿐이고 20만 이상은 7,193건입니다. 작은 구간의 숫자는 그만큼 덜 단단합니다.
그래도 「1,000토큰 뽑는 데 걸리는 시간이 구간과 상관없이 14~15초로 일정하다」는 것만큼은 표본이 적은 쪽을 빼고 봐도 유지됩니다. 이 글에서 제가 가장 자신 있는 대목이 그것입니다.
자료 — 제 PC에 저장된 클로드 코드 세션 기록 182개에서 사람이 직접 입력한 뒤 온 응답 7,917건을 뽑아 셌습니다. 시간은 기록에 남은 시각의 차이이고, 토큰 수는 기록에 함께 저장된 사용량 값입니다.
'AI 코딩 > 클로드 코드' 카테고리의 다른 글
| 클로드 코드 대화 압축 완전 정리 — 무엇이 사라지고 무엇이 남나 (0) | 2026.09.08 |
|---|---|
| 클로드 코드 대화 압축을 했는데 바로 또 찼습니다 — 「다 저장해」의 대가 (0) | 2026.08.24 |
| 클로드 코드 기억 기능 — 「기억해둬」라고만 했더니 규칙이 3,840줄이 됐습니다 (0) | 2026.08.24 |
| Python was not found — 파이썬은 깔려 있었고, PATH 한 칸 차이였습니다 (0) | 2026.08.22 |
| SQLite 전문검색으로 리포트 1,113건 뒤지기 — 6.71초를 1.75초로 줄인 방법 (0) | 2026.08.22 |