CSV, Excel oder JSON: welches Format für Ihre Daten?
Wir haben dieselbe Tabelle mit 100.000 Zeilen als CSV, als Excel-Arbeitsmappe und als JSON gespeichert und dann die Größen verglichen, wie schnell sich jede im Code liest und was mit Datumsangaben, führenden Nullen und langen Zahlen schiefgeht.
Datentabellen wandern in drei Hauptformaten zwischen Menschen und Programmen: CSV, Excel-Arbeitsmappen (XLSX) und JSON. Jedes ist irgendwo die natürliche Wahl, und jedes verursacht eine vertraute Art von Ärger, wenn es am falschen Ort landet. Um sie unter gleichen Bedingungen zu vergleichen, haben wir eine Tabelle in allen drei gespeichert, Größe und Lesegeschwindigkeit gemessen und dann angesehen, was jedes Format aufnehmen kann und was nicht.
Die Testtabelle
Die Tabelle umfasst 100.000 Verkaufsaufträge mit sieben Spalten: eine Auftragsnummer, ein Datum, ein Land, ein Produkt, eine Menge, ein Stückpreis und eine Summe. Die ersten Zeilen sehen als CSV so aus:
order_id,date,country,product,quantity,unit_price,total
100000,2025-11-30,Brazil,Water bottle,6,158.35,950.1
100001,2025-02-25,France,Office chair,7,158.73,1111.11und als JSON so:
[
{
"order_id": 100000,
"date": "2025-11-30",
"country": "Brazil",
"product": "Water bottle",
"quantity": 6,
"unit_price": 158.35,
"total": 950.1
},
...
]Dateigröße
Größen in Megabyte (MiB). JSON wiederholt jeden Spaltennamen in jeder Zeile, deshalb ist es zweieinhalbmal so groß wie CSV.
Eine Excel-Datei ist ein ZIP-Archiv aus XML-Dokumenten, sie kommt also komprimiert an, und Excel speichert jeden unterschiedlichen Textwert einmal in einer gemeinsamen Liste. Dadurch ist sie hier etwas kleiner als die CSV. JSON ist mit Abstand am größten: Jede Zeile wiederholt "order_id", "date" und die übrigen Schlüssel, und die Einrückung legt mehr als ein Drittel obendrauf.
Das Bild ändert sich, sobald Dateien komprimiert werden, wie bei der Übertragung, wenn ein Webserver sie mit gzip sendet:
| Format | Größe | Mit gzip |
|---|---|---|
| CSV | 5,03 MB | 1,36 MB |
| JSON, kompakt | 12,37 MB | 1,63 MB |
| JSON, eingerückt | 16,95 MB | 1,72 MB |
| XLSX, von Excel gespeichert | 4,46 MB | bereits komprimiert |
Lesegeschwindigkeit
Die Größe zählt bei einer modernen Verbindung weniger, als man denkt. Wie schnell ein Programm die Datei wieder in Zeilen verwandeln kann, zählt bei großen Daten mehr. Wir haben jede Datei mit den Bibliotheken zurückgelesen, die unsere Datenwerkzeuge nutzen, und den Median aus fünf Läufen genommen:
| Format | In Zeilen gelesen | Bibliothek |
|---|---|---|
| JSON, kompakt | 0,12 s | JSON.parse, in JavaScript eingebaut |
| CSV | 0,47 s | Papa Parse |
| XLSX | 10,2 s | SheetJS |
JSON gewinnt im Code, weil jede Sprache einen schnellen nativen Parser mitbringt und die Typen gratis dazukommen. CSV braucht einen Parser, der mit Anführungszeichen umgehen kann und Text in Zahlen umwandelt. XLSX ist außerhalb von Excel mit großem Abstand am langsamsten: Das Programm muss die Datei entpacken, ein großes XML-Dokument parsen und gemeinsame Zeichenketten und Formate auflösen. Wenn ein Skript oder eine Web-App oft große Tabellen lesen muss, ist XLSX das falsche Format dafür.
Was jedes Format aufnehmen kann
| CSV | XLSX | JSON | |
|---|---|---|---|
| Datentypen | Nur Text | Zahlen, Text, Datumsangaben, Wahrheitswerte | Zahlen, Text, Wahrheitswerte, null |
| Mehrere Tabellen | Nein, eine pro Datei | Ja, als Blätter | Ja, als verschachtelte Objekte |
| Verschachtelte Daten | Nein | Nein | Ja |
| Formeln und Formatierung | Nein | Ja | Nein |
| Zeilengrenze | Keine | 1.048.576 Zeilen | Keine |
| In einem Texteditor lesbar | Ja | Nein | Ja |
| Öffnet in Excel | Ja, mit Vorsicht | Ja | Mit Power Query oder einem Konverter |
Wo CSV schiefgeht
CSV wirkt wie das einfachste Format, und gerade seine fehlenden Regeln machen die meisten Probleme. Immer wieder tauchen dieselben paar Fälle auf:
- Führende Nullen verschwinden. Postleitzahlen, Artikelnummern und Telefonnummern wie
02134werden zu2134, wenn eine Tabellenkalkulation sie für Zahlen hält. - Lange Zahlen verlieren Ziffern. Excel behält 15 signifikante Stellen, also ändert eine 16-stellige Karten- oder Kontonummer still ihre letzte Ziffer.
- Datumsangaben werden umgedeutet.
03/04/2025ist in den meisten Ländern der 3. April und in den USA der 4. März, und Tabellenkalkulationen wandeln solche Werte beim Öffnen der Datei um. ISO-Datumsangaben wie2025-04-03vermeiden das Raten. - Das Trennzeichen hängt vom Land ab. Wo das Dezimalzeichen ein Komma ist, etwa in Deutschland oder Frankreich, erwartet Excel Semikolons zwischen den Feldern, also öffnet sich eine kommagetrennte Datei als eine lange Spalte.
- Umlaute werden zu Symbolen. Excel liest eine UTF-8-CSV nur dann richtig, wenn die Datei mit einer Byte-Order-Mark beginnt. Ohne sie erscheint „Café“ womöglich als „Café“.
- Kommas in Werten müssen in Anführungszeichen stehen, und Anführungszeichen in solchen Werten verdoppelt werden. Von Hand erstellte CSV macht das oft falsch.
Nichts davon passiert mit XLSX oder JSON, die Typen ausdrücklich speichern. Bei CSV ist die sicherste Gewohnheit, sie über den Importdialog von Excel zu öffnen (Daten, Aus Text/CSV), wo Sie den Typ jeder Spalte festlegen können, statt die Datei doppelt anzuklicken.
Welches Sie nutzen sollten
- Eine Tabelle an eine Person schicken, die sie ansehen, sortieren oder mit Formeln ergänzen wird: XLSX. Es behält Typen und Formatierung und öffnet sich überall richtig, wo Excel, Google Tabellen, Numbers oder LibreOffice verfügbar ist.
- Daten zwischen Systemen austauschen, in eine Datenbank importieren oder reine Daten archivieren: CSV, mit UTF-8-Kodierung, ISO-Datumsangaben und einer Kopfzeile. Es ist universell, kompakt und auch in Jahrzehnten noch lesbar.
- Daten für eine Web-App oder eine API, oder alles mit verschachtelter Struktur: JSON. Es ist das native Format von JavaScript und im Code am schnellsten zu lesen.
Das Umwandeln zwischen ihnen ist meist der leichte Teil. Unser Excel- und CSV-Konverter wandelt XLSX, XLS und ODS Blatt für Blatt in CSV oder JSON um und baut Excel-Dateien aus CSV, TSV oder JSON, der CSV-Viewer öffnet große CSV-Dateien mit Sortierung und Filtern, und der Datenkonverter wechselt zwischen JSON, CSV, YAML und XML. Alle laufen im Browser, die Daten verlassen also nie Ihr Gerät.
Fragen und Antworten
Ist CSV oder Excel kleiner?
In unserem Test war eine von Excel gespeicherte Excel-Datei etwas kleiner (4,5 MB) als dieselben Daten als CSV (5,0 MB), weil XLSX intern komprimiert ist. Gezippt wäre die CSV viel kleiner (etwa 1,4 MB mit gzip).
Warum entfernt Excel die Nullen am Anfang meiner Zahlen?
Excel nimmt beim Öffnen einer CSV-Datei an, dass die Spalte Zahlen enthält. Importieren Sie die Datei über Daten, Aus Text/CSV und stellen Sie diese Spalte auf Text, oder behalten Sie die Daten als XLSX.
Lässt sich JSON in Excel öffnen?
Ja, über Power Query (Daten, Daten abrufen, Aus Datei, Aus JSON), oder indem Sie es vorher in CSV oder XLSX umwandeln. Flache Listen von Objekten lassen sich sauber umwandeln; verschachtelte Daten müssen in Spalten aufgelöst werden.
Wie viele Zeilen kann Excel öffnen?
Ein Excel-Arbeitsblatt fasst höchstens 1.048.576 Zeilen und 16.384 Spalten. Größere CSV-Dateien öffnen sich nur teilweise, nutzen Sie also einen Viewer, der die Datei streamt, oder teilen Sie sie.
Tools in diesem Artikel
Mehr aus dem Blog
ZIP, 7z oder RAR: welches Archivformat ist das beste?
Wir haben dieselben Ordner mit Fotos, Videos, Dokumenten und Daten in ZIP-, 7z- und RAR-Archive gepackt und Größe und Geschwindigkeit gemessen. Der Gewinner hängt fast nur davon ab, was drin ist.
QR-Code-Fehlerkorrektur und Größe: L, M, Q und H getestet
Eine höhere Fehlerkorrektur lässt einen QR-Code Schäden überstehen, macht ihn aber auch dichter. Wir haben Codes für vier gängige Inhalte in jeder Stufe erzeugt und sie Stück für Stück abgedeckt, bis sie nicht mehr gelesen wurden.
Unix-Zeitstempel erklärt
Ein Unix-Zeitstempel ist nur eine Zahl von Sekunden und sorgt doch für einen steten Strom von Fehlern. Was er zählt, wie Sie Sekunden und Millisekunden auf einen Blick unterscheiden, was mit Zeitzonen und Schaltsekunden passiert und warum 2038 wichtig ist.