Genauigkeitstest · Oktober 2026
Wir haben Sobas Kohlenhydrat-Schätzungen an 400 Essensfotos getestet
Die Fotos stammen aus zwei öffentlichen Forschungsdatensätzen, in denen die Kohlenhydrate jeder Mahlzeit gewogen oder protokolliert wurden. Unten findest du die Ergebnisse, die Methode und die Mahlzeiten, bei denen Soba danebenlag.
68,5 %der Mahlzeiten innerhalb von 10 g der tatsächlichen Kohlenhydrate, allein anhand des Fotos
+4Prozentpunkte mehr, wenn ein Hinweis die Lebensmittel genau wie im Studienprotokoll nannte
5,2 gMedian-Fehler allein anhand des Fotos
Was wir festgestellt haben
Die Zahlen in diesem Abschnitt sind Sobas erste Schätzungen allein anhand des Fotos, ohne Hinweis und bevor jemand ein Gewicht korrigiert hat. 49 % der Schätzungen lagen höchstens 5 g neben den tatsächlichen Kohlenhydraten. Das 95-%-Konfidenzintervall für den Anteil innerhalb von 10 g reicht von 64,0 bis 72,9 %.
Am genauesten waren kleine und mittlere Mahlzeiten. Bei Mahlzeiten unter 15 g Kohlenhydraten lagen 89 % der Schätzungen innerhalb von 10 g.
Große Mahlzeiten wurden meist unterschätzt. Bei 38 von 42 Mahlzeiten mit 60 g Kohlenhydraten oder mehr lag Sobas Schätzung zu niedrig, im Median bei 64 % der tatsächlichen Menge. Hauptursache ist das Portionsgewicht: Bei 30 dieser 38 Mahlzeiten schätzte Soba das Gewicht mindestens 15 % zu niedrig, während die Kohlenhydrate pro 100 g meist nah dran waren.
Was das für die Nutzung von Soba bedeutet
- Wiege bei einem großen Teller Brot, Reis, Nudeln, Kartoffeln oder Pizza nach Möglichkeit das kohlenhydratreichste Lebensmittel. Schätzungen ab 40 g lagen in beide Richtungen daneben: Von 84 Mahlzeiten lagen 32 um mehr als 10 g zu hoch, 23 zu niedrig.
- Einzelne kleine Stücke wie ein Keks oder ein Stück Pizza werden manchmal schwerer geschätzt, als sie sind.
- In einem Getränk gelösten Zucker sieht man auf dem Foto nicht. Im Test wurde ein gesüßter Eistee als ungesüßt erkannt. Gib einen kurzen Hinweis wie „gesüßter Tee“ ein oder scanne den Barcode.
- Bei verpackten Lebensmitteln liefert der Barcode die Werte vom Etikett.
Was die App zusätzlich nutzt
Die Ergebnisse oben beruhen auf einem Foto und sonst nichts. In der App kannst du ein paar Worte zur Mahlzeit hinzufügen, und auf iPhones mit Tiefenkamera misst Soba zusätzlich die Entfernung zum Essen. Wir haben den Test mit jedem davon wiederholt.
Alle 400 Fotos
200 Kantinenfotos mit Tiefendaten
Ein Texthinweis
Ein paar Worte wie „gesüßter Tee“ oder „das ist Buchweizen“ ergänzen, was ein Foto nicht zeigen kann. Für den Test bekam jedes der 400 Fotos einen Hinweis mit den Namen der wichtigsten Lebensmittel aus dem Protokoll des Datensatzes, ohne Mengen, zum Beispiel „Coffee, brewed; Coffee creamer, liquid, fat free“. Der Anteil innerhalb von 10 g stieg von 68,5 auf 72,8 % (95-%-Intervall für den Zuwachs: 0,7 bis 7,9 Prozentpunkte), der Median-Fehler sank von 5,2 auf 4,5 g.
Am meisten half der Hinweis dort, wo sich das Foto unterschiedlich deuten lässt. Ohne Hinweis hielt Soba diesen Kaffee mit Kaffeesahne für Karamellsauce und schätzte 162 g Kohlenhydrate. Mit dem Hinweis waren es 5,5 g, laut Ernährungsprotokoll 2,7 g. Bei den SNAPMe-Fotos, die Menschen von ihren eigenen Mahlzeiten gemacht haben, stieg der Anteil innerhalb von 10 g von 59,5 auf 67,5 %. Bei den Kantinenfotos, auf denen die Lebensmittel gut zu erkennen sind, änderte er sich kaum: von 77,5 auf 78,0 %.
Der Hinweis nennt das Lebensmittel, die Menge schätzt Soba weiterhin anhand des Fotos. Große Mahlzeiten wurden mit Hinweis in 37 von 42 Fällen unterschätzt, ohne Hinweis in 38. Die Hinweise im Test gaben die Protokolle der Datensätze genau wieder. Fast der ganze Zuwachs kam aus dem ersten Satz mit 200 Mahlzeiten, 8,0 Prozentpunkte; beim zweiten waren es 0,5. Ein Hinweis, den du selbst eintippst, bringt wahrscheinlich weniger.
Entfernung von der Tiefenkamera
Wenn du das Foto mit der Kamera von Soba auf einem iPhone mit LiDAR-Scanner oder mit zwei oder mehr Rückkameras aufnimmst, misst Soba die Entfernung zum Essen und teilt dem Modell mit, wie breit das Bild in Zentimetern ist. Nutrition5k enthält zu jedem Foto eine Aufnahme der Tiefenkamera, deshalb haben wir die 200 Mahlzeiten von Nutrition5k mit dieser Messung wiederholt. Der Anteil innerhalb von 10 g stieg von 77,5 auf 82,0 % (95-%-Intervall für den Zuwachs: 1,0 bis 8,3 Prozentpunkte), der Median-Fehler sank von 3,9 auf 3,1 g. Große Mahlzeiten wurden weiterhin unterschätzt, in 12 von 13 Fällen. Diese Fotos wurden senkrecht von oben aus fester Höhe aufgenommen. Fotos aus schrägem Winkel haben wir noch nicht gemessen.
Mit Tiefenmessung und Hinweis zusammen lag der Anteil bei 78,5 %. Auf diesen Kantinenfotos konnte der Hinweis wenig ergänzen, und das 95-%-Intervall für den Unterschied zur Tiefenmessung allein, −8,8 bis +1,5 Prozentpunkte, schließt null ein.
Deine Korrekturen
Wenn du das Gewicht der Portion kennst, gib es ein, und alle Werte werden neu berechnet. In diesem Test war das Portionsgewicht die Hauptursache großer Fehler.
Soba zeigt neben jeder Schätzung eine Gewichtsspanne. Bei den 200 gewogenen Tellern von Nutrition5k lag das echte Gewicht des Tellers in 97 Fällen innerhalb dieser Spanne, also etwa bei der Hälfte. Die Spanne zeigt, wo das Modell das Gewicht erwartet. Am sichersten prüfst du mit einer Küchenwaage.
Ergebnisse nach Größe der Mahlzeit
| Tatsächliche KH | Mahlzeiten | Innerhalb 10 g | Innerhalb 20 g | Median-Fehler |
|---|---|---|---|---|
| Unter 15 g | 167 | 88,6 % | 98,8 % | 2,0 g |
| 15 bis 30 g | 94 | 69,1 % | 88,3 % | 6,2 g |
| 30 bis 60 g | 97 | 54,6 % | 84,5 % | 8,4 g |
| 60 g und mehr | 42 | 19,0 % | 38,1 % | 25,4 g |
Das Gesamtergebnis hängt von dieser Mischung ab: 42 % der Testmahlzeiten hatten weniger als 15 g Kohlenhydrate. Wenn du meist größere Mahlzeiten isst, ist ein größerer typischer Fehler zu erwarten.
Diese Gruppen beruhen auf den tatsächlichen Kohlenhydraten, die die App beim Scannen nicht kennt. Nach Sobas eigener Schätzung gruppiert, lagen 84 Mahlzeiten bei 40 g oder mehr, und 55 davon wichen um mehr als 10 g ab: 32 zu hoch, 23 zu niedrig. Deshalb empfiehlt die App ab einer Schätzung von 40 g, das kohlenhydratreichste Lebensmittel zu wiegen.
Vier Mahlzeiten aus dem Test
Zwei genaue Schätzungen und zwei Fehlschätzungen. Lebensmittelnamen und Gewichte stammen aus Sobas Antworten.
Fotos: Nutrition5k-Datensatz, Google Research, CC BY 4.0. Für diese Seite verkleinert.
Zwei Datensätze, zwei Arten von Fotos
| Datensatz, je 200 Mahlzeiten | Innerhalb 10 g | Median-Fehler | Mittlerer Fehler |
|---|---|---|---|
| Nutrition5k | 77,5 % | 3,9 g | 6,8 g |
| SNAPMe | 59,5 % | 6,8 g | 12,2 g |
Die Teller von Nutrition5k stammen aus Kantinen von Google. Jede Zutat wurde gewogen, und eine fest montierte Kamera fotografierte jeden Teller senkrecht von oben. Das sind saubere Bedingungen, und hier schnitt Soba am besten ab.
SNAPMe ist eine Studie des US-Landwirtschaftsministeriums und der UC Davis. 95 Personen in den USA fotografierten ihre Mahlzeiten vor dem Essen und führten ein Ernährungsprotokoll in ASA24, einem Werkzeug zur Erfassung der Ernährung. Die Fotos ähneln denen, die man mit Soba macht. Die Referenzwerte stammen aus den Protokollen der Teilnehmenden, und diese enthalten eigene Fehler. Der Unterschied zwischen den Datensätzen kommt teils von den Fotos und teils von den Referenzwerten.
Vergleich mit einer veröffentlichten Studie
Rodríguez-Jiménez und Kollegen (Nutrients, 2025) testeten ChatGPT-5 an 74 SNAPMe-Mahlzeiten nur mit Fotos. Sie berichten einen mittleren absoluten Fehler von 12,99 g Kohlenhydraten und einen Median von 8,75 g.
| Nur Foto | Mahlzeiten | Mittlerer Fehler | Median-Fehler |
|---|---|---|---|
| ChatGPT-5 (veröffentlicht) | 74 | 12,99 g | 8,75 g |
| Soba | 200 | 12,2 g | 6,8 g |
Die Autoren wählten ihre Mahlzeiten anders aus und korrigierten einige Referenzwerte von Hand, daher lassen sich die beiden Zeilen nur grob vergleichen. Sie zeigen einen ähnlichen Fehlerbereich. In derselben Studie senkte eine kurze Notiz zu Fett, Zucker und Fleisch der Mahlzeit den mittleren Fehler auf 11,29 g. In Soba senkte ein Hinweis mit den Namen der Lebensmittel den mittleren Fehler bei den 200 SNAPMe-Mahlzeiten unseres Tests von 12,2 auf 10,2 g.
Welches Modell Soba nutzt
Wir haben acht Modelle mit Sobas Anweisungen an den ersten 200 Mahlzeiten getestet.
| Modell | Innerhalb 10 g | Median-Zeit |
|---|---|---|
| Google Gemini 3.7 Flash | 73,0 % | 3,7 s |
| Google Gemini 3.8 Flash | 71,5 % | 4,8 s |
| Google Gemini 3.5 Flash-Lite | 69,0 % | 2,1 s |
| Google Gemini 3.6 Flash | 67,5 % | 3,3 s |
| OpenAI GPT-6 Luna | 65,0 % | 6,9 s |
| OpenAI GPT-6 Luna Pro | 63,0 % | 11,7 s |
| OpenAI GPT-6.1 Sol | 58,0 % | 13,1 s |
| Anthropic Claude Sonnet 5.5 | 53,0 % | 6,0 s |
Ein Durchlauf pro Modell über OpenRouter, mit den Anfrageeinstellungen, die Soba vor Oktober 2026 nutzte. Claude Sonnet 5.5 lieferte beim von OpenRouter gewählten Anbieter für 41 der 200 Fotos ein leeres Lebensmittel. Bei den übrigen Fotos erreichte es 66,7 %. GPT-6.1 Sol überschätzte die Kohlenhydrate im Schnitt um 10 g.
Gemini 3.7 Flash lag bei diesen 200 Mahlzeiten vorn. Wenn acht Modelle an denselben Mahlzeiten verglichen werden, ist das beste Ergebnis zum Teil Glück. Deshalb haben wir es am zweiten Satz von 200 Mahlzeiten geprüft. Dort erreichte es genauso viel wie Gemini 3.6 Flash, jeweils 70,5 %, bei höherem Preis. Soba bleibt bei Gemini 3.6 Flash.
Außerdem haben wir Gemini 3.6 Flash mehr Zeit zum Nachdenken gegeben. Über 400 Mahlzeiten stieg der Anteil innerhalb von 10 g um 4,1 Prozentpunkte, während der Anteil innerhalb von 5 g und die Zahl der Fehler über 30 g gleich blieben. Jeder Scan dauerte doppelt so lange, 6,6 statt 3,5 Sekunden. Wir sind bei der schnelleren Einstellung geblieben.
So haben wir getestet
Auswahl der Mahlzeiten
Ausgangspunkt waren 505 Teller aus dem offiziellen Testsplit von Nutrition5k mit Fotos von oben und 1.457 SNAPMe-Fotos, die vor dem Essen aufgenommen wurden. Vorher haben wir 22 Einträge entfernt: Teller und Mahlzeiten mit ungültigen Werten sowie SNAPMe-Fotos, die sich keinem einzelnen Protokolleintrag eindeutig zuordnen ließen.
Ein Skript mit festem Zufallswert wählte aus jedem Datensatz 100 Mahlzeiten, 25 aus jedem Viertel des Kohlenhydratbereichs. Teller, die in der Kantine innerhalb derselben zehn Minuten fotografiert wurden, sehen sich oft ähnlich, deshalb begrenzte das Skript die Zahl der Teller aus einem Zehn-Minuten-Fenster. Danach wählte es auf dieselbe Weise einen zweiten Satz von 200 Mahlzeiten, ohne gemeinsame Fotos oder Mahlzeiten mit dem ersten.
Zwei Sätze
Fehler haben wir nur an den ersten 200 Mahlzeiten untersucht, und nur dort haben wir Änderungen an Sobas Anweisungen ausprobiert. Die zweiten 200 dienten dazu, zu prüfen, ob ein Ergebnis hält. So ist das Ergebnis von Gemini 3.7 Flash oben aufgefallen.
Soba ausführen
Jedes Foto lief durch denselben Servercode wie in der App: dieselben Anweisungen, dasselbe Modell, dieselben Einstellungen. Die Fotos wurden auf 1.024 Pixel an der längsten Seite verkleinert, wie es die App vor dem Senden tut. Der Hauptlauf hatte keinen Texthinweis, keine Daten der Tiefenkamera und keine nachträgliche Korrektur. Die Läufe mit Hinweis oder Tiefendaten nutzten denselben Code und änderten nur diese Eingabe. Als App-Sprache war Russisch eingestellt.
Messung des Fehlers
Soba gibt verwertbare Kohlenhydrate (ohne Ballaststoffe) und Ballaststoffe getrennt an. Die Datensätze enthalten Gesamtkohlenhydrate, deshalb haben wir Sobas verwertbare Kohlenhydrate plus Ballaststoffe mit dem Gesamtwert verglichen. Das Hauptmaß ist der Anteil der Mahlzeiten mit einer Abweichung von höchstens 10 g. Ein fehlgeschlagener Scan würde als Fehltreffer zählen, es gab keinen. Das 95-%-Intervall stammt aus einem Bootstrap mit 10.000 Wiederholungen, bei dem Mahlzeiten derselben SNAPMe-Person oder desselben Zehn-Minuten-Fensters zusammenbleiben.
Grenzen dieses Tests
- Alle Mahlzeiten stammen aus den USA. Die Teller von Nutrition5k wurden mit einem einzigen Kameraaufbau senkrecht von oben fotografiert.
- Die Referenzwerte enthalten Fehler. Die SNAPMe-Werte stammen aus selbst geführten Ernährungsprotokollen. Bei einigen Tellern von Nutrition5k fehlt sichtbares Essen in der Beschriftung.
- Wir haben die Erkennung von Fotos getestet. Textbeschreibungen, Barcode-Suche und manuelle Eingabe waren nicht Teil des Tests.
- Die Hinweise im Test nannten die Lebensmittel genau so, wie die Datensätze sie protokolliert haben, und ihr Zuwachs unterschied sich stark zwischen den beiden Sätzen (siehe „Ein Texthinweis“).
- Das Ergebnis mit Tiefendaten gilt nur für die 200 Fotos von Nutrition5k, alle senkrecht von oben aufgenommen.
- Wir haben Kohlenhydrate gemessen. Eiweiß, Fett und Kalorien behandelt diese Seite nicht.
- Anbieter aktualisieren ihre Modelle. Die Ergebnisse beschreiben Soba im Oktober 2026.
Soba ist kein Medizinprodukt. Die Werte sind Schätzungen. Gleiche sie mit dem Essen auf deinem Teller und den Produktetiketten ab und folge deinem Diabetes-Behandlungsplan.
Änderungen nach dem Test
- Sobas Ersatzmodell von OpenAI konnte nicht einspringen. Eine Anfrageeinstellung, die Temperatur, akzeptieren OpenAI-Modelle nicht, und die Anfrage ließ nur Anbieter zu, die jede Einstellung akzeptieren. Wir haben die Einstellung entfernt. Das Hauptmodell erreichte mit ihr 68,9 % und ohne sie 68,5 %, das liegt in der üblichen Schwankung wiederholter Durchläufe. Ersatzmodelle sind jetzt Gemini 3.7 Flash und GPT-6 Luna.
- Bei 9 von 3.614 Testanfragen (0,25 %) wiederholte Gemini einen Satz immer wieder, und der Scan dauerte 35 bis 87 Sekunden. Soba begrenzt jetzt die Länge der Antwort, sodass eine solche Schleife früher endet.
Daten und Quellen
Ergebnisse pro Mahlzeit (CSV, 400 Zeilen): Datensatz-ID, Referenzwert, Sobas Schätzung allein anhand des Fotos, der Hinweistext und die Schätzungen mit Hinweis und mit Tiefendaten. Die Datei steht wie SNAPMe unter CC BY-SA 4.0.
- Thames Q, Karpur A, Norris W, et al. Nutrition5k: Towards Automatic Nutritional Understanding of Generic Food. CVPR 2021. arXiv:2103.03375. Datensatz: github.com/google-research-datasets/Nutrition5k, CC BY 4.0.
- Larke JA, Chin EL, Bouzid YY, et al. Surveying Nutrient Assessment with Photographs of Meals (SNAPMe): A Benchmark Dataset of Food Photos for Dietary Assessment. Nutrients. 2023;15(23):4972. PMC10708545. Daten: USDA Ag Data Commons, CC BY-SA 4.0.
- Rodríguez-Jiménez et al. Image-Based Dietary Energy and Macronutrients Estimation with ChatGPT-5: Cross-Source Evaluation Across Escalating Context Scenarios. Nutrients. 2025;17(22):3613. PMC12655113.