{"id":13022,"date":"2026-09-13T12:45:00","date_gmt":"2026-09-13T10:45:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=13022"},"modified":"2026-09-09T13:23:33","modified_gmt":"2026-09-09T11:23:33","slug":"tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/","title":{"rendered":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen"},"content":{"rendered":"<p>Eine Rechnung f\u00fcr eine API kommt einmal im Monat und nennt eine Summe. Zwischen dieser Summe und dem Code, der sie erzeugt hat, steht meist gar nichts &#8211; kein Vermerk, welche Funktion was verbraucht hat, und keine M\u00f6glichkeit, eine teure Woche von einer teuren Gewohnheit zu unterscheiden.<\/p>\n<p>Die L\u00fccke l\u00e4sst sich leicht schliessen, denn die Angabe steckt bereits in jeder Antwort. Die folgende Arbeit besteht aus zwanzig Zeilen Protokoll, einer Preistabelle und einer Pr\u00fcfung, die vor der Anfrage l\u00e4uft statt danach.<\/p>\n<figure class=\"lw-diagram\">\n<img src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/tokenverbrauch-messen-de.png\" width=\"1120\" height=\"580\" decoding=\"async\" loading=\"lazy\"\n     alt=\"Ein Beleg f\u00fcr eine einzelne Anfrage mit vier getrennt bepreisten Tokenklassen, daneben ein Monatsbudget-Balken mit Warnschwelle und hartem Stopp\"><figcaption>Dieselbe Anfrage, vier Preise. Die 96 000 aus dem Zwischenspeicher gelesenen Token kosten weniger als die 12 400 frisch gesendeten &#8211; deshalb erkl\u00e4rt eine einzelne Tokenzahl nichts.<\/figcaption><\/figure>\n<h2>Wo die wahre Zahl l\u00e4ngst steht<\/h2>\n<p>Jede Antwort einer Chat-Vervollst\u00e4ndigung tr\u00e4gt einen usage-Block. Er ist keine Sch\u00e4tzung und keine Rundung, sondern das, was der Z\u00e4hler festgehalten hat.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>{\n  \"usage\": {\n    \"input_tokens\": 12400,\n    \"cache_creation_input_tokens\": 8200,\n    \"cache_read_input_tokens\": 96000,\n    \"output_tokens\": 1850\n  }\n}<\/code><\/pre>\n<p>Die vier Felder sind vier verschiedene Preise, und die Aufteilung wiegt schwerer als die Summe. Frisch gesendete Eingabe ist der Grundpreis. Token, die in einen Prompt-Cache geschrieben werden, kosten einmalig einen Aufschlag. Token, die daraus wieder gelesen werden, kosten einen Bruchteil des Grundpreises. Die Ausgabe ist die teuerste Klasse \u00fcberhaupt, meist ein Mehrfaches des Eingabepreises.<\/p>\n<p>Andere Anbieter benennen dieselben Dinge anders &#8211; <code>prompt_tokens<\/code>, <code>completion_tokens<\/code> und ein verschachteltes <code>cached_tokens<\/code> sind die \u00fcbliche Alternative -, aber der Aufbau ist derselbe und die Folgerung auch: Eine einzelne Zahl mit der Beschriftung \u201eToken&#8221; l\u00e4sst sich nicht in Geld umrechnen.<\/p>\n<p>F\u00fcr das Streaming geh\u00f6rt eine Anmerkung dazu. Der usage-Block kommt nicht mit dem ersten St\u00fcck, sondern am Ende, im Abschlussereignis des Stroms. Code, der den Text liest und den Rest verwirft, verliert also genau den Teil, der etwas kostet.<\/p>\n<h2>Z\u00e4hlen, bevor gesendet wird<\/h2>\n<p>Manchmal wird die Zahl gebraucht, bevor die Anfrage existiert &#8211; um zu entscheiden, ob ein Dokument noch passt oder ob ein Gespr\u00e4ch gek\u00fcrzt werden muss. Daf\u00fcr gibt es einen Z\u00e4hlendpunkt, der kostenlos ist und zur\u00fcckgibt, was das Modell sehen w\u00fcrde.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>curl https:\/\/api.anthropic.com\/v1\/messages\/count_tokens \\\n  -H \"x-api-key: $API_KEY\" \\\n  -H \"anthropic-version: 2023-06-01\" \\\n  -H \"content-type: application\/json\" \\\n  -d '{\n    \"model\": \"claude-sonnet-5\",\n    \"messages\": [{\"role\": \"user\", \"content\": \"...\" }]\n  }'<\/code><\/pre>\n<p>Ein \u00f6rtlicher Tokenizer beantwortet dieselbe Frage ohne Netzaufruf und reicht f\u00fcr eine L\u00e4ngenpr\u00fcfung, aber er ist nicht der Z\u00e4hler. Systemvorgaben, Werkzeugdefinitionen und Bildbl\u00f6cke bringen alle Token mit, die ein Texttokenizer nie sieht, und der Unterschied geht bei einer Anfrage mit angeh\u00e4ngten Werkzeugen in die Tausende. F\u00fcr ein Budget z\u00e4hlt allein der usage-Block.<\/p>\n<h2>Eine Zeile je Anfrage<\/h2>\n<p>Das Protokollieren selbst ist unspektakul\u00e4r, und sein Wert liegt vollst\u00e4ndig in den Feldern, die den Zusammenhang beschreiben, nicht die Anfrage. Modell und Tokenzahlen allein beantworten nichts; eine Kennzeichnung, welche Funktion den Aufruf ausgel\u00f6st hat, beantwortet fast alles.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>import json, sqlite3, time, uuid\n\nDB = sqlite3.connect(\"verbrauch.db\")\nDB.execute(\"\"\"CREATE TABLE IF NOT EXISTS aufrufe (\n    id TEXT PRIMARY KEY, zeit INTEGER, modell TEXT, zweck TEXT,\n    ein INTEGER, cache_neu INTEGER, cache_gelesen INTEGER, aus INTEGER,\n    kosten REAL, versuch INTEGER)\"\"\")\n\ndef buchen(antwort, modell, zweck, versuch=1):\n    u = antwort[\"usage\"]\n    zeile = dict(\n        id=str(uuid.uuid4()), zeit=int(time.time()), modell=modell, zweck=zweck,\n        ein=u[\"input_tokens\"],\n        cache_neu=u.get(\"cache_creation_input_tokens\", 0),\n        cache_gelesen=u.get(\"cache_read_input_tokens\", 0),\n        aus=u[\"output_tokens\"], versuch=versuch)\n    zeile[\"kosten\"] = kosten(modell, zeile)\n    DB.execute(\"INSERT INTO aufrufe VALUES (:id,:zeit,:modell,:zweck,:ein,\"\n               \":cache_neu,:cache_gelesen,:aus,:kosten,:versuch)\", zeile)\n    DB.commit()\n    return zeile[\"kosten\"]<\/code><\/pre>\n<p>Die Spalte <code>versuch<\/code> ist die, die sich unerwartet auszahlt. Ein Wiederholungsversuch nach einer Zeit\u00fcberschreitung sendet die ganze Eingabe erneut und wird erneut berechnet, w\u00e4hrend die Anwendung einen einzigen logischen Aufruf sieht. Ohne diese Spalte verstecken sich Wiederholungen im Mittelwert, und ein schlechter Nachmittag sieht aus wie eine teure Funktion.<\/p>\n<h2>Aus Token Geld machen<\/h2>\n<p>Preise geh\u00f6ren an eine Stelle, je Modell und je Tokenklasse, angegeben je Million Token &#8211; denn so werden sie ver\u00f6ffentlicht.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code># Beispielpreise je Million Token - die echten stehen in der\n# Preisliste des Anbieters und \u00e4ndern sich \u00fcber die Zeit.\nPREISE = {\n    \"claude-sonnet-5\": {\"ein\": 3.00, \"cache_neu\": 3.75, \"cache_gelesen\": 0.30, \"aus\": 15.00},\n}\n\ndef kosten(modell, z):\n    p = PREISE[modell]\n    return round(sum(z[k] * p[k] for k in (\"ein\", \"cache_neu\", \"cache_gelesen\", \"aus\")) \/ 1e6, 6)<\/code><\/pre>\n<p>Auf die Anfrage von oben angewandt, ergeben die vier Klassen 0,0372, 0,0308, 0,0288 und 0,0278 &#8211; zusammen 0,1245 je Aufruf. Der aufschlussreiche Vergleich ist der dritte Wert gegen den ersten: 96 000 aus dem Zwischenspeicher gelesene Token kosten weniger als 12 400 frisch gesendete. Ein Zwischenspeicher, der greift, senkt also nicht nur die Rechnung, sondern verschiebt auch, welcher Teil der Anfrage sie bestimmt.<\/p>\n<p>Liegen ein paar Tage Zeilen in der Tabelle, l\u00e4sst sich die eigentliche Frage mit einer Anweisung beantworten.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>SELECT zweck,\n       COUNT(*)                          AS aufrufe,\n       ROUND(SUM(kosten), 2)             AS gesamt,\n       ROUND(AVG(kosten), 4)             AS je_aufruf,\n       ROUND(100.0 * SUM(cache_gelesen) \/\n             NULLIF(SUM(ein + cache_neu + cache_gelesen), 0), 1) AS cache_anteil\nFROM aufrufe\nWHERE zeit &gt;= strftime('%s', 'now', 'start of month')\nGROUP BY zweck ORDER BY gesamt DESC;<\/code><\/pre>\n<h2>Die Sperre, die wirklich etwas aufh\u00e4lt<\/h2>\n<p>Ein Budget, das nur warnt, ist ein Bericht. Aufhalten setzt voraus, dass die Pr\u00fcfung vor dem Aufruf steht &#8211; und dass die Zahl aktuell ist statt von letzter Nacht.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>class BudgetErschoepft(Exception):\n    pass\n\nMONATSBUDGET = 400.0\nWARNSCHWELLE = 0.80\n\ndef monatssumme():\n    (s,) = DB.execute(\n        \"SELECT COALESCE(SUM(kosten), 0) FROM aufrufe \"\n        \"WHERE zeit &gt;= strftime('%s', 'now', 'start of month')\").fetchone()\n    return s\n\ndef pruefen(geschaetzte_kosten):\n    verbraucht = monatssumme()\n    if verbraucht + geschaetzte_kosten &gt; MONATSBUDGET:\n        raise BudgetErschoepft(f\"{verbraucht:.2f} von {MONATSBUDGET:.2f} verbraucht\")\n    if verbraucht &gt; MONATSBUDGET * WARNSCHWELLE:\n        logging.warning(\"Budget zu %.0f %% verbraucht\", 100 * verbraucht \/ MONATSBUDGET)<\/code><\/pre>\n<p>Drei Entscheidungen machen daraus mehr als eine Formalit\u00e4t. Die \u00fcbergebene Sch\u00e4tzung sollte die pessimistische sein &#8211; h\u00f6chstm\u00f6gliche Ausgabetoken zum Ausgabepreis -, denn ein Aufruf ist entweder erlaubt oder nicht, und eine Erlaubnis auf optimistischer Grundlage ist der Weg, ein Budget um genau eine Anfrage zu \u00fcberschreiten.<\/p>\n<p>Die zweite betrifft das, was nach der Ausnahme geschieht. Ein Stapellauf sollte anhalten und sagen, wo er angehalten hat. Eine Funktion im Dialog sollte nachgeben statt zu scheitern: ein kleineres Modell, ein k\u00fcrzerer Zusammenhang oder eine Warteschlange, die im n\u00e4chsten Monat weiterl\u00e4uft. Beides ist besser als ein Fehlerbericht, der bis zum Leser durchschl\u00e4gt.<\/p>\n<p>Die dritte: Ein geteiltes Budget braucht einen geteilten Z\u00e4hler. Mehrere Prozesse mit je eigener Summe bleiben jeder f\u00fcr sich unter der Grenze und \u00fcberschreiten sie gemeinsam. Eine einzige Tabelle mit einer Transaktion um Lesen und Schreiben, oder ein Z\u00e4hler in einem gemeinsamen Speicher, ist die ganze Abhilfe.<\/p>\n<h2>Was die Sperre nicht sieht<\/h2>\n<p>Drei Arten von Ausgaben laufen nie durch die Pr\u00fcfung, und jede hat ihren eigenen Weg, doch erfasst zu werden.<\/p>\n<p>Die Stapelverarbeitung wird mit Rabatt berechnet und l\u00e4uft oft im Hintergrund, sodass der usage-Block Stunden sp\u00e4ter mit den Ergebnissen eintrifft. Diese Kosten geh\u00f6ren in dieselbe Tabelle, eingetragen beim Abholen der Ergebnisse, aber mit dem Zeitpunkt der Einreichung &#8211; sonst landet die Ausgabe an einer Monatsgrenze im falschen Monat.<\/p>\n<p>Fehlgeschlagene Anfragen sind der zweite Fall. Ein Aufruf, der in eine Zeit\u00fcberschreitung l\u00e4uft, nachdem das Modell den gr\u00f6ssten Teil seiner Antwort bereits erzeugt hat, wird trotzdem berechnet und liefert keinen usage-Block zum Auslesen. Was er liefert, ist eine Anfragekennung in den Antwort-Headern, und der Verbrauchsbericht des Anbieters f\u00fchrt sie. Ein monatlicher Abgleich zwischen der eigenen Tabelle und diesem Bericht kostet zehn Minuten und findet genau diese Klasse von Abweichung.<\/p>\n<p>Der dritte Fall ist alles, was keine Chat-Vervollst\u00e4ndigung ist: Einbettungen, Transkriptionen, Bilderzeugung, ein serverseitig aufgerufenes Suchwerkzeug. Jedes hat seinen eigenen Z\u00e4hler und seinen eigenen Preis, und keines davon taucht im hier protokollierten usage-Block auf. Der Abgleich f\u00e4ngt auch diese ein &#8211; und das ist der praktische Grund, ihn \u00fcberhaupt zu f\u00fchren.<\/p>\n<div class=\"lw-quellen\">\n<h2>Quellen<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9110.html\" target=\"_blank\" rel=\"noopener noreferrer\">RFC 9110: HTTP Semantics<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Jede API-Antwort nennt genau, wie viele Token sie gekostet hat, aufgeteilt in vier Klassen. Diese Zahl mitzuschreiben statt sie zu sch\u00e4tzen, kostet zwanzig Zeilen &#8211; und ist die einzige Grundlage, auf der ein Budget mehr sein kann als eine Warnung.<\/p>\n","protected":false},"author":1,"featured_media":13223,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[92638],"tags":[92406,92352,92418,92235],"class_list":["post-13022","post","type-post","status-publish","format-standard","hentry","category-tutorials-de-cloud-ai-de","tag-artificial-intelligence-de","tag-budgeting-de","tag-llm-de","tag-tutorial-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog<\/title>\n<meta name=\"description\" content=\"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-13T10:45:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"luky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"luky\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/\"},\"author\":{\"name\":\"luky\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen\",\"datePublished\":\"2026-09-13T10:45:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/\"},\"wordCount\":992,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png\",\"keywords\":[\"Artificial Intelligence\",\"Budgeting\",\"LLM\",\"Tutorial\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/\",\"name\":\"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png\",\"datePublished\":\"2026-09-13T10:45:00+00:00\",\"description\":\"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png\",\"width\":1200,\"height\":630,\"caption\":\"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/cloud-ai-de\\\/tutorials-de-cloud-ai-de\\\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"luky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/author\\\/luky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog","description":"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/","og_locale":"en_US","og_type":"article","og_title":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog","og_description":"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-09-13T10:45:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png","type":"image\/png"}],"author":"luky","twitter_card":"summary_large_image","twitter_misc":{"Written by":"luky","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/"},"author":{"name":"luky","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen","datePublished":"2026-09-13T10:45:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/"},"wordCount":992,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png","keywords":["Artificial Intelligence","Budgeting","LLM","Tutorial"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/","url":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/","name":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png","datePublished":"2026-09-13T10:45:00+00:00","description":"Den usage-Block auslesen, je Anfrage eine Zeile schreiben, Token in Geld umrechnen und einen Lauf stoppen, bevor das Monatsbudget \u00fcberschritten ist.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13022-tutorial-tokenverbrauch-je-anfrage-messe.png","width":1200,"height":630,"caption":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/cloud-ai-de\/tutorials-de-cloud-ai-de\/tutorial-tokenverbrauch-je-anfrage-messen-und-ein-monatsbudget-durchsetzen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Tutorial: Tokenverbrauch je Anfrage messen und ein Monatsbudget durchsetzen"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"luky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"],"url":"https:\/\/www.lukaswojcik.com\/blog\/author\/luky\/"}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13022","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=13022"}],"version-history":[{"count":1,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13022\/revisions"}],"predecessor-version":[{"id":17294,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13022\/revisions\/17294"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/13223"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=13022"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=13022"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=13022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}