Soba

Noggrannhetstest · oktober 2026

Vi testade Sobas kolhydratuppskattningar på 400 måltidsbilder

Bilderna kommer från två offentliga forskningsdataset där kolhydraterna i varje måltid vägdes eller registrerades. Nedan finns resultaten, metoden och de måltider där Soba hade fel.

68,5 %av måltiderna inom 10 g från den faktiska mängden kolhydrater, utifrån en bild

+4procentenheter fler inom 10 g när en ledtråd namngav livsmedlen exakt så som studien registrerade dem

5,2 gmedianfel utifrån en bild

400 bilder, var och en skannad en gång med ledtråd och en gång utan. Ledtråden räknade upp de viktigaste livsmedlen utan mängder, till exempel ”steak; cauliflower; chicken”. Inga misslyckade skanningar. Mediantid 3,1 sekunder per bild.

Vad vi kom fram till

Siffrorna i det här avsnittet är Sobas första uppskattningar utifrån enbart bilden, innan någon rättade en vikt eller lade till en ledtråd. 49 % av uppskattningarna låg inom 5 g från den faktiska mängden kolhydrater. Konfidensintervallet på 95 % för andelen inom 10 g är 64,0 % till 72,9 %.

Små och medelstora måltider hamnade närmast. För måltider under 15 g kolhydrater låg 89 % av uppskattningarna inom 10 g.

Stora måltider underskattades oftast. I 38 av 42 måltider med 60 g kolhydrater eller mer var Sobas uppskattning för låg. Medianuppskattningen var 64 % av den faktiska mängden. Den främsta orsaken är portionens vikt: i 30 av dessa 38 måltider bedömde Soba att maten vägde minst 15 % mindre än den gjorde, medan kolhydraterna per 100 g oftast låg nära.

Vad det här betyder när du använder Soba

Vad du kan lägga till i appen

Resultaten ovan bygger enbart på en bild. I appen kan du skriva några ord om måltiden, och på iPhone med djupkamera mäter Soba också avståndet till maten. Vi upprepade testet med vart och ett av dem.

Andel måltider inom 10 g från den faktiska mängden kolhydrater

Alla 400 bilder

Enbart bild68,5 %
Bild och ledtråd72,8 %

200 bilder från personalmatsal med djupdata

Enbart bild77,5 %
Bild och djup82,0 %
Bild, djup och ledtråd78,5 %

En ledtråd i text

Några ord som ”sött te” eller ”bovete” tillför det som en bild inte kan visa. I testet fick var och en av de 400 bilderna en ledtråd med namnen på de viktigaste livsmedlen från datasetets registrering och utan mängder, till exempel ”Coffee, brewed; Coffee creamer, liquid, fat free”. Andelen inom 10 g steg från 68,5 % till 72,8 % (intervall på 95 % för ökningen: 0,7 till 7,9 procentenheter), och medianfelet sjönk från 5,2 till 4,5 g.

Ledtråden hjälpte mest där bilden kunde tolkas på mer än ett sätt. Utan den tog Soba kaffet med gräddersättning för kolasås och uppskattade 162 g kolhydrater. Med ledtråden uppskattade den 5,5 g, och matregistreringen anger 2,7 g. På SNAPMe-bilderna, som deltagarna tog av sina egna måltider, steg andelen inom 10 g från 59,5 % till 67,5 %. På bilderna från personalmatsalen, där livsmedlen syns tydligt, ändrades den knappt: från 77,5 % till 78,0 %.

En ledtråd namnger maten, men Soba bedömer fortfarande mängden från bilden. Stora måltider underskattades i 37 av 42 fall med ledtråd och i 38 utan. Testledtrådarna kopierade datasetets registreringar exakt. Största delen av ökningen kom från den första uppsättningen på 200 måltider, 8,0 procentenheter. I den andra var den 0,5. En ledtråd som du skriver själv ger troligen mindre.

Avstånd från djupkameran

När du tar bilden med Sobas kamera på en iPhone med LiDAR-skanner eller två eller fler bakre kameror mäter Soba avståndet till maten och talar om för modellen hur bred bilden är i centimeter. Nutrition5k har en inspelning från en djupkamera för varje bild, så vi upprepade datasetets 200 måltider med den här mätningen. Andelen inom 10 g steg från 77,5 % till 82,0 % (intervall på 95 % för ökningen: 1,0 till 8,3 procentenheter), och medianfelet sjönk från 3,9 till 3,1 g. Stora måltider underskattades fortfarande, i 12 av 13 fall. Bilderna togs rakt ovanifrån från en fast höjd. Bilder tagna snett har vi ännu inte mätt.

Med både djupmätning och ledtråd blev resultatet 78,5 %. På de här bilderna från personalmatsalen hade ledtråden lite att tillföra, och intervallet på 95 % för skillnaden mot enbart djup, −8,8 till +1,5 procentenheter, innehåller noll.

Dina rättelser

Om du vet portionens vikt anger du den, och alla siffror räknas om. Portionens vikt var den främsta orsaken till stora fel i det här testet.

Soba visar ett viktintervall bredvid varje uppskattning. På de 200 vägda tallrikarna i Nutrition5k låg tallrikens verkliga vikt inom intervallet i 97 fall, ungefär hälften. Intervallet visar var modellen förväntar sig att vikten ligger. En köksvåg är den säkraste kontrollen.

Resultat efter måltidens storlek

Faktiska kolhydraterMåltiderInom 10 gInom 20 gMedianfel
Under 15 g16788,6 %98,8 %2,0 g
15 till 30 g9469,1 %88,3 %6,2 g
30 till 60 g9754,6 %84,5 %8,4 g
60 g eller mer4219,0 %38,1 %25,4 g

Det samlade resultatet beror på den här fördelningen: 42 % av testmåltiderna hade mindre än 15 g kolhydrater. Om du brukar äta större måltider kan du räkna med ett större typiskt fel.

Grupperna bygger på de faktiska kolhydraterna, som appen inte känner till när du skannar. Grupperat efter Sobas egen uppskattning hamnade 84 måltider på 40 g eller mer, och 55 av dem slog fel med mer än 10 g: 32 för högt och 23 för lågt. Därför föreslår appen att du väger det viktigaste kolhydratlivsmedlet när en uppskattning når 40 g.

Punktdiagram över 400 måltider: faktiska kolhydrater på den vågräta axeln, Sobas uppskattning på den lodräta axeln. De flesta punkter ligger inom bandet ±10 g upp till cirka 50 g. Över 60 g ligger de flesta punkter under bandet.
Varje måltid i testet. Punkter i det skuggade bandet ligger inom 10 g. Punkter under den streckade linjen är underskattningar. En dryck, kaffe med gräddersättning som tolkades som kolasås, hamnade på 162 g och visas vid övre kanten.

Fyra måltider från testet

Två nära uppskattningar och två missar. Sobas namn på livsmedlen och vikterna är hämtade från dess svar.

Tallrik med två bitar majskolv, vitt ris, blomkål och ett äpple.
Faktiskt 49,7 g · Soba 49,7 gMajs, ris, blomkål och ett äpple. Soba bedömde äpplet till 130 g (det vägde 117 g) och majsen till 60 g (74 g). Viktfelen tog ut varandra.
Ugnsrostad potatis med quinoa och grönsaker på en vit tallrik.
Faktiskt 46,0 g · Soba 40,8 gUgnsrostad potatis med quinoa. Soba tog quinoan för couscous. De har liknande mängd kolhydrater, så summan låg nära.
En bit ostpizza och en småkaka med choklad på en vit tallrik.
Faktiskt 33,3 g · Soba 46,6 gEn pizzabit och en småkaka. Soba bedömde båda som tyngre än de var: pizza 85 g (faktiskt 47 g), småkaka 35 g (faktiskt 27 g).
Fyra bitar pizza med ananas, tärnad kyckling och körsbärstomater på en vit tallrik.
Faktiskt 85,1 g · Soba 59,8 gPizza med kyckling, ananas och tomater. Pizzan vägde 233 g, Soba uppskattade 180 g. 16 av de 23 felen över 30 g gällde måltider med 60 g kolhydrater eller mer.

Bilder: Nutrition5k-datasetet, Google Research, CC BY 4.0. Storleken har ändrats för den här sidan.

Två dataset, två sorters bilder

Dataset, 200 måltider varderaInom 10 gMedianfelMedelfel
Nutrition5k77,5 %3,9 g6,8 g
SNAPMe59,5 %6,8 g12,2 g

Tallrikarna i Nutrition5k kommer från Googles personalmatsalar. Varje ingrediens vägdes, och en fast kamera tog varje bild rakt ovanifrån. Förhållandena är rena, och här lyckades Soba bäst.

SNAPMe är en studie från USA:s jordbruksdepartement och UC Davis. 95 personer i USA fotograferade sina egna måltider innan de åt och förde matregistrering i ASA24, ett verktyg för kostbedömning. Bilderna liknar dem som folk tar med Soba. Referensvärdena kommer från deltagarnas matregistreringar, som har egna fel. En del av skillnaden mellan de två dataseten beror på bilderna och en del på referensvärdena.

Jämfört med en publicerad studie

Rodríguez-Jiménez med kollegor (Nutrients, 2025) testade ChatGPT-5 på 74 måltider från SNAPMe med enbart bilder. De rapporterar ett genomsnittligt absolut fel på 12,99 g kolhydrater och en median på 8,75 g.

Enbart bildMåltiderMedelfelMedianfel
ChatGPT-5 (publicerat)7412,99 g8,75 g
Soba20012,2 g6,8 g

Författarna valde sina måltider på ett annat sätt och rättade vissa referensvärden för hand, så de två raderna kan bara jämföras ungefärligt. De visar en liknande felnivå. I samma studie sänkte en kort anteckning om måltidens fett, socker och kött medelfelet till 11,29 g. I Soba sänkte en ledtråd som namngav livsmedlen medelfelet på de 200 SNAPMe-måltiderna från 12,2 till 10,2 g.

Vilken modell Soba använder

Vi körde åtta modeller på de första 200 måltiderna med Sobas instruktioner.

ModellInom 10 gMediantid
Google Gemini 3.7 Flash73,0 %3,7 s
Google Gemini 3.8 Flash71,5 %4,8 s
Google Gemini 3.5 Flash-Lite69,0 %2,1 s
Google Gemini 3.6 Flash67,5 %3,3 s
OpenAI GPT-6 Luna65,0 %6,9 s
OpenAI GPT-6 Luna Pro63,0 %11,7 s
OpenAI GPT-6.1 Sol58,0 %13,1 s
Anthropic Claude Sonnet 5.553,0 %6,0 s

En körning per modell via OpenRouter, med de inställningar för förfrågningar som Soba använde före oktober 2026. Claude Sonnet 5.5 returnerade ett tomt livsmedel för 41 av de 200 bilderna via den leverantör som OpenRouter valde. På övriga bilder nådde den 66,7 %. GPT-6.1 Sol överskattade kolhydraterna med i genomsnitt 10 g.

Gemini 3.7 Flash ledde på de här 200 måltiderna. En modell som vinner en jämförelse av åtta ser ofta bättre ut än den är, så vi kontrollerade den på den andra uppsättningen med 200 måltider. Där fick den samma resultat som Gemini 3.6 Flash, 70,5 % vardera, till ett högre pris. Soba fortsätter med Gemini 3.6 Flash.

Vi testade också att ge Gemini 3.6 Flash mer tid att resonera. På 400 måltider steg andelen inom 10 g med 4,1 procentenheter, medan andelen inom 5 g och antalet fel över 30 g förblev desamma. Varje skanning tog dubbelt så lång tid, 6,6 sekunder i stället för 3,5. Vi behöll den snabbare inställningen.

Hela jämförelsen, med 95-procentiga intervall, data per måltid och ett skript som räknar om varje tabell: åtta AI-modeller på måltidsfoton (på engelska).

Så genomförde vi testet

Urval av måltider

Utgångspunkten var 505 tallrikar från Nutrition5k ur datasetets officiella testdel för bilder ovanifrån och 1 457 bilder från SNAPMe tagna före måltiden. Dessförinnan tog vi bort 22 poster: tallrikar och måltider med ogiltiga värden samt SNAPMe-bilder som inte gick att koppla till exakt en matregistrering.

Ett skript med ett fast slumpfrö tog 100 måltider från varje dataset: 25 från varje fjärdedel av kolhydratspannet. Tallrikar från personalmatsalen som fotograferats inom samma tio minuter ser ofta likadana ut, så skriptet begränsade hur många tallrikar det tog från ett och samma tiominutersfönster. Sedan valde det en andra uppsättning på 200 måltider på samma sätt, utan bilder eller måltider gemensamma med den första.

Två uppsättningar

Vi analyserade fel och provade ändringar i Sobas instruktioner enbart på de första 200 måltiderna. De andra 200 användes för att kontrollera om ett resultat höll. Det var så vi upptäckte resultatet för Gemini 3.7 Flash ovan.

Så körde vi Soba

Varje bild gick genom samma serverkod som appen använder: samma instruktioner, modell och inställningar. Bilderna förminskades till 1 024 pixlar på den längsta sidan, som appen gör före sändning. Huvudkörningen hade ingen ledtråd i text, inga data från djupkameran och ingen rättelse i efterhand. Körningarna med ledtråd eller djupdata använde samma kod och ändrade bara den indatan. Appens språk var inställt på ryska.

Så mätte vi felet

Soba anger kolhydrater exklusive fiber och fiber separat. Dataseten anger totala kolhydrater, så vi jämförde Sobas kolhydrater exklusive fiber plus fiber med totalen. Huvudmåttet är andelen måltider där skillnaden är 10 g eller mindre. En misslyckad skanning skulle räknas som en miss. Det fanns inga. Intervallet på 95 % kommer från en bootstrap med 10 000 omsamplingar som håller ihop måltider från samma SNAPMe-deltagare eller samma tiominutersfönster i personalmatsalen.

Testets begränsningar

Soba är inte en medicinteknisk produkt. Siffrorna är uppskattningar. Jämför dem med maten på tallriken och med produktetiketter och följ din vårdplan för diabetes.

Ändringar efter testet

Data och källor

Resultat per måltid (CSV, 400 rader, på engelska): datasetets ID, referensvärde för kolhydrater, Sobas uppskattning utifrån enbart bilden, ledtrådens text samt uppskattningarna med ledtråd och med djupdata. Filen följer licensen för SNAPMe, CC BY-SA 4.0.