Jeśli pracujesz z Claude, ogromna część tokenów, które technicznie przetwarzasz, kosztuje cię tylko ułamek ceny — bo są cache'owane, czyli zapamiętywane. To dzieje się automatycznie: nie musisz niczego włączać ani zmieniać. Warto jednak rozumieć kilka prostych zasad, bo to one decydują, jak szybko zbliżasz się do limitu sesji. Poniżej to, co naprawdę trzeba wiedzieć — bez wchodzenia w niuanse, które przydają się dopiero przy intensywnym korzystaniu z API.
Zacznę od dwóch pojęć. Token to fragment tekstu, którym operuje model — z grubsza kawałek słowa. Za tokeny, które modelowi podajesz (wejście) i które zwraca (wyjście), liczy się zużycie. Cache (pamięć podręczna) to mechanizm, dzięki któremu Claude nie musi za każdym razem przetwarzać od zera tego samego tekstu — instrukcji, plików, wcześniejszej rozmowy. Raz zapamiętany fragment przy kolejnym pytaniu jest po prostu odczytywany.
Posłuchaj
Około 6-minutowa rozmowa o tym artykule — gdzie uciekają tokeny i jak płacić mniej za tę samą pracę.
Wygenerowane przez NotebookLM, sprawdzone przez AURA.
Ile kosztuje cache i jak długo żyje
Najważniejsza liczba: tokeny z cache'a kosztują tylko 10% ceny zwykłego wejścia. W praktyce oznacza to ogromną różnicę. Pokażę ci to na liczbach: jeśli w ciągu dnia przez model przechodzi 91 milionów tokenów, a większość z nich jest odczytywana z cache'a, koszt wypada tak, jakbyś przetworzył około 9 milionów. Reszta to po prostu ponowny odczyt zapamiętanego kontekstu.
Cache nie trzyma się jednak wiecznie. Ma swój czas życia — w dokumentacji Anthropic nazywany TTL (time to live):
- Subskrypcja Claude (np. Claude Code w terminalu lub jako rozszerzenie): 1 godzina. Jeśli przez godzinę nie wyślesz żadnej wiadomości, a potem napiszesz kolejną, wszystko z tej sesji zostaje wyrzucone z cache'a i przetworzone od nowa.
- Praca przez API oraz agenci pomocniczy (sub-agents): 5 minut. Tego okna nie da się skrócić, ale można je wydłużyć do godziny — za dopłatą. Agenci pomocniczy mają 5 minut niezależnie od planu.
Warto wiedzieć, skąd brała się dawniejsza dezorientacja. Gdy użytkownicy skarżyli się, że subskrypcja „zjada się” szybciej, część osób podejrzewała, że okno cache'a po cichu skrócono z godziny do 5 minut. Tak się nie stało — w subskrypcji to nadal godzina. Nieporozumienie wzięło się stąd, że zasady dla API i dla Claude Code są opisane razem, choć to dwie różne rzeczy.
Jedno zastrzeżenie, które chcę postawić uczciwie: dla strony webowej (Claude.ai) dokumentacja Anthropic nie opisuje jednoznacznie, jak dokładnie działa cache'owanie. Można rozsądnie zakładać, że jest podobnie jak w subskrypcji, ale nie jest to potwierdzone w stu procentach.
Z czego składa się cache podczas rozmowy
Kontekst, który Claude zapamiętuje, dzieli się na trzy warstwy:
- Warstwa systemowa — podstawowe instrukcje, definicje narzędzi (np. czytanie i zapis plików, uruchamianie poleceń, wyszukiwanie), styl odpowiedzi. To jest cache'owane globalnie.
- Warstwa projektu — pliki typu
CLAUDE.md, pamięć i reguły danego projektu. Cache'owane osobno dla każdego projektu. - Warstwa rozmowy — twoje wiadomości i odpowiedzi modelu. Ta rośnie z każdą turą i jest dopisywana na bieżąco — i tak ma być.
Pomaga tu rozróżnienie dwóch operacji. Zapis do cache'a (cache create) to jednorazowy koszt zapamiętania czegoś po raz pierwszy; zwraca się już przy następnej turze. Odczyt z cache'a (cache read) to ponowne użycie tego, co już zapamiętane — i właśnie to jest dziesięć razy tańsze od świeżego wejścia.
Mechanizm działa krok po kroku. W pierwszej turze nic jeszcze nie jest zapamiętane: model wczytuje instrukcje systemowe, kontekst projektu i twoją pierwszą wiadomość, przetwarza wszystko od zera i zapisuje do cache'a. W drugiej turze — o ile mieścisz się w oknie godziny — cała ta podstawa jest już gotowa, więc do przetworzenia zostaje tylko nowa odpowiedź i nowa wiadomość. I tak dalej: z każdą turą dochodzi jedynie świeży fragment, a reszta jest tanio odczytywana.
Problem pojawia się, gdy ta podstawa nagle wymaga ponownego zapamiętania. Wyobraź sobie, że jesteś przy szesnastej wiadomości — cała wcześniejsza rozmowa jest już tanio odczytywana z cache'a. Jeśli w tym momencie zrobisz coś, co resetuje cache, wszystko od początku zostaje przetworzone na nowo. To kosztowny ruch.
Co resetuje cache
Trzy rzeczy wyrzucają zapamiętany kontekst i każą przetwarzać go od zera:
- Przerwa dłuższa niż godzina (w subskrypcji) lub niż 5 minut (przy API i agentach pomocniczych).
- Zmiana instrukcji systemowych — gdy zmienia się to, na czym opiera się cała sesja.
- Zmiana modelu w trakcie. Każdy model ma własny cache. Po przełączeniu kolejne zapytanie czyta całą dotychczasową rozmowę bez żadnego trafienia w cache — nawet jeśli treść jest identyczna.
Ta ostatnia kwestia ma praktyczny haczyk. Ustawienie typu „Opus do planowania” (model Opus w trybie planu, a potem Sonnet do wykonania) bywa polecane jako sposób na oszczędzanie limitu sesji. Trzeba jednak wiedzieć, że każde takie przełączenie to zmiana modelu — a więc reset cache'a i świeże przetwarzanie. Na dłuższą metę to ustawienie i tak może oszczędzać limit, ale samo przełączanie nie jest darmowe.
I rzecz, która działa odwrotnie, niż można by się spodziewać: edycja pliku CLAUDE.md w trakcie sesji nie resetuje cache'a. Zmiana wchodzi w życie dopiero po ponownym uruchomieniu sesji, więc bieżący cache pozostaje nienaruszony.
Trzy nawyki, które wystarczą większości osób
Całość sprowadzę do trzech zasad, które moim zdaniem pokrywają potrzeby zdecydowanej większości użytkowników: utrzymuj sesję żywą, trzymaj ją skupioną i zaczynaj od nowa przy zmianie zadania.
- Nie rób zbyt długiej przerwy. Jeśli sesja stoi już ponad godzinę, zamiast do niej wracać, przekaż pracę do nowej. Powrót po długiej przerwie i tak oznacza ponowne przetworzenie całości.
- Zaczynaj od czysta przy zmianie tematu. Polecenie
/clearczyści sesję;/compactstreszcza ją — i przy okazji resetuje cache. Alternatywą jest „przekazanie sesji”: krótkie podsumowanie tego, co zrobione, jakie pliki powstały i gdzie wrócić, które kopiujesz do nowej, czystej sesji. Efekt jest taki, jakbyś nic nie stracił. - W czacie Claude duże dokumenty wrzucaj do projektu. Jeśli korzystasz z Claude przez stronę i planujesz wkleić obszerne materiały, lepiej założyć projekt, niż wrzucać je wprost do rozmowy. Pliki w projekcie są cache'owane w sposób lepiej przystosowany do przechowywania wielu dokumentów. (To obszar, którego dokumentacja nie opisuje wprost — traktuj jako rozsądną wskazówkę, nie twardą regułę.)
Co naprawdę trzeba wiedzieć
Cache'owanie tokenów potrafi być bardzo złożone — pełna dokumentacja wchodzi w niuanse, które przy zwykłej pracy z Claude nie są potrzebne. Sedno jest proste: zapamiętany kontekst kosztuje 10% ceny świeżego wejścia, w subskrypcji żyje godzinę, a resetują go długa przerwa, zmiana instrukcji systemowych i zmiana modelu w trakcie.
Stąd morał, który warto przyjąć szerzej niż przy samych tokenach: śledź zmiany w narzędziach, ale za każdym razem pytaj, ile z tego naprawdę musisz wiedzieć, żeby dobrze pracować. Trzy nawyki powyżej — żywa sesja, skupiona sesja, świeży start przy zmianie zadania — wystarczą, by nie przepalać limitów. Resztę można doczytać wtedy, gdy faktycznie zacznie ci być potrzebna.