Come ridurre i costi dei token di Claude Code: la guida pratica di Anthropic per sessioni efficienti

Anthropic ha pubblicato una guida pratica per gli sviluppatori che vogliono ottenere più valore da ogni sessione di Claude Code. Il messaggio centrale è semplice: lo stesso compito di codifica può costare ver

发布于 2026年8月17日generalGEO 评分: 04 次阅读
Come ridurre i costi dei token di Claude Code: la guida pratica di Anthropic per sessioni efficienti

Come Ridurre i Costi dei Token di Claude Code: La Guida Pratica di Anthropic per Sessioni Efficienti

Introduzione

Anthropic ha pubblicato una guida pratica per gli sviluppatori che vogliono ottenere più valore da ogni sessione di Claude Code.

Il messaggio centrale è semplice: lo stesso compito di codifica può costare importi molto diversi a seconda di come gestisci la sessione.

Claude Code non è come un editor tradizionale con un costo fisso per attività. Ogni richiesta al modello ha un costo di inferenza, e le conversazioni lunghe portano avanti ripetutamente file, risultati di strumenti, output di comandi, istruzioni di sistema e messaggi precedenti. Se questo contesto è gestito male, una semplice correzione di bug può finire per consumare molti più token del necessario.

L'immagine è la copertina della guida pubblicata da Anthropic per massimizzare il valore delle sessioni di Claude Code. Lo sfondo è nero, con un'icona verde chiaro a sinistra che contiene un motivo simile a un repository. Il testo a destra recita "Massimizzare il valore delle sessioni di Claude Code", con il sottotitolo "Come eseguire sessioni efficienti per ottenere il massimo valore da ogni token." L'immagine si trova nella sezione introduttiva del documento, strettamente correlata al contesto, e presenta visivamente il tema del documento, ovvero guidare gli sviluppatori su come ottenere il massimo valore da ogni token gestendo in modo efficiente le sessioni di Claude Code.

L'articolo originale ha distillato i consigli in sei abitudini pratiche:

  1. Esegui /clear quando un'attività è terminata e passi a un'altra.
  2. Scegli il modello e il livello di ragionamento all'inizio della sessione invece di cambiare ripetutamente a metà.
  3. Usa @ per fare riferimento direttamente ai file invece di farli cercare a Claude.
  4. Aggiungi flag silenziosi ai comandi che altrimenti producono grandi quantità di output.
  5. Esegui /compact prima di una lunga pausa mentre la cache del prompt esistente è ancora calda.
  6. Affida il lavoro investigativo grande e rumoroso a un subagent così il suo contesto intermedio non si accumula nella conversazione principale.

Anche il TL;DR di Anthropic raccomanda di eseguire /context in una sessione nuova per vedere cosa è già caricato, inclusi CLAUDE.md e le definizioni degli strumenti MCP.

Questi suggerimenti hanno più senso una volta che capisci cosa succede a un token all'interno di una sessione di Claude Code.

Il Ciclo di Vita di un Token

Claude Code può essere utilizzato tramite i piani Claude a pagamento o tramite l'utilizzo API a consumo. Per gli utenti individuali, Claude Pro costa attualmente $20 al mese con fatturazione mensile, mentre Claude Max parte da $100 al mese e offre anche un livello di utilizzo superiore. L'utilizzo API viene fatturato separatamente in base al modello e al volume di token.

La documentazione sui costi di Claude Code di Anthropic afferma che nelle implementazioni aziendali, l'utilizzo medio è di circa $13 per sviluppatore per giorno attivo e circa $150–250 per sviluppatore al mese, sebbene i costi effettivi varino sostanzialmente in base al modello, al codebase, al flusso di lavoro e al livello di automazione.

Lo stesso compito può costare diverse volte di più se Claude deve cercare attraverso file non necessari, eseguire comandi verbosi, o portare avanti ripetutamente contesto irrilevante.

L'immagine mostra le richieste delle Session A e Session B. La Session A legge due file, per un totale di 5 richieste; la Session B prima cerca, per un totale di 18 richieste. Nella figura, diverse parti sono rappresentate con blocchi di colore diverso: viola per definizioni degli strumenti, prompt di sistema, CLAUDE.md; verde per risultati grep; blu per file letti; arancione per output di comandi. Il grafico è in relazione con quanto detto sopra sulla comprensione dei costi di Claude Code che richiede di dividere ogni richiesta in due fasi, inclusa la lettura dell'input e la generazione dell'output, e presenta visivamente la composizione delle richieste delle Session A e B nelle diverse fasi, aiutando a comprendere le differenze di costo.

Per capire perché, aiuta separare

ciascuna richiesta in due fasi.

Prefill: Lettura dell'Input

Durante la fase di prefill, il modello legge la richiesta e il suo contesto in un'unica passata.

Tale input può includere:

  • Definizioni degli strumenti
  • Il prompt di sistema
  • CLAUDE.md
  • Il tuo messaggio corrente
  • La cronologia della conversazione precedente
  • I file che Claude ha letto
  • L'output di comandi e strumenti già aggiunto alla sessione

Tutti questi elementi contano come token di input.

Decode: Produzione dell'Output

Durante la fase di decode, il modello genera la sua risposta token per token.

Questo include token di ragionamento, chiamate agli strumenti e il testo che alla fine vedi. A differenza del prefill, la decodifica è sequenziale: una risposta di 200 token richiede che il modello generi 200 token uno dopo l'altro.

Questo è il motivo per cui i token di output sono tipicamente molto più costosi dei token di input. Per gli attuali modelli Claude discussi qui, il prezzo dell'output è cinque volte il prezzo base dell'input.

I prezzi standard attuali dell'API sono:

Modello Input Output
Claude Opus 5 $5 / MTok $25 / MTok
Claude Sonnet 5 $2 / MTok $10 / MTok
Claude Haiku 4.5 $1 / MTok $5 / MTok

MTok significa un milione di token.

L'altra variabile principale è il livello di sforzo. Gran parte dell'output generato in una sessione di codifica agentica può essere ragionamento. Uno sforzo più elevato consente al modello di spendere più token per riflettere su un problema difficile, mentre uno sforzo inferiore può essere più appropriato per lavoro di routine.

L'immagine mostra, su compiti semplici e difficili, la relazione tra qualità del modello e costo del compito. Il grafico a sinistra illustra che su compiti semplici, le curve di modelli di diverse dimensioni convergono, ovvero a parità di numero di compiti, la qualità è simile; il grafico a destra mostra invece che su compiti difficili, le curve di modelli di diverse dimensioni non convergono e, a parità di numero di compiti, i modelli più grandi hanno qualità superiore. L'immagine è strettamente correlata al contesto e presenta visivamente la discussione nel testo sull'impatto delle dimensioni del modello e della difficoltà del compito sulla qualità dell'output.

La regola pratica è semplice: usa un modello più potente e uno sforzo maggiore quando il problema è davvero difficile o ambiguo, non automaticamente per ogni piccolo compito.

Il Prompt Caching È la Leva di Costo Più Grande

Il prompt caching è una delle parti più importanti del modello di costo di Claude Code.

Ogni richiesta di Claude Code inizia con una grande quantità di materiale ripetuto: definizioni degli strumenti, il prompt di sistema, CLAUDE.md e la cronologia della conversazione accumulata fino a quel momento.

Se l'inizio di una nuova richiesta corrisponde esattamente a una richiesta recente, il server può riutilizzare lo stato precedentemente calcolato invece di elaborare di nuovo l'intero prefisso condiviso.

Una lettura dalla cache costa solo 0,1× il prezzo normale dei token di input.

Le scritture nella cache sono più costose dell'input normale perché il server deve memorizzare lo stato calcolato. Una scrittura standard in cache di cinque minuti costa 1,25× il prezzo base dell'input, mentre una scrittura in cache di un'ora costa 2×. Il punto importante è che la scrittura avviene una sola volta, mentre i successivi hit nella cache possono riutilizzare ripetutamente il prefisso a un decimo del costo normale dell'input.

Immagina che una conversazione contenga già 50.000 token di cronologia. Senza un hit nella cache, il modello dovrebbe fare il prefill dell'intera cronologia alla tariffa normale dell'input nella richiesta successiva. Con una cache valida, il prefisso condiviso viene letto a 0,1× la tariffa base e solo il nuovo

il materiale aggiunto deve essere elaborato al prezzo di input pieno.

In un loop agente lungo, quella differenza può diventare sostanziale.

Cosa Invalida la Cache?

La cache deve corrispondere in modo continuo dall'inizio della richiesta. Se qualcosa cambia vicino all'inizio di quel prefisso—o cambia parte della chiave della cache—la storia rimanente non può più essere riutilizzata allo stesso modo.

L'articolo originale evidenzia sei casi comuni.

  1. Cambiare il modello con /model
  2. Ogni modello ha una cache separata. Passare da un modello all'altro significa che il turno successivo deve precompilare nuovamente la conversazione esistente per il nuovo modello.
  3. Cambiare lo sforzo di ragionamento con /effort
  4. Il livello di sforzo fa parte della chiave della cache. Cambiarlo nel mezzo di una sessione può forzare la conversazione a essere elaborata di nuovo.
  5. Attivare la modalità Fast
  6. Anche la modalità Fast cambia la chiave della cache. Anthropic consiglia di attivarla all'inizio se si prevede di usarla. Disattivare la modalità Fast non comporta la stessa penalità sulla cache.
  7. Eseguire /compact
  8. La compattazione riscrive la conversazione in un riepilogo più breve. La vecchia conversazione non corrisponde più, quindi la cache della conversazione precedente non può semplicemente continuare.
  9. Lasciare scadere la cache
  10. Negli abbonamenti Claude Code, Anthropic afferma che la cache del prompt scade dopo un'ora di inattività. Con una chiave API, il TTL predefinito è di cinque minuti a meno che la cache di un'ora non sia esplicitamente abilitata.
  11. Riprendere una vecchia sessione
  12. Una vecchia sessione di solito non avrà più una cache attiva, e il prompt di sistema viene ricostruito all'avvio di Claude Code. La richiesta successiva richiede quindi spesso una precompilazione fresca.

Questo non significa che non si debbano mai cambiare modelli, sforzo o compattare una conversazione. Significa che ci sono momenti più convenienti per farlo: all'inizio di una sessione o subito dopo /clear, piuttosto che a metà di un contesto lungo ed costoso.

C'è anche un caso meno ovvio nella modalità opusplan. Anthropic nota che entrare o uscire dalla modalità piano può cambiare i modelli, quindi ogni transizione può invalidare la cache del modello pertinente.

Perché /compact È Più Conveniente Prima di una Pausa

/compact riassume la conversazione corrente in una versione molto più breve.

Poiché produrre quel riepilogo richiede la lettura del contesto esistente, è più economico compattare mentre la conversazione è ancora disponibile tramite la cache del prompt. Se si aspetta fino a dopo una lunga pausa e la cache è scaduta, Claude potrebbe dover leggere l'intera conversazione al costo di input normale prima di poterla riassumere.

Ecco perché Anthropic consiglia di compattare prima di allontanarsi dalla tastiera per un periodo prolungato.

La Tua Sessione Sta Tranquillamente Diventando Più Grande

La cache del prompt rende il contesto ripetuto più economico, ma non impedisce al contesto stesso di crescere.

Ogni volta che Claude legge un file, il contenuto del file viene aggiunto alla conversazione. Ogni volta che esegue un comando, anche l'output può essere aggiunto. Da quel momento in poi, i turni successivi continuano a trasportare quel materiale.

Il turno 40 non è solo l'ultima richiesta. Trasporta anche gran parte di ciò che è accaduto nei turni da 1 a 39.

Ecco perché le sessioni lunghe possono accumulare costi molto più rapidamente di quanto gli sviluppatori si aspettino. Anche quando la vecchia storia è

cached, trasportare ripetutamente contesto irrilevante non è gratuito, e consuma anche spazio nella finestra di contesto.

Claude Code dispone comunque di una protezione per output Bash estremamente grandi. La documentazione attuale di Anthropic afferma che quando l'output di un comando supera 30.000 caratteri, Claude Code scrive l'output su un file e mantiene nella conversazione solo una breve anteprima e il percorso del file.

Il caso problematico è un output rumoroso ma comunque al di sotto di quella soglia.

Una suite di test che stampa centinaia di righe di test superati può rimanere sotto i 30.000 caratteri. In tal caso, quelle righe possono rimanere nella conversazione e continuare a essere inviate nei turni successivi.

Anthropic raccomanda quindi di mantenere attivamente il contesto di lavoro essenziale.

1. Fare riferimento ai file con @

Se sai di quale file ha bisogno Claude, fai riferimento direttamente a esso.

Invece di chiedere a Claude di individuare un file per nome, usa una menzione @ così il file viene allegato al messaggio fin dall'inizio.

L'immagine mostra l'impatto di tre diversi comandi sui risultati degli strumenti di Claude. Con input "i test stanno fallendo", servono 6 turni di dialogo: prima un risultato grep, poi l'apertura del file, infine la lettura di utils.test.ts; con input "correggi utils.test.ts", serve 1 turno di dialogo: prima un risultato grep, poi la lettura di utils.test.ts; con input "correggi @utils.test.ts", utils.test.ts viene letto direttamente, senza altre operazioni. L'immagine richiama quanto detto sopra sull'evitare ricerche e letture non necessarie, mostrando chiaramente come l'uso del riferimento @ riduca il numero di turni di dialogo ed eviti operazioni extra.

Confronta concettualmente questi prompt:

I test stanno fallendo.

Claude potrebbe dover cercare nel repository, ispezionare più file e raccogliere diversi risultati degli strumenti prima di arrivare al problema effettivo.

Una richiesta più specifica elimina parte di quella esplorazione:

Correggi il test fallito in utils.test.ts.

E un riferimento @ può evitare la chiamata di lettura separata:

Correggi il test fallito in @utils.test.ts.

Il file occupa comunque contesto in entrambi i casi. Il risparmio deriva dall'evitare turni di ricerca e lettura non necessari.

Evita anche di allegare ripetutamente lo stesso file in una conversazione. Una volta che un file è entrato nel contesto, menzionarlo di nuovo può aggiungere un'altra copia.

2. Aggiungere flag silenziosi ai comandi rumorosi

L'output ripetuto dei comandi può dominare silenziosamente una sessione.

Per i comandi che esegui costantemente, inserisci una versione concisa in CLAUDE.md così Claude conosce fin dall'inizio l'invocazione a minor rumore.

Per esempio:

esegui un singolo file di test con npx vitest run <file> --reporter=dot

Un reporter a punti può restituire solo un risultato compatto invece di centinaia di righe di output dettagliato.

È una piccola modifica di configurazione, ma su molti turni può far risparmiare una grande quantità di contesto ripetuto.

3. Isolare il lavoro ad alto output in un subagent

Un subagent ha la propria finestra di contesto.

Ha il proprio prompt di sistema, i propri strumenti e CLAUDE.md, ma non eredita l'intera conversazione principale. Può ispezionare i log, eseguire comandi, cercare nella cronologia o leggere un file di grandi dimensioni e poi restituire solo la risposta alla sessione principale.

Questo è utile per attività come:

  • "Analizza questo log di build e dimmi cosa c'è che non va."

  • "Cerca in questo file di grandi dimensioni e riporta la sezione pertinente."

  • "Esegui l'intera suite di test e restituisci gli errori importanti."

  • "Ispeziona la cronologia di Git e riassumi la modifica che ha introdotto questo comportamento."

Le letture dei file intermedi e l'output dei comandi scompaiono quando il subagente termina. Solo la risposta restituita entra nella sessione principale.

C'è un compromesso: poiché il subagente non eredita la conversazione del genitore, potrebbe dover rileggere materiale che la sessione principale già conosce. Per piccoli compiti, questo sovraccarico può rendere un subagente meno efficiente. Vale la pena quando il compito isolato è abbastanza rumoroso da non volere che il suo processo rimanga nel contesto principale.

4. Usa /clear Quando il Compito Cambia

Questa è una delle abitudini più semplici e preziose.

Una volta terminata la correzione di un bug e iniziato un compito diverso, esegui:

/clear

Le letture di file, l'output dei comandi, gli approcci falliti e il contesto temporaneo del compito precedente non devono più seguire ogni turno successivo.

Il confronto di Anthropic mostra che mantenere tre compiti separati in un'unica sessione continua può inviare sostanzialmente più token che pulire tra i compiti.

Se devi conservare la vecchia sessione per dopo, Anthropic consiglia di usare /rename prima di /clear.

Se stai ancora lavorando sullo stesso compito e hai solo bisogno di comprimere la parte più vecchia della conversazione, /compact è lo strumento migliore.

Usa /rewind Quando Solo gli Ultimi Turni Sono Andati Male

C'è un'altra opzione utile che è facile trascurare:

/rewind

Se la sessione è andata fuori strada solo negli ultimi turni, riavvolgere può rimuovere quei turni senza riscrivere l'intera conversazione precedente.

Questo è importante per la memorizzazione nella cache. Anthropic dice che la parte prima del punto di riavvolgimento può rimanere in cache, mentre /compact riscrive la conversazione e quindi ha un costo proprio.

Quindi i tre comandi servono a scopi diversi:

Comando Miglior Uso
/clear Stai iniziando un compito genuinamente nuovo
/compact Stai continuando lo stesso compito ma hai bisogno di un contesto più breve
/rewind Solo gli ultimi turni sono sbagliati o non più utili

Gestire i Token Sta Diventando una Competenza da Sviluppatore

Una volta chiari questi meccanismi, emerge uno schema più ampio.

La codifica assistita dall'IA efficiente richiede ora un nuovo tipo di giudizio operativo. Gli sviluppatori devono sapere non solo come scrivere e fare debug del codice, ma anche:

  • Quale modello è appropriato per il compito
  • Quanto sforzo di ragionamento è giustificato
  • Cosa appartiene al contesto attivo
  • Quando una sessione deve essere pulita o compattata
  • Quali compiti dovrebbero essere spostati ai subagenti
  • Quali comandi producono output non necessario
  • Quali modifiche invalideranno una cache di prompt

Un anno fa, queste decisioni esistevano a malapena nello sviluppo software quotidiano. Ora possono determinare se due sviluppatori pagano importi molto diversi per completare essenzialmente lo stesso lavoro.

Anthropic stesso illustra quanto questo sia importante su larga scala.

L'azienda ha riportato nel 2026 che più dell'80% del codice integrato nel codebase di Anthropic è stato scritto da Claude, e che l'ingegnere tipico

stava unendo circa 8 volte più codice al giorno rispetto al 2024. In un benchmark di ottimizzazione interno separato, un sistema basato su Claude è passato da un miglioramento di circa 3× nel 2025 a circa 52× entro aprile 2026.

A quel livello di utilizzo dell'IA, l'efficienza dell'inferenza non è un piccolo dettaglio contabile.

La lezione più profonda della guida di Anthropic non è quindi semplicemente "spendere meno token". È capire dove vanno i token e assicurarsi che vengano spesi in ragionamenti utili, modifiche al codice e lavoro con gli strumenti, piuttosto che in cronologie stantie e output evitabili.

Domande frequenti

Perché Claude Code diventa più costoso durante sessioni lunghe?

Ogni nuovo turno porta con sé la cronologia della conversazione pertinente, inclusi messaggi, file, chiamate agli strumenti e output dei comandi. La cache del prompt rende i prefissi ripetuti molto più economici, ma il contesto in crescita consuma comunque token e capacità della finestra di contesto.

Quanto può far risparmiare la cache del prompt di Claude?

Un hit della cache del prompt viene fatturato a 0,1× il prezzo normale dei token di input di base, ovvero una riduzione del 90% per quella porzione di input memorizzato nella cache. Le scritture in cache costano più dell'input normale, ma le letture ripetute della cache possono rapidamente compensare il costo iniziale di scrittura.

Dovrei usare /clear o /compact in Claude Code?

Usa /clear quando passi a un'attività diversa e non ti serve più il contesto corrente. Usa /compact quando resti sulla stessa attività ma vuoi che Claude riassuma la cronologia della conversazione più vecchia in un contesto di lavoro più ridotto.

Cosa fa /rewind in Claude Code?

/rewind ti permette di tornare a un messaggio precedente e rimuovere i turni successivi dal contesto attivo. È utile quando solo l'ultima parte di una conversazione ha preso una direzione sbagliata e non hai bisogno di compattare o cancellare l'intera sessione.

Cambiare il modello Claude aumenta il costo dei token?

Può succedere. Ogni modello utilizza una cache del prompt separata, quindi cambiare modello nel mezzo di una lunga conversazione può forzare l'elaborazione della cronologia esistente al prezzo di input completo per il nuovo modello.

Perché dovrei usare @ quando faccio riferimento a un file?

Un riferimento a file con @ collega il file direttamente al messaggio, evitando a Claude di cercare il file o di effettuare una chiamata Read aggiuntiva. Il contenuto del file consuma comunque contesto, quindi il vantaggio è evitare passaggi di scoperta non necessari piuttosto che rendere il file stesso gratuito.

Quando dovrei usare un subagente di Claude Code?

Usa un subagente per lavori che producono molto output intermedio che non ti serve nella conversazione principale, come l'ispezione dei log o l'esecuzione di una ricerca ampia. Il subagente lavora in un contesto separato e invia solo la risposta finale alla sessione principale.

Come posso verificare cosa sta già consumando contesto?

Esegui /context in una nuova sessione di Claude Code. Anthropic consiglia di usarlo per ispezionare il contesto di avvio come CLAUDE.md e le definizioni degli strumenti MCP, così puoi rimuovere istruzioni o integrazioni che non ti servono.

Strumenti correlati

  • Claude Code: lo strumento di codifica agentica di Anthropic per lavorare con codebase da terminale, IDE, web e altri ambienti supportati.
  • Claude: l'interfaccia principale dell'assistente di Anthropic e punto di ingresso dell'account.

punto per i piani Claude che includono Claude Code.

  • Claude Agent SDK: L'SDK espone lo stesso ciclo agente, gli stessi strumenti e le stesse fondamenta di gestione del contesto utilizzati da Claude Code.
  • Vitest: Un framework di testing JavaScript utilizzato nell'esempio di Anthropic per ridurre l'output di test rumoroso con --reporter=dot.

Link Correlati

Riepilogo

I costi di Claude Code sono influenzati da più del semplice prezzo del modello. La lunghezza del contesto, lo sforzo di ragionamento, l'output dei comandi, la durata della sessione, i hit della cache, l'individuazione dei file e l'uso dei subagenti possono tutti modificare quanti token consuma un'attività.

Le abitudini di maggior valore sono semplici: pulisci il contesto quando cambia l'attività, evita inutili cambi di modello o di sforzo a metà sessione, mantieni breve l'output rumoroso, fai riferimento direttamente ai file noti, compatta prima di una lunga pausa e isola il lavoro ad alto output quando un subagente è più appropriato.

Queste pratiche non mirano a minimizzare l'uso dei token a tutti i costi. Mirano a garantire che i token per cui paghi contribuiscano all'attività anziché trasportare ripetutamente una storia irrilevante.

L'uso efficiente di Claude Code è sempre più una forma di ingegneria del contesto: mantieni il contesto pertinente, preserva la cache quando aiuta e investi il ragionamento dove migliora davvero il risultato.