Token ใน Claude คืออะไร และทำไมค่าใช้จ่ายถึงสูง
ทำความเข้าใจหน่วย Token ใน Claude ที่ 1 token เท่ากับ 3.5 ตัวอักษร พร้อมสาเหตุที่ Claude Code อาจใช้ถึง 80,000 tokens และทำไมค่าใช้จ่ายถึงเพิ่มขึ้น 5 เท่า
Token ใน Claude คืออะไร?
Token คือหน่วยของข้อความที่ Claude ใช้ในการอ่านและเขียน โดยหนึ่ง token จะมีค่าประมาณ 3.5 ตัวอักษรภาษาอังกฤษ ข้อมูลนี้อ้างอิงจากพจนานุกรมคำศัพท์ของ Anthropic เมื่อนับรวมช่องว่างและเครื่องหมายวรรคตอนแล้ว จำนวน token จะมากกว่าจำนวนคำอย่างมาก ดังนั้นข้อความจำนวน 1,000 คำ จะมีค่ามากกว่า 1,300 tokens สำหรับการเขียนโปรแกรม (Code) จะใช้จำนวน token ต่อบรรทัดสูงกว่า เนื่องจากเครื่องหมายปีกกา, ตัวดำเนินการ, เครื่องหมาย underscore และการย่อหน้า จะถูกแบ่งเป็นจำนวน token ต่อตัวอักษรมากกว่าภาษาอังกฤษ ไฟล์ต้นฉบับ (Source file) ขนาดไม่กี่ร้อยบรรทัดมักจะมีค่าหลายพัน tokens หาก agent ตัดสินใจอ่านไฟล์ขนาด 2,000 บรรทัด จะต้องเสียค่าใช้จ่าย token หลักหมื่นก่อนที่จะมีการเขียน code ใหม่แม้แต่บรรทัดเดียว
มีสองประเด็นเกี่ยวกับ tokenizer ที่มักสร้างความสับสน ประการแรกคือ tokenizer นั้นขึ้นอยู่กับแต่ละ model โดยเฉพาะ ตั้งแต่เดือน July 2026 เป็นต้นไป Opus 4.7 และรุ่นที่ใหม่กว่า, Sonnet 5 และ Fable 5 ใช้ tokenizer รุ่นใหม่ ซึ่งสร้างจำนวน token สำหรับข้อความชุดเดิมมากกว่า model รุ่นก่อนหน้าประมาณ 30% (จำนวนที่เพิ่มขึ้นขึ้นอยู่กับเนื้อหา) สิ่งนี้ส่งผลต่อการคำนวณจำนวน token ที่ต้องใช้ แม้ว่าราคาต่อ token จะไม่ได้เพิ่มขึ้นตามก็ตาม ประการที่สองคือ tiktoken ซึ่งเป็น library ที่บทความส่วนใหญ่นิยมใช้ คือ tokenizer ของ OpenAI ซึ่งจะนับจำนวน token ของ Claude ต่ำกว่าความเป็นจริงประมาณ 15–20% สำหรับข้อความทั่วไป และต่ำกว่านั้นเมื่อเป็น code วิธีการนับที่เชื่อถือได้มีเพียงการใช้ endpoint count_tokens ซึ่งจะอธิบายในหัวข้อถัดไป
ทำไมค่าใช้จ่ายในการเขียนโปรแกรมของคุณจึงเป็นเช่นนั้น
ค่าใช้จ่ายของ Claude ทุกรูปแบบ ไม่ว่าจะเป็นใบแจ้งหนี้ API หรือขีดจำกัดการใช้งานแบบสมัครสมาชิก ล้วนขึ้นอยู่กับตัววัดค่าเพียงอย่างเดียว คือจำนวน token ที่ส่งเข้า (input) และ token ที่ส่งออก (output) หน้าเว็บแสดงราคาดูเหมือนจะเข้าใจง่าย โดยระบุราคาต่อหนึ่งล้าน input tokens และ output tokens แต่สิ่งที่ไม่ได้บอกคือ ในการเขียนโปรแกรมแบบ agentic session ฝั่ง input จะมีการใช้งานสูงกว่าที่คาดการณ์ไว้มาก เนื่องจากข้อมูลการสนทนาทั้งหมดจะถูกส่งซ้ำใหม่ในทุกรอบการทำงาน ผมขายโครงสร้างพื้นฐานแบบคิดตามการใช้งานมา 15 ปี และ token เป็นตัววัดค่าแรกที่ลูกค้าส่วนใหญ่ไม่สามารถระบุได้ว่าสาเหตุที่ค่าใช้จ่ายสูงขึ้นคืออะไร บทเรียนเรื่องการอ่านค่าตัววัดนี้ประกอบด้วย: สิ่งใดที่นับเป็น input และ output ใน agentic session, ทำไมวงจรการส่งข้อมูลซ้ำจึงมีราคาแพง, ทำไม prompt caching จึงเปลี่ยนวิธีการคำนวณ และปัจจัยใดที่ส่งผลต่อตัวเลขค่าใช้จ่ายอย่างแท้จริง
ทุกอย่างคือ input: สิ่งที่ตัววัดผลนับจริง
ผู้ใช้มักเข้าใจผิดว่าค่าใช้จ่ายคือสิ่งที่ Claude เขียนขึ้นมา แต่ใน session แบบ agentic ค่าใช้จ่ายส่วนนั้นเป็นเพียงส่วนน้อยเท่านั้น input tokens ซึ่งมีอัตราค่าบริการที่ถูกกว่าแต่มีปริมาณสูงกว่ามาก ประกอบด้วย:
- The system prompt. คำสั่งพื้นฐานของ Claude Code รวมถึงไฟล์
CLAUDE.mdและ memory ของคุณ ซึ่งจะถูกโหลดเมื่อเริ่ม session และถูกส่งไปพร้อมกับทุก request หลังจากนั้น - Tool definitions. schema ของทุก tool ที่ agent สามารถเรียกใช้งานได้ การเชื่อมต่อ MCP server จะเพิ่มค่าใช้จ่ายคงที่นี้ แม้ว่าปัจจุบัน Claude Code จะยังไม่ส่ง tool definitions ทั้งหมดของ MCP โดยค่าเริ่มต้น (จะส่งเฉพาะชื่อ tool เข้าไปใน context จนกว่าจะมีการเรียกใช้งานครั้งแรก) ซึ่งช่วยลดค่าใช้จ่ายลงแต่ไม่ได้ทำให้หมดไป
- ทุกไฟล์ที่ agent อ่าน. การใช้
Readกับ source file จะทำให้เนื้อหาทั้งหมดถูกส่งเข้าไปใน context และจะคงอยู่ในนั้น - ผลลัพธ์จากทุก tool. ผลการรัน test, output จาก grep, ข้อความจาก terminal และ build logs ทั้งหมดจะถูกส่งกลับมาในรูปแบบ input tokens หาก test suite ที่ล้มเหลวพิมพ์ข้อมูลออกมา 8,000 บรรทัด จะทำให้คุณเสียค่าใช้จ่ายเทียบเท่ากับหนังสือเล่มเล็กๆ หนึ่งเล่ม
- บทสนทนาทั้งหมดที่ผ่านมา ซึ่งจะถูกส่งซ้ำในทุกๆ turn. หัวข้อนี้มีความสำคัญเป็นพิเศษ
สาเหตุที่ค่าใช้จ่ายเพิ่มขึ้นอย่างรวดเร็ว
Claude API ทำงานแบบ stateless ซึ่งหมายความว่าระบบจะไม่จดจำ session ระหว่างการส่ง request ดังนั้นใน turn ที่ 2 client จะต้องส่งข้อมูลของ turn ที่ 1 พร้อมกับ response และข้อความใหม่ของคุณ เมื่อถึง turn ที่ 50 ระบบจะต้องส่งข้อมูลตั้งแต่ turn ที่ 1 ถึง 49 ทั้งหมด ไม่ว่าจะเป็นไฟล์ที่อ่าน ผลลัพธ์จาก tool หรือ diff ต่างๆ พร้อมกับ turn ที่ 50 โมเดลจะต้องอ่าน transcript ทั้งหมดใหม่ทุกครั้ง และ token ทุกตัวที่ถูกอ่านซ้ำจะถูกคิดค่าบริการเป็น input ทั้งหมด
ผลที่ตามมาคือ ค่าใช้จ่ายต่อ turn จะเพิ่มขึ้นแบบ linear ตามความยาวของ session และค่าใช้จ่ายรวมของ session จะเพิ่มขึ้นแบบ quadratic ข้อความที่เคยมีค่าใช้จ่ายเพียง 0.5 cent ใน turn ที่ 3 อาจมีค่าใช้จ่ายสูงขึ้นถึง 20 เท่าใน turn ที่ 60 แม้จะเป็นคำถามบรรทัดเดียวเหมือนเดิม เนื่องจากต้องแบกรับข้อมูลจาก 60 turn ที่ผ่านมา นี่คือสาเหตุหลักที่อธิบายว่าทำไมค่าใช้จ่ายถึงสูงเกินจริง ซึ่งไม่ใช่ความผิดปกติของ Claude แต่เป็นลักษณะปกติของผลิตภัณฑ์ LLM ทุกตัวที่ให้ความรู้สึกแบบ stateful แต่เบื้องหลังคือ stateless API ที่ทำงานด้วยระบบ resend loop
Output: สิ่งที่แสดงผล และกระบวนการคิดที่ไม่ได้แสดงออกมา
Output tokens มีราคาแพงกว่า input โดยมีอัตราสูงกว่า 5 เท่าในผลิตภัณฑ์ปัจจุบัน ($5/$25 สำหรับ Opus 4.8, $3/$15 สำหรับ Sonnet 5, $1/$5 สำหรับ Haiku 4.5 ณ เดือน July 2026) Output ประกอบด้วยข้อความและ code ที่ Claude สร้างขึ้น และ thinking tokens: ซึ่งคือกระบวนการคิดเชิงตรรกะภายในของ model ก่อนที่จะตอบคำถาม มี 2 ข้อเท็จจริงที่สำคัญในที่นี้ คือ การคิด (Thinking) จะถูกคิดค่าบริการในอัตราเดียวกับ output และนับรวมใน max_tokens — ซึ่งหาก API response สิ้นสุดลงเนื่องจาก stop_reason: "max_tokens" จะส่งผลให้คำตอบถูกตัดตอนเนื่องจากใช้ budget ไปกับการคิดจนหมด และใน model ปัจจุบันอาจไม่มีการแสดงสรุปผลการคิด (reasoning summary) — โดย Opus 4.8, Sonnet 5 และ Fable 5 จะไม่แสดงผลโดยค่าเริ่มต้น — แต่กระบวนการคิดยังคงเกิดขึ้นและยังคงถูกคิดค่าบริการ การไม่แสดงผลไม่ได้แปลว่าไม่มีค่าใช้จ่าย
Claude Code เปิดใช้งานการคิดแบบขยาย (extended thinking) โดยค่าเริ่มต้น เนื่องจากช่วยปรับปรุงการทำงานแบบหลายขั้นตอนได้อย่างชัดเจน และ budget เริ่มต้นสามารถใช้ได้สูงถึงหลายหมื่น tokens ต่อหนึ่ง request สำหรับงานที่ง่ายกว่า คุณสามารถปรับลดลงได้: ลดระดับความพยายาม (effort level) ด้วย /effort หรือใน /model หรือปรับการตั้งค่าการคิดใน /config นี่คือเครื่องมือในการควบคุมต้นทุนที่มีประสิทธิภาพ ไม่ใช่เรื่องของความเชื่อ
Prompt caching ช่วยลดต้นทุนการคำนวณ
Prompt caching คือเหตุผลที่การส่งข้อมูลซ้ำไม่ทำให้ค่าใช้จ่ายสูงเกินไป API สามารถทำ cache สำหรับส่วนต้นของ prompt ที่ไม่มีการเปลี่ยนแปลง เช่น system prompt, tool definitions หรือ conversation history และจะส่งข้อมูลนั้นในการเรียกใช้งานครั้งถัดไปในราคาที่ถูกลงมาก ข้อมูล ณ เดือน July 2026 คือ: การ write ลง cache มีค่าใช้จ่ายเป็น 1.25× ของอัตรา input พื้นฐาน (หรือ 2× สำหรับรุ่น 1-hour variant) และการ read จาก cache มีค่าใช้จ่ายเพียง 0.1× การ write มีราคาสูงกว่า แต่การ read จะได้รับส่วนลดถึง 90% ซึ่งการ read เพียงครั้งเดียวก็สามารถคืนทุนค่า premium ของการ write ที่ใช้เวลา 5 นาทีได้แล้ว
Claude Code จัดการเรื่อง caching ให้โดยอัตโนมัติ และใน session ที่ใช้งานปกติ ข้อมูลส่วนใหญ่ที่ต้องส่งซ้ำจะถูกดึงมาจาก cache อย่างไรก็ตาม ค่าเริ่มต้นของ cache จะมีอายุ five minutes นับจากการใช้งานครั้งล่าสุด หากคุณหยุดพักนานเกินไปแล้วกลับมาส่งข้อความใหม่ cache จะหมดอายุ และ prefix ทั้งหมดที่สะสมไว้จะต้องถูก re-write ใหม่ในราคา 1.25× แทนที่จะเป็นการ read ในราคา 0.1× สำหรับ session ที่มีขนาด 150K-token การเรียกใช้งานแบบ cold turn เพียงครั้งเดียวอาจมีค่าใช้จ่ายสูงกว่าการเรียกใช้งานแบบ warm turn กว่าสิบครั้ง ผลลัพธ์ที่ขัดกับความรู้สึกซึ่งควรทำความเข้าใจคือ: จังหวะการทำงานแบบหยุดพักแล้วค่อยทำต่ออาจมีค่าใช้จ่ายสูงกว่าการทำงานต่อเนื่อง เนื่องจากช่องว่างการหยุดพักที่นานเกิน TTL จะเปลี่ยนการเรียกใช้งานครั้งถัดไปจากการ read ราคาถูกเป็นการ re-write ที่มีราคาสูง ควรทำงานเป็นช่วงๆ และไม่ควรส่งข้อความใน session ขนาดใหญ่ทิ้งช่วงห่างกันทุกๆ ten minutes
หากคุณเรียกใช้งาน API จาก your own application on a VPS คุณจะไม่ได้รับสิทธิประโยชน์เหล่านี้โดยอัตโนมัติ ข้อผิดพลาดที่พบบ่อยคือการใส่ timestamp หรือ request ID ลงใน system prompt ซึ่งจะทำให้ bytes ของ prefix เปลี่ยนไปในทุกการเรียกใช้งาน และส่งผลให้การทำ caching ถูกปิดใช้งานโดยไม่รู้ตัว โดยสามารถสังเกตได้จากค่า usage.cache_read_input_tokens ที่เป็นศูนย์แม้จะเป็นการเรียกใช้งานที่ดูเหมือนกันทุกประการ
สูตรคำนวณ พร้อมตัวอย่างการคำนวณ
อย่าเชื่อข้อมูลที่ระบุราคาคงที่ว่า "หนึ่ง session มีค่าใช้จ่าย $X" เนื่องจากราคาต่อ session แตกต่างกันได้ถึงสองหลัก (two orders of magnitude) สิ่งที่ใช้ได้จริงคือสูตรนี้:
turn cost = (uncached input x base input price)
+ (cache writes x 1.25 x base input price)
+ (cache reads x 0.10 x base input price)
+ (output incl. thinking x output price)
session cost = sum over all turnsตัวอย่างการคำนวณบน Claude Opus 4.8 ซึ่ง ณ เดือน July 2026 มีราคา input อยู่ที่ $5 ต่อหนึ่งล้าน tokens และ output อยู่ที่ $25 ต่อหนึ่งล้าน tokens ตัวอย่างคือการทำงานหนึ่งรอบ (turn) กลาง session ที่มี context สะสม 80,000 tokens: โดยอ่านจาก cache 75,000 tokens, เขียนลง cache ใหม่ 3,000 tokens, input ใหม่ที่ไม่ได้อยู่ใน cache 2,000 tokens และ output 1,500 tokens (รวม thinking tokens)
- Cache reads: 75,000 × $0.50/M = $0.0375
- Cache writes: 3,000 × $6.25/M = $0.019
- Uncached input: 2,000 × $5/M = $0.010
- Output: 1,500 × $25/M = $0.0375
ค่าใช้จ่ายประมาณ $0.10 ต่อหนึ่ง turn หากทำงานแบบเดียวกัน 50 turns จะอยู่ที่ประมาณ $5 หากพิจารณาการทำงานรอบเดิมหลังจาก cache หมดอายุ: การเขียน 80,000 tokens ใหม่ทั้งหมดที่ราคา $6.25/M จะมีค่าใช้จ่าย $0.50 ก่อนรวมค่า output ซึ่งสูงกว่าการทำงานแบบ warm turn ประมาณห้าเท่า ทั้งที่เป็นงานลักษณะเดียวกัน ส่วนต่างนี้คือภาพรวมทั้งหมดของการใช้ caching ในตัวเลขเดียว
สำหรับการเปรียบเทียบเทียบเคียงไม่ใช่การคาดการณ์: ข้อมูลที่ Anthropic เผยแพร่สำหรับการใช้งาน Claude Code ระดับ enterprise ณ เดือน July 2026 มีค่าเฉลี่ยอยู่ที่ประมาณ $13 ต่อ developer ต่อหนึ่งวันที่มีการใช้งาน (active day) หรือประมาณ $150–250 ต่อเดือน โดย 90% ของผู้ใช้งานมีค่าใช้จ่ายไม่เกิน $30 ต่อวัน ค่าใช้จ่ายจริงของคุณขึ้นอยู่กับการเลือก model, การจัดการ session (session hygiene) และขนาดของ codebase ซึ่งเป็นเหตุผลว่าทำไมปัจจัยต่างๆ ด้านล่างจึงมีความสำคัญ
การตรวจสอบการใช้งานของคุณ
ใน Claude Code ให้ใช้คำสั่ง /usage (/cost ยังคงใช้งานได้เนื่องจากเป็น alias) ส่วน Session block ที่ด้านบนจะแสดงสถิติ token และการประมาณการค่าใช้จ่ายที่คำนวณในเครื่องสำหรับ session ปัจจุบัน สำหรับแผนการสมัครสมาชิก หน้าจอนี้จะแสดงแถบจำกัดการใช้งานตามแผนของคุณ พร้อมรายละเอียดการใช้งานล่าสุดที่แบ่งตาม skills, subagents, plugins และ MCP servers แต่ละตัว สำหรับข้อมูลการเรียกเก็บเงินที่ถูกต้องแม่นยำสำหรับบัญชี API ให้ยึดข้อมูลจากหน้าการใช้งานใน Claude Console เป็นหลัก เนื่องจากตัวเลขใน CLI เป็นเพียงการประมาณการ คำสั่ง /context จะแสดงตารางสีเพื่อระบุ สิ่งที่ใช้พื้นที่ใน context window ซึ่งประกอบด้วย system prompt, tools, MCP definitions, files และ history วิธีนี้เป็นวิธีที่เร็วที่สุดในการตรวจหา CLAUDE.md ที่มีขนาดใหญ่เกินไป หรือ MCP server ที่มีการรับส่งข้อมูลมากเกินไป หากต้องการดูรายละเอียดแยกตามรายการทั้งหมด ให้ใช้ flag all
สำหรับการใช้งานผ่าน API ทุกการตอบกลับจะระบุรายละเอียดสิ่งที่เกิดขึ้นดังนี้:
response = client.messages.create(model="claude-sonnet-5", max_tokens=2048,
messages=messages)
u = response.usage
total_prompt = u.input_tokens + u.cache_creation_input_tokens + u.cache_read_input_tokens
print(f"uncached={u.input_tokens} written={u.cache_creation_input_tokens} "
f"read={u.cache_read_input_tokens} output={u.output_tokens}")โปรดทราบว่า input_tokens คือ ส่วนที่ไม่ได้ใช้ cache เท่านั้น ขนาด prompt ที่แท้จริงคือผลรวมของ input fields ทั้ง 3 ส่วน หาก agent ทำงานนาน 1 ชั่วโมงและแสดงค่า input_tokens: 4000 แสดงว่าไม่ได้มีราคาถูก เนื่องจาก token อีก 200,000 ตัวถูกดึงมาจาก cache หากต้องการประมาณการก่อนส่งคำสั่ง ให้ใช้ token-counting endpoint ซึ่งไม่มีค่าใช้จ่ายในการเรียกใช้งาน มี rate limit แยกต่างหาก และคำนวณด้วย tokenizer ของโมเดลที่คุณระบุ (ให้ถือว่าผลลัพธ์นี้เป็นการประมาณการที่ใกล้เคียง แต่การเรียกเก็บเงินจริงจะอ้างอิงตาม request จริง):
count = client.messages.count_tokens(model="claude-sonnet-5",
messages=[{"role": "user", "content": big_file}])
print(count.input_tokens)ห้ามใช้ tiktoken ด้วยเหตุผลที่กล่าวมาข้างต้น
Subscription plans versus pay-as-you-go
กลไกการทำงานในคู่มือนี้เหมือนกันทุกประการ มีเพียงวิธีการชำระเงินเท่านั้นที่แตกต่างกัน หากใช้ API key ระบบของ Anthropic จะคิดค่าบริการแบบ pay-as-you-go ตามจำนวน token ตามอัตราที่ประกาศไว้ ซึ่งตัวเลขทั้งหมดข้างต้นคือจำนวนเงินจริง สำหรับการสมัครสมาชิก Claude (Pro, Max, Team, Enterprise) การใช้งาน Claude Code จะหักจากโควตาที่รวมอยู่ในแผนของคุณแทน โดยเริ่มตั้งแต่เดือน July 2026 จะเป็นหน้าต่างเวลาการใช้งานแบบ rolling five-hour session และหน้าต่างเวลาแบบรายสัปดาห์ ซึ่งใช้ร่วมกันระหว่างโมเดลต่างๆ และใช้งานร่วมกับ claude.ai chat โดยตัวเลข /usage คือข้อมูลเพื่อการแจ้งให้ทราบเท่านั้น ไม่ใช่ยอดเรียกเก็บเงิน หากใช้งานจนครบกำหนดหน้าต่างเวลา คุณจะเห็นข้อความ "You've hit your session limit" หรือ "You've hit your weekly limit" พร้อมระบุเวลาที่จะเริ่มใช้งานใหม่ได้ การเปลี่ยนโมเดลด้วย /model จะไม่ช่วยให้กลับมาใช้งานได้ เนื่องจากหน้าต่างเวลาถูกใช้ร่วมกันในทุกโมเดล ผู้ใช้สามารถเลือกเปิดใช้งาน usage credits เพื่อซื้อการใช้งานเพิ่มเติมเมื่อใช้งานเกินขีดจำกัด โดยจัดการผ่าน /usage-credits ข้าพเจ้าจะไม่ระบุโควตาของแต่ละแผน เนื่องจากเป็นตัวเลขที่มีการเปลี่ยนแปลงบ่อยที่สุดในหัวข้อนี้ โปรดตรวจสอบที่ claude.com/pricing และแถบแสดงสถานะ /usage ของคุณแทน กลไกของ token ยังคงมีความสำคัญสำหรับการสมัครสมาชิก เพราะการใช้งานที่สิ้นเปลืองจะทำให้โควตาในหน้าต่างเวลาของคุณหมดลงในลักษณะเดียวกับการเสียเงินจริง สำหรับข้อมูลด้านการสมัครสมาชิก โปรดดูที่ which Claude plan fits your usage
กลไกที่ใช้งานได้จริง
- จำกัดขอบเขตการอ่านข้อมูลของ agent. คำสั่ง "Fix the validation bug in
auth.py" จะอ่านเพียงไฟล์เดียว แต่คำสั่ง "improve this codebase" จะอ่านถึงสี่สิบไฟล์ ควรรักษาCLAUDE.mdให้กระชับ เนื่องจากข้อมูลจะถูกโหลดเข้าสู่ทุก session ดังนั้นควรใส่เฉพาะข้อมูลที่จำเป็นเท่านั้น และควรย้ายคำสั่งเฉพาะทางของ workflow ไปไว้ใน skills ที่โหลดเมื่อต้องการใช้งานเท่านั้น - ชัดเจนและกะทัดรัด.
/clearระหว่างงานที่ไม่เกี่ยวข้องกัน เพราะ context ที่ล้าสมัยจะถูกส่งซ้ำและถูกคิดเงินซ้ำในทุกข้อความถัดไป สำหรับงานที่มีความยาวต่อเนื่อง/compact Focus on the failing tests and the diffจะสรุปประวัติการสนทนาเพื่อป้องกันปัญหาค่าใช้จ่ายที่เพิ่มขึ้นแบบทวีคูณ - เลือกขนาดโมเดลให้เหมาะสม. Sonnet เหมาะสำหรับการเขียนโค้ดส่วนใหญ่ โดยมีราคาเริ่มต้นที่ $2/$10 ต่อหนึ่งล้าน tokens ณ เดือน July 2026 ($3/$15 สำหรับราคาปกติ เทียบกับ Opus ที่ $5/$25) และ Haiku ที่ราคา $1/$5 คือเครื่องมือที่เหมาะสมสำหรับงาน subagent เชิงกลไก เช่น การคัดกรอง log โดย
/modelสามารถสลับโมเดลระหว่าง session ได้ - กรองข้อมูลที่เยิ่นเย้อออกล่วงหน้า. การใช้ hook เพื่อ grep ผลลัพธ์จากการรัน test ให้เหลือเพียงรายการที่ล้มเหลว (failures) ก่อนส่งให้ Claude จะช่วยลดจำนวนจาก 20,000 tokens เหลือเพียง 300 tokens และจะช่วยลดจำนวน tokens ในการส่งข้อมูลซ้ำในรอบถัดไปทุกครั้ง
- ประมวลผลแบบ Batch สำหรับงานที่ไม่ต้องโต้ตอบ. สำหรับ API pipeline ของคุณเอง เช่น การจำแนกประเภท (classification), การตรวจสอบข้อมูลจำนวนมาก (bulk review) หรือการทำงานประจำคืน (nightly jobs) การใช้ Batches API จะช่วยลดค่าใช้จ่ายลง 50% โดยแลกกับการประมวลผลแบบ asynchronous
- คำนึงถึงระยะเวลาของ cache. ควรทำงานอย่างต่อเนื่อง การใช้ Claude Code session ใน tmux บน VPS จะไม่มีค่าใช้จ่ายในขณะที่ไม่ได้ใช้งาน เนื่องจากจะเสีย tokens เฉพาะเมื่อมีการรัน turn เท่านั้น อย่างไรก็ตาม การปล่อยทิ้งไว้นานเกินไปจะทำให้เสียสิทธิ์ในการใช้ warm cache และการรันใน turn ถัดไปจะต้องเสียค่าใช้จ่ายในการเขียนข้อมูลใหม่ (re-write)
FAQ
การใช้งาน Claude Code ในหนึ่ง session ใช้ token จำนวนเท่าใด?
ไม่มีจำนวนที่แน่นอน การโต้ตอบหนึ่งครั้งในช่วงกลาง session มักใช้ prompt tokens หลายหมื่น token เมื่อมีการสะสมไฟล์และประวัติการสนทนา ส่วนการใช้งานจริงอาจสูงถึงหลักล้าน token โดยส่วนใหญ่จะถูกดึงมาจาก cache ซึ่งมีราคาเพียงหนึ่งในสิบของอัตราปกติ สำหรับข้อมูลอ้างอิง ตัวเลขระดับองค์กรที่ Anthropic เผยแพร่ ณ เดือน July 2026 มีค่าเฉลี่ยอยู่ที่ประมาณ $13 ต่อผู้พัฒนาต่อวันที่มีการใช้งาน (active day) โดย 90% ของผู้ใช้งานมีค่าใช้จ่ายต่ำกว่า $30 ลองรัน /usage ใน session ของคุณเอง การสังเกตเพียง 5 นาทีจะให้ข้อมูลที่ชัดเจนกว่าค่าเฉลี่ยที่เผยแพร่ไว้
thinking tokens มีค่าใช้จ่ายหรือไม่ แม้จะไม่แสดงผลให้เห็น?
มีค่าใช้จ่าย thinking tokens จะถูกคิดเงินในฐานะ output tokens ซึ่งเป็นอัตราที่สูงกว่า และจะถูกนับรวมใน max_tokens โดยโมเดลปัจจุบันจะคิดเงินแม้ว่า interface จะไม่ได้แสดงสรุปการใช้เหตุผล (reasoning summary) ออกมาก็ตาม หากคำตอบถูกตัดจบด้วย stop_reason: "max_tokens" ก่อนที่คำตอบที่มองเห็นจะเสร็จสมบูรณ์ แสดงว่าการใช้ thinking น่าจะใช้โควตาจนหมด ใน Claude Code คุณสามารถลดระดับความพยายาม (effort level) ด้วยคำสั่ง /effort สำหรับงานที่ไม่ต้องการการใช้เหตุผลเชิงลึก
ทำไมการใช้งาน Claude Code ที่ยาวนานขึ้นจึงมีค่าใช้จ่ายต่อข้อความสูงขึ้น?
เนื่องจาก API เป็นแบบ stateless ทุกการโต้ตอบจะส่งข้อมูลการสนทนาทั้งหมดกลับไปใหม่ ทั้งไฟล์ที่อ่าน ผลลัพธ์จาก tool และการโต้ตอบก่อนหน้า ในฐานะ billed input ดังนั้นการโต้ตอบที่ 50 จึงต้องแบกรับข้อมูลจากการโต้ตอบที่ 1 ถึง 49 ไปด้วย Prompt caching ช่วยลดค่าใช้จ่ายของ prefix ที่ซ้ำกันให้เหลือประมาณหนึ่งในสิบของราคา input ปกติ แต่ตัว prefix จะมีขนาดใหญ่ขึ้นเรื่อยๆ และหากเว้นช่วงการใช้งานนานเกินค่า TTL ของ cache การโต้ตอบครั้งถัดไปจะถูกคิดราคาแบบเต็มจำนวน การใช้ /compact จะช่วยลดขนาดประวัติการสนทนา ส่วน /clear จะเป็นการรีเซ็ตประวัติทั้งหมด
ฉันจะตรวจสอบการใช้งาน token และค่าใช้จ่ายของ Claude ได้อย่างไร?
ใน Claude Code คำสั่ง /usage จะแสดงสถิติ token ของ session, การประมาณการค่าใช้จ่ายในเครื่อง และแถบแสดงขีดจำกัดของแผนการสมัครสมาชิก (/cost คือชื่อเรียกแทน); ส่วน /context จะแสดงข้อมูลที่กำลังแสดงอยู่ในหน้าต่าง สำหรับการเรียกเก็บเงิน API ที่แม่นยำ ให้ใช้หน้า usage ใน Claude Console หากต้องการตรวจสอบในโค้ดของคุณเอง ให้ใช้การอ่านค่าจาก response.usage โดยการรวมค่า input_tokens, cache_creation_input_tokens และ cache_read_input_tokens จะทำให้ทราบขนาด prompt ที่แท้จริง และควรประมาณการล่วงหน้าด้วย endpoint count_tokens ห้ามใช้ tiktoken ในการประมาณการ