Der AWS Cost and Usage Report (CUR) ist der detaillierteste Kosten- und Nutzungsdatensatz, den AWS herausgibt: eine Position je Konto, Produkt, Nutzungsart, Operation und Zeitraum, heute über AWS Data Exports als CUR 2.0 in einen S3-Bucket geschrieben. Für die Rechnung zählt er, weil jede Auswertung, jede Zuordnung und jede Commitment-Analyse aus diesem Export stammt, und weil nur hier Rechnungsnummer, berechnete Kosten, Rabatte und Tags einer Position nebeneinanderstehen.

So funktioniert es

AWS Data Exports ist der Dienst, der die Abrechnungsdaten liefert. Er kennt drei Exporttypen; der Standard-Datenexport bietet fünf Tabellen: CUR 2.0, Cost optimization recommendations, FOCUS 1.2 with AWS columns, FOCUS 1.0 with AWS columns und Carbon emissions. Die beiden anderen sind das Cost and usage dashboard für Amazon QuickSight und der Legacy-Export, also der alte CUR, der über eine eigene API läuft. AWS nennt CUR 2.0 den neuen und empfohlenen Weg. Der Unterschied zum alten Report ist das Schema: Der Legacy-CUR enthält je Monat andere Spalten, je nachdem, welche Dienste, Kostenkategorien und Tags Daten erzeugt haben. CUR 2.0 hat einen festen Satz von 125 möglichen Spalten und fasst variable Inhalte in Map-Spalten mit Schlüssel-Wert-Paaren zusammen. Welcher Export für welche Auswertung passt, beschreibt AWS CUR 2.0 oder FOCUS 1.2: den richtigen Kostenexport wählen.

Beim Anlegen entscheiden wenige Einstellungen über Inhalt und Größe. Die Zeitgranularität ist stündlich, täglich oder monatlich. Ressourcen-IDs erzeugen eine eigene Position je Ressource statt einer Summe je Dienst, was den Export erheblich vergrößert. Split cost allocation data fügt Positionen und split_line_item_*-Spalten für ECS-Tasks und Kubernetes-Pods hinzu und zeigt, wie sich eine EC2-Instanz auf die Container verteilt, die darauf laufen. Dazu kommen Capacity-reservation-Daten und die Spaltenauswahl selbst. Das Dateiformat ist Parquet oder text/csv, komprimiert mit gzip oder zip; die Auffrischung ist täglich, laut Creating a standard export bis zu einmal am Tag, laut Understanding export delivery mindestens einmal am Tag. Bei der Versionierung überschreibt jede Lieferung die vorige innerhalb eines Abrechnungszeitraums, oder jede Lieferung landet in einem neuen Verzeichnis, sodass sich die Veränderung der Daten im Monat nachvollziehen lässt.

Die Daten liegen unter s3://bucket/prefix/export-name/data/BILLING_PERIOD=YYYY-MM/, in Teilstücken (chunks), sobald der Export groß genug ist, plus eine Manifest.json je Abrechnungszeitraum unter dem Präfix metadata, mit Spaltenliste, Dateipfaden und abgedecktem Zeitraum. Das Manifest wird erst geliefert, wenn alle Datendateien angekommen sind, und ist deshalb die verlässliche Liste dessen, was einzulesen ist. Der Bucket kann im eigenen oder in einem anderen Konto liegen und braucht eine Bucket-Policy, die dem Dienst bcm-data-exports.amazonaws.com das Schreiben erlaubt, gebunden an das Konto, das den Export angelegt hat.

In einer Organisation mit Consolidated Billing enthält der Export des Management-Kontos alle Member-Konten. Ein Member-Konto exportiert nur seine eigenen Daten, und nach einem Beitritt nur die Zeit seit dem Beitritt.

Die Spalten sind in Familien gruppiert: Bill (Abrechnungszeitraum, Rechnungsnummer, zahlendes Konto), Line item (Kosten, Nutzung, Nutzungsart, Preise, Produkt), Product, Pricing, Reservation, Savings plan, Discount, Cost category, Resource tags, Split line item, Capacity reservation, Identity und Tags. Die Familien Reservation und Savings plan tragen die Werte, aus denen amortisierte Kosten gerechnet werden; in Resource tags und Tags stehen die Schlüssel-Wert-Paare für die Zuordnung.

Der laufende Abrechnungszeitraum wird bis zu seinem Ende immer wieder aufgefrischt; jede Lieferung ist kumulativ und eine Schätzung. Nach dem Monatsende finalisiert AWS den Report, nachdem die Rechnung gestellt ist, und darf die Lieferung des Vormonats in den ersten zwei Wochen danach noch aktualisieren. Auch nach der Finalisierung kann sich der Report ändern, wenn AWS Gutschriften, Rückerstattungen oder Support-Gebühren nachträgt; Developer-, Business- und Enterprise-Support werden aus den finalen Nutzungskosten berechnet und erscheinen am sechsten oder siebten Tag des Folgemonats.

Was es für Ihre Kosten bedeutet

Die Rechnung und der Export sind dieselben Daten in zwei Formen. Die Position des Exports trägt in bill_invoice_id die Nummer der Rechnung, auf der sie steht, und dieses Feld bleibt leer, bis der Report final ist. Eine leere Rechnungsnummer heißt also: Der Monat ist noch eine Schätzung. Die Summe der berechneten Kosten (line_item_unblended_cost) je Rechnungsnummer ist der Betrag, der sich mit der Rechnung abstimmen lässt; die geglätteten (blended) Kosten verteilen Reservierungsvorteile über die Organisation und passen zu keiner einzelnen Rechnung.

Für einen Kostenbericht entscheidet die Granularität, was sichtbar ist. Ein täglicher Export ohne Ressourcen-IDs zeigt Dienste und Konten; erst mit Ressourcen-IDs lässt sich eine Instanz, ein Bucket oder eine Datenbank einzeln verfolgen, und erst mit Split cost allocation data landet ein Pod in der Zuordnung. Die Tag-Spalten tragen nur Schlüssel, die in der Billing-Konsole als Cost Allocation Tags aktiviert wurden, und auch dann nur für Positionen, auf denen der Schlüssel einen Wert hat. Was im Export fehlt, fehlt in jeder Auswertung, die darauf aufsetzt. Die FOCUS-Tabellen desselben Dienstes beschreibt FOCUS-Spalten und das Mapping der Anbieter.

Wo es schiefgeht

  • Der Export wurde in einem Member-Konto angelegt. Symptom: Die Summen sind zu klein, ganze Konten fehlen. Ursache: Ein Member-Konto exportiert nur sich selbst; der vollständige Datensatz entsteht nur im Management-Konto.
  • Die Bucket-Policy wurde geändert oder der Bucket hat den Besitzer gewechselt. Symptom: Die Lieferung bleibt aus, die Konsole zeigt einen ungültigen Bucket. Ursache: AWS dokumentiert, dass das Ändern der Policy oder des Besitzers nach dem Anlegen die Lieferung verhindern kann.
  • Ein laufender Monat wird als abgeschlossen gelesen. Symptom: Der Monatsbericht weicht später von der Rechnung ab. Ursache: Bis zur Finalisierung ist jede Lieferung eine Schätzung, und auch danach können Gutschriften, Rückerstattungen und Support-Gebühren den Vormonat ändern; die leere bill_invoice_id zeigt den Zustand an.
  • Ressourcen-IDs werden in einem Export erwartet, der ohne sie angelegt wurde. Symptom: Die Spalte line_item_resource_id fehlt oder ist leer. Ursache: Die Spalte kommt nur durch die Tabellenkonfiguration INCLUDE_RESOURCES in das Schema; ein Export ohne sie liefert Summen je Dienst, keine Zeile je Ressource.
  • Tag-Spalten fehlen, weil die Tags nie aktiviert wurden. Symptom: Ressourcen sind in der Konsole getaggt, im Export aber nicht getaggte Kosten. Ursache: Ein Tag-Schlüssel erscheint erst, wenn er als Cost Allocation Tag aktiviert ist.

Quellen

Gelesen am 2026-10-15. What is AWS Data Exports?, Creating a standard export, Understanding export delivery, Setting up an Amazon S3 bucket for data exports, Cost and Usage Report (CUR) 2.0, Bill columns, Line-item-Spalten, Resource tags columns, What are AWS Cost and Usage Reports?.