Claude 記憶功能要額外付費嗎?
Anthropic 沒有公布 memory token 價格。記憶內容重送時會算入 input tokens,費用取決於重送量,以及是否由 prompt caching 提供。
Claude 的記憶功能需要額外付費嗎?
Claude 的記憶功能本身不會產生額外費用。Anthropic 公布的費率是按每百萬個輸入 token 和每百萬個輸出 token 計費,另有 prompt caching 的費率;其中沒有任何一項稱為 memory token。Claude API(application programming interface)不會對儲存記憶本身收費,因為 memory tool 在用戶端執行,檔案則儲存在您擁有的儲存空間中。
記憶仍會影響帳單,因為已記住的資訊只有在放入 Claude 讀取的請求中時,才會影響回答。使用記憶代表要重新傳送內容。這些文字會計入輸入 token,並依模型的一般輸入費率計費。費用取決於 2 個數值:每次對話重新傳送多少已記住的文字,以及這些重新傳送的文字是否能由 prompt cache 提供。
使用 Pro 或 Max 訂閱時,完全不會按 token 計費,因此記憶消耗的是使用額度,而不是金額。下方的機制相同,只有計量單位不同。使用額度有限,因此在決定每次對話應攜帶多少記憶前,值得先了解 Claude Pro 的費用,以及何時會受到使用限制。Claude Enterprise 的計費方式又不同,因為 它會在席位價格之外,依 API 費率計算每個 token;因此,過大的記憶區塊會再次轉化為費用,而不是消耗額度。如果精簡記憶後,使用量能穩定低於較低方案的上限,下一步就值得考慮 從 Max 降級至 Pro;變更會在您已付款的期間結束時生效。如果您實際比較的是不同供應商,而不是 Anthropic 自家的方案,請先查看 目前價格下 Claude 方案與 ChatGPT 的比較。
每個 Claude 介面中的「記憶」代表什麼
3 個不同的產品共用「記憶」一詞。混淆這些產品,是這個問題讓人感到困惑的主要原因。
Claude API 上的 memory tool。 您在 tools 陣列中加入一筆項目,並在自己的程式碼中實作檔案操作。
{"type": "memory_20250818", "name": "memory"}截至 2026 年 8 月,此工具已在 Messages API 上正式提供,無須 beta header,適用於 Claude 4 和後續模型。它是在用戶端執行:Claude 要求執行 view /memories 等操作,您的 handler 會對您管理的儲存空間執行該操作,然後在 tool_result 區塊中回傳結果。Anthropic 不會保存該檔案,因此不會產生需要轉嫁的儲存費用。您支付的是這次往返請求的費用。工具定義會隨每次請求傳送,而回傳的檔案內容從該次開始會保留在對話中。
Anthropic 會公布這項額外負載中的固定部分。以 Claude Opus 5 搭配 auto 工具選擇時,工具使用的 system prompt 為 286 tokens,這是 2026 年 8 月的文件所載內容。只要請求中存在任何工具,不論是 memory 或其他工具,每次請求都會支付這項費用。
Claude Code。 每次工作階段開始時,會載入 2 種機制。CLAUDE.md 檔案存放您撰寫的指示。Auto memory 會在 ~/.claude/projects/<project>/memory/ 下存放 Claude 自行撰寫的備註。MEMORY.md 只會載入前 200 行或 25KB 的內容,以先達到的限制為準;旁邊的主題檔案則會在需要時讀取,不會在啟動時載入。啟動時載入的所有內容,都會成為該工作階段後續每次請求所攜帶的 prefix 一部分。Claude Code 如何在工作階段之間回想記憶 會逐一說明檔案的載入順序。
網頁版 Claude。 在 claude.ai 上,memory 是 Claude 在您聊天時撰寫並更新的一組項目,每個 project 都有獨立的 memory 空間。Settings > Memory 會列出已儲存的內容,其中的切換選項可用來 Pause memory 或 Reset memory。此介面的費用按訂閱計算,因此 memory 會消耗使用量上限。
為什麼記憶文字會以輸入 token 計費
Messages API 不具備狀態。它不會保留呼叫之間的任何內容,因此用戶端必須在每個回合傳送完整對話,模型也會再次讀取全部內容。記憶不例外。它只是同一個請求中的另一段文字。
在任何回應的 usage 物件中,都可以看到這項拆分。
"usage": {
"input_tokens": 412,
"cache_creation_input_tokens": 0,
"cache_read_input_tokens": 18240,
"output_tokens": 236
}input_tokens只計算既未從快取讀取、也未用來建立快取的 token。實務上,這表示快取最後一個中斷點之後的 token。該請求的輸入總量為 cache_read_input_tokens 加上 cache_creation_input_tokens 和 input_tokens。Claude 在 3 個回合前開啟的記憶檔案,自此之後的每個回合都會計入該總量。快取前綴有效時,它會歸入 cache_read_input_tokens;快取前綴無效時,則會歸入 input_tokens。相同的文字可能產生兩種截然不同的價格。輸入 token 與輸出 token 的價格不同,而記憶永遠只會歸入輸入端。
查看自己使用量中的這些數字
不要引用部落格文章中的數字,包括本文。請測量自己的記憶區塊。Token 計數免費,且有獨立的速率限制,因此測量不會產生費用。
curl https://api.anthropic.com/v1/messages/count_tokens \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "content-type: application/json" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-5",
"system": "You are a scientist",
"messages": [{"role": "user", "content": "Hello, Claude"}]
}'回應會是一個數字,例如 { "input_tokens": 14 }。將記憶文字貼到 system 欄位中執行一次,再不貼上記憶文字執行一次。兩者的差值就是該記憶內容在每次互動中產生的成本。請注意兩點。這個計數是估算值,Anthropic 為自身系統最佳化額外加入的 token 不會向你收費。此外,請以實際要執行的模型計算,因為 Claude 4.7 及後續版本使用較新的 tokenizer,對相同文字產生的 token 數量約多 30 percent。
在 Claude Code 中,不需要使用任何 curl,也能得到相同答案。
/context會顯示目前已載入的內容,包括記憶檔案,因此你可以在輸入任何內容前查看它們占用視窗的比例。/memory會列出你的 CLAUDE.md 檔案,並開啟自動記憶資料夾。/usage會列印工作階段總量,其中包括 cache reads 和 cache writes。- 狀態列可以持續顯示內容視窗使用量,因此能在使用量增加時即時查看。
/usage 工作階段區塊如下:
Total cost: $0.55
Total duration (API): 6m 20s
Total duration (wall): 6h 33m 10s
Total code changes: 0 lines added, 0 lines removed
Usage by model:
claude-sonnet-4-6: 1.2k input, 5.3k output, 940.0k cache read, 50.0k cache write ($0.55)請仔細查看最後一行。940.0k cache read 數字代表每次互動都會以快取費率再次傳送整段對話內容,包括記憶內容。1.2k input 數字只代表這次新增的部分。Claude Code 會根據牌價在本機計算該金額,因此不會套用你取得的任何折扣,結果也可能與帳單不同。Claude Console 中的 Usage 頁面才是權威數字。
接著直接進行比較。在兩個全新的工作階段中提出相同的開場問題,一個使用正常設定,另一個關閉自動記憶。
CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 claude在每個工作階段中執行 /context,並比較 memory files 項目。差值就是累積記憶在每個工作階段開始時產生的成本,甚至早於任何工作開始之前。接著閱讀 Claude Code token 使用量的完整分解,搭配這兩個數字理解會更清楚。
每百萬 tokens 重播記憶體的成本是多少?
Prompt caching 是相同記憶體區塊在不同回合可能產生 10 倍成本差異的原因。Anthropic 以各模型基本輸入價格的倍數發布快取費率,因此即使美元價格變動,這項關係仍然成立。
The data behind this chart
[
{
"label": "Base input",
"price_multiple": 1
},
{
"label": "5 minute cache write",
"price_multiple": 1.25
},
{
"label": "1 hour cache write",
"price_multiple": 2
},
{
"label": "Cache read",
"price_multiple": 0.1
}
]讀取快取的成本是基本輸入價格的 0.1 倍。寫入有效期限為 5 分鐘的項目,成本是基本價格的 1.25 倍;有效期限為 1 小時的項目,成本是基本價格的 2 倍。Anthropic 明確說明損益平衡點:5 分鐘有效期限在讀取快取 1 次後開始划算,1 小時有效期限則要讀取快取 2 次後才開始划算。Prompt caching 的損益平衡點是在決定記憶體應放在哪裡之前,應先進行的計算。
這些倍數可將重播次數轉換成算式。下一個區塊是根據上述已發布倍數進行的算術計算,不是任何實際執行中工作負載的測量結果。它以 3 種方式計算記憶體區塊在 100 回合工作階段中的成本,並以按照一般基本輸入費率計費的等效 tokens 數表示。
The data behind this chart
[
{
"label": "4,000 tokens, never cached",
"base_rate_equivalent_tokens": "400,000"
},
{
"label": "4,000 tokens, 1 write and 99 reads",
"base_rate_equivalent_tokens": "44,600"
},
{
"label": "1,000 tokens, 1 write and 99 reads",
"base_rate_equivalent_tokens": "11,150"
}
]一個 4,000 tokens 的記憶體區塊若在 100 個回合中都未命中快取,計費量相當於 400,000 個基本費率 tokens。同一區塊若經過 1 次 5 分鐘快取寫入,並有 99 次快取讀取,計費量相當於 44,600。若將區塊縮減為原本的四分之一並保留快取,計費量相當於 11,150。這 3 列中的功能都沒有變化。改變的只有重播行為。這些數值仍是 tokens 數,而不是金額;將 tokens 數換算成每月帳單上的金額只需要再乘上模型的每百萬 tokens 費率。該費率取決於所使用的模型,因此如果 agent 將執行於 Claude Fable 5,應從該模型已發布的每百萬 tokens 費率與適用工作負載開始。如果目前仍在選擇 provider,而不只是選擇模型,比較在 Claude API 與 ChatGPT 上執行相同工作所需的成本可顯示這項乘法如何產生不同結果;而記憶體使用量高的 agent 尤其依賴輸入端的費率。
第二列假設後續 99 個請求抵達時,快取項目都仍在有效期限內。這項假設正是多數實際帳單出現偏差的原因。
為什麼中斷一段時間後,相同問題的費用會變高?
快取項目有使用期限,計時會從寫入或讀取該項目的請求開始。預設期限為 5 分鐘。1 小時選項的費用,是上述寫入費用的 2 倍。在 Claude Code 中,訂閱方案的使用期限為 1 小時;開始使用用量點數後,期限會降為 5 分鐘。使用 API key 或雲端服務供應商時,預設期限為 5 分鐘。設定 ENABLE_PROMPT_CACHING_1H=1 後,使用用量點數時仍可維持 1 小時的使用期限。
因此,您在午餐時間前開啟的工作階段中輸入一行問題,之後才回來查看,費用會較高,原因是您離開期間快取項目已過期。包括記憶內容在內的整個前綴,會再次依基本輸入費率處理,並重新寫入快取。暫停的時間長度決定了這項費用。
您可以自行確認,不必只相信上述說明。在 Pro、Max、Team 或 Enterprise 方案中,/usage 分析會標示近期用量中占 10% 以上的行為,長上下文與快取未命中也會以名稱列出。在 API 中,請觀察 cache_creation_input_tokens;安靜一段時間後的第一個請求,該數值會跳回前綴的完整大小。
什麼會悄悄使快取失效
快取的前綴具有固定順序:先是 tools,再來是 system,最後是 messages。某一層發生變更時,該層及其後的所有內容都會失效。編輯 tool 定義會丟棄整個快取。編輯 system prompt 則會丟棄 system 與 message 快取。
這是把記憶內容放在 system prompt 中,並隨著 agent 學習而重寫內容時最容易踩到的陷阱。每次重寫都會丟棄其後所有內容的快取副本,因此下一個請求必須再次完整寫入。請將穩定內容放在前面並保持不變,讓易變內容位於 message 清單後段。如此一來,即使內容失效,成本也較低。
另一個問題更不容易察覺。每個 model 都有可快取前綴的最低長度:Claude Opus 5 為 512 tokens、Claude Sonnet 5 為 1,024 tokens、Claude Haiku 4.5 為 4,096 tokens;這些數值於 August 2026 公布。Anthropic 的文件明確說明,低於此長度時會發生以下情況:「任何要求快取少於此 token 數量的請求,都會在未使用快取的情況下處理,且不會回傳錯誤。」因此,標記了 cache_control 的小型 memory 檔案完全不會生效,而且不會顯示任何訊息。你能觀察到的現象是,即使 prompt 明確包含 breakpoint,cache_creation_input_tokens 仍維持 0。
淘汰不再有用的記憶
記憶中的每一行都會在包含該記憶的每次回應中消耗 tokens,因此每一行都應檢視最近是否實際改變過回答。Claude Code 將限制具體化。建議將 CLAUDE.md 控制在 200 行以下,因為檔案越長,消耗的 context 越多,Claude 遵循其中指示的可靠度也越低。MEMORY.md 載入時最多讀取前 200 行或 25KB,超過限制的內容會在下一次工作階段啟動時捨棄,因此過大的索引只是在消耗 tokens,卻沒有提供任何教學作用。
兩個習慣有助於維持精簡。將詳細內容從索引移至主題檔案,讓 Claude 在需要時讀取,而不是在啟動時載入。將工作流程指示從 CLAUDE.md 移至 skills,只有在呼叫時才載入。對於已經以 frontmatter 開頭的記憶檔案,Claude Code 會在 version 2.1.214 或更新版本中,將寫入時間記錄在 modified 欄位,格式為 ISO 8601 timestamp;這個 timestamp 是找出過時資訊最快的方法。淘汰過時的 agent 記憶會更深入說明檢視流程。
何時該使用記憶體工具,而不是將所有內容載入上下文
記憶體工具是為即時擷取資訊而設計的。代理程式不必預先載入所有內容,而是記錄已取得的資訊,並在任務需要時才讀回檔案。這會改變成本計算方式,因為讀取檔案只需支付一次 token 成本,之後會保留在快取前綴中;永久載入的區塊則會在每一輪都產生成本。
根據上方的兩張圖表,可以得到一項簡單規則。幾乎每一輪都會使用的文字,應放在穩定的快取前綴中。每 20 輪才使用一次的文字,應放在 view 呼叫後方。損益平衡點會隨重播次數變動,而不是隨 Anthropic 的計費方式變動。
在 API 中,也可以讓平台裁剪對話內容。當對話超過你設定的門檻時,上下文編輯會清除較早的工具結果。
{
"edits": [
{
"type": "clear_tool_uses_20250919",
"trigger": {"type": "input_tokens", "value": 30000},
"keep": {"type": "tool_uses", "value": 3},
"clear_at_least": {"type": "input_tokens", "value": 5000}
}
]
}預設值為 100,000 個輸入 token,並保留 3 次工具使用結果。啟用前,請先了解它與快取的互動方式:清除內容會使清除位置的快取前綴失效,因此下一個請求會產生快取寫入成本。clear_at_least 的用途就是處理這種情況。它會延後清除,直到節省的成本足以抵銷寫入成本。回應會在 context_management 中精確回報實際結果,並提供 cleared_tool_uses 與 cleared_input_tokens,因此可以量化這項取捨,而不只是停留在理論上。管理 Claude Code 中的上下文視窗也將相同概念套用到程式碼工作階段。
哪些功能會另行計費
Memory 本身不會單獨收費,但有些功能確實會產生額外費用,值得先了解。以下是截至 August 2026 公布的 Claude API 價格。有些操作完全免費,但 Claude API 沒有免費方案,註冊時只有少量額度,因此以下費用都會從第一次請求開始實際產生。
- Web search:每 1,000 次搜尋收費 $10,此外還要支付搜尋結果加入內容後所產生的一般 token 費用。
- Code execution:每個組織每月免費 1,550 小時,之後每個 container 每小時 $0.05。與 web search 或 web fetch 搭配使用時免費。
- Claude Managed Agents:session runtime 每個 session-hour 收費 $0.08,另加一般 token 費用。
- Web fetch:不另行收費,只需支付擷取內容的 token 費用。
Memory 不在上述任何一項中。它會計入 input token 數量,這正是你可以測量的地方,也是 pruning 與 caching 能降低成本的地方。如果你要為一個在 virtual private server (VPS) 上無人值守執行的 agent 編列預算,下一步應先設定 VPS 上 AI agent 的成本控制,因為 memory 檔案持續增長卻沒有 pruning 的 agent,每週都會變得更昂貴,而且不會有任何機制回報這項支出。
FAQ
Claude 的記憶功能是否需另外付費?
不需要。Anthropic 的價目表按每百萬個輸入 token、每百萬個輸出 token 及 prompt caching 倍率計費,沒有另外列出記憶功能費用。在 Claude API 中,記憶工具由用戶端處理,因此檔案儲存在您原本就需付費的儲存空間中。記憶功能增加的是輸入 token;每次請求包含這些 token 時,會依模型的一般輸入費率計費。
關閉記憶功能會讓 Claude 變便宜嗎?
這會降低每次請求的 token 數量,因而降低單次請求的費用。但整體是否省錢,取決於接下來的處理方式。如果 Claude 必須重新讀取 3 個檔案,並向您提出 2 個問題,才能重建記憶中已有的內容,這些 token 的費用可能高於保留記憶的費用。請實際測量,不要猜測:在自動記憶功能開啟的工作階段中執行 /context,再於以 CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 啟動的工作階段中執行,然後比較完成相同工作所花費的總 token 數。
為什麼我沒有變更任何設定,使用量卻增加了?
最常見的原因是暫停後發生快取未命中。快取項目預設保留 5 分鐘;使用延長設定時則保留 1 小時。因此,中斷後的第一個請求會以基本輸入費率重新處理整個前綴,並再次寫入快取。第二常見的原因是前綴遭到編輯:變更工具定義會使整個快取失效,變更 system prompt 則會使系統快取與訊息快取失效。使用訂閱方案時,若某項行為占近期使用量的 10% 以上,/usage 明細會標示該行為。
記憶內容應放在 system prompt 中,還是透過工具呼叫取得?
如果幾乎每個回合都會使用記憶內容,請將其放在 system prompt 中,因為它會位於快取的前綴中,並依快取讀取費率計費。如果只有部分工作需要記憶內容,請透過 view 呼叫取得,因為只讀取一次的檔案只會計入一次 token,而不會在每個回合重複計入。決定性數字是重播次數,而 usage 物件會直接提供這個數字。
記憶功能是否會計入訂閱方案的使用量限制?
會,這是間接影響,因為訂閱方案的使用量限制會依每次請求所包含的 token 數量消耗。Anthropic 的說明文件指出,觸發自動內容管理的較長對話會消耗更多使用量限制。記憶功能會使每次請求稍微變長,而長工作階段會在每個回合重複傳送這段內容。Claude 的使用量限制實際運作方式說明使用量限制何時重設。