Version 1.1 · 3 ranked objects · France · snapshot 22 September 2026
The Griotta Desire Index
How far does an object travel from stuff to story? For each object below we take a typical French shop price and divide it by a benchmark value of the upstream commodity inputs it requires. We call the result the Material Multiple.
Three objects survive the ranking here, out of sixteen we tried. A hundred eventually, if the evidence ever supports it.
A 100 g dark chocolate bar sells at 6.4× the benchmark value of its commodity inputs (range 4.8× to 13×). The other ranked objects: whole coffee beans 2.5×, ground coffee 2.4×.
V1.1 correction — 22 September 2026
The first version trusted broad product-category labels too much. A post-publication audit found that some categories mixed materially different products under one name: the baguette row, published at 25×, turned out to rest on part-baked packets, half-loaf multipacks and a corn bread, with only two plain baguettes among twenty-three products. V1.1 applies explicit product-identity rules before calculating any retail median. Four rows did not survive it, including the largest number we had.
This is not a profit index.
A €2.99 chocolate bar built from €0.46 of benchmark-priced cocoa beans and sugar does not mean €2.53 of profit. That distance pays for grinding, conching, tempering, moulding, wrapping, freight, refrigeration, the shop it sits in, and the people at every one of those steps. The index measures the distance. It says nothing about who captures it.
| Dark chocolate bar100 g | €2.9919 products | €0.46 | 6.4×4.8–13× | Food |
| Whole coffee beans250 g | €5.1317 products | €2.07 | 2.5×2.2–3.4× | Food |
| Ground coffee250 g | €4.9748 products | €2.07 | 2.4×2–3.4× | Food |
Sort by tapping a column. Retail is the median across distinct products observed in French shops; n is how many products, not how many sightings. Commodity inputs are benchmark prices for the upstream commodity, before processing and packaging. The smaller figure under each multiple is the plausible range, not a margin of error.
How the number is built
Every denominator comes from one document: the World Bank's commodity price sheet, the September 2026 edition, published on 2 September 2026. Using a single free, dated PDF for every commodity means the whole bottom half of this index can be checked against one source.
Those quotes are upstream commodities, and that distinction does real work. Cocoa beans are not chocolate; green coffee is not roasted coffee; wheat is not flour. Each object therefore carries a conversion with a source attached: 70 g of cocoa mass needs about 87 g of beans once shell and moisture come off, and 250 g of roasted coffee starts as roughly 298 g of green beans. All three surviving objects need such a conversion, so none of them compares like with like on material alone.
Every numerator comes from observed French shop prices recorded in the Open Food Facts Open Prices database: real prices, each with a date and a shop, not list prices or estimates. Each distinct product counts once, however often it was recorded, so a heavily photographed barcode cannot set the price of a whole category. The published count is distinct products, not sightings.
Before any of that, each product has to be the same kind of object the benchmark prices. That check is new in V1.1 and it is where most candidates now die: a name-level rule per archetype, written down and hashed before the numbers were recomputed, deciding what a “plain dark chocolate tablet” or “roast-and-ground coffee” is allowed to contain. Price is never an input to that decision. A product whose name does not state what the rule needs is excluded rather than assumed compliant, which is why 154 chocolate products became 19.
Dollars become euros at a single European Central Bank reference rate, dated 22 September 2026. One rate, one date, applied to everything.
This is a snapshot, not a live index. The V1 snapshot is 22 September 2026. Commodity prices are the August 2026 monthly averages from the sheet published on 2 September 2026, with low and high bands from the five most recent periods it prints. Retail prices are French shop prices observed in the 180 days to 22 September 2026. The exchange rate is the ECB reference rate for 22 September 2026. Nothing here updates on its own, and cocoa in particular has moved a long way in two years, so the date matters as much as the number.
What the Material Multiple does not mean
It is not markup. Markup compares a selling price to what the seller paid for the finished goods. This compares a selling price to a commodity benchmark several transformations earlier in the chain. A shop buying that chocolate bar at wholesale is nowhere near the cocoa bean price, and the two numbers should never be quoted as if they were comparable.
It is not margin or profit. Everything between a commodity and a finished object has to come out of that distance: manufacturing, labour, tooling, formulation, design, certification, packaging, logistics, tariffs, distribution, retail rent, returns, warranty, marketing, and the brand and convenience that made someone pick this object rather than another.
It does not mean an object is overpriced. A high multiple means an object has travelled a long way from its inputs. Travelling a long way is what manufacturing is. Coffee at 2.4× and a baguette at 6.4× are not a bargain and a scandal; they are two different amounts of processing, packaging, distribution and shop.
It is not the cost of the materials a manufacturer buys. These are benchmark quotes for bulk lots at a named delivery point, and they exclude processing, refining, freight into Europe, grade premiums and contract terms. They generally sit below what a maker pays for a usable processed ingredient, because they are priced earlier in the chain, but we do not claim a fixed direction for every object: grade, variety, origin and yield pull different ways. Where an object has a bias we can name, the per-object notes say so.
It is not every material in the product either. Packaging is excluded from the denominator for every object, uniformly, even when it is a large part of what you carry home. Commodity-input value is not the same thing as all the physical materials required to put an object on a shelf.
The three that survived
Ground coffee, 250 g — 2.4×. Among the lowest multiples in the index, and the reason is mass. Roasting burns off water, so a 250 g pack starts as roughly 300 g of green beans, and arabica is expensive. The coffee in the bag is most of what you are paying for. Median observed price €4.97 across 48 shop prices; estimated beans €2.07.
Dark chocolate, 100 g — 6.4×. The only row where the denominator is now set by the data rather than by an assumption: the cocoa share comes from the median stated percentage of the 19 tablets that passed the identity rules, which is 70%. That much cocoa mass needs roughly 87 g of beans once shell and moisture come off. Cocoa has been historically expensive lately, which pulls this multiple down compared to where it would have sat two years ago. The same bar at 2024 cocoa prices would look considerably more dramatic, which is a good argument for printing the date on everything.
Whole coffee beans, 250 g — 2.5×. The same commodity as the row above, minus the grinding, and it lands within a rounding step of it. That is the closest thing to a control in this index: two rows built from the same benchmark and the same conversion, sampled separately, agreeing.
What sits between the material and the price
Reading down the table, the pattern is not about greed. It is about how much has to happen to the commodity. Coffee and sugar are close to their inputs: roast, grind, pack. Pasta and bread involve milling, mixing, shaping, drying or baking, and a distribution chain that must handle a perishable product. Chocolate adds fermentation, roasting, conching, tempering and a cold chain.
It also explains why coffee sits at the bottom: green coffee is expensive, roasting only removes water, and the bean in the bag is most of what you are buying. Wheat is cheap, and a baguette is milling, mixing, proving, baking and a delivery round before seven in the morning.
Then there is the part that is not manufacturing at all: the design, the name, the wrapper, the shelf position, and the reason a shopper reaches for one bar rather than the one beside it. That is the part this project finds interesting, and it is precisely the part the arithmetic cannot separate out. The multiple bundles the factory and the story together and refuses to say which is which.
It is also worth saying plainly that none of this is an argument against buying things. Paying for a well-made object, or for one you simply like, is not a mistake that needs correcting.
What this version leaves out, and why
Sixteen objects were specified; three are ranked. A plain cotton T-shirt and a plain silver ring have clean denominators — cotton and silver are both commodity rows — but their retail side could not be sampled reproducibly, because mainstream French clothing and jewellery sites block automated access and what does load is marketplace listings with varying specification and seller.
Four more were dropped on the denominator, after checking what each commodity quote physically is. White sugar: the benchmark is raw sugar imported into Europe, not the refined sugar in the bag. Dried pasta: durum wheat has no benchmark row and bread wheat is the wrong species. Milk chocolate: a fifth of the bar is milk powder, which has no row at all. Orange juice: the benchmark is navel table fruit, not the varieties pressed for juice. Pasta and milk chocolate had the two largest retail samples in the whole project and were rejected anyway.
Corn flakes and bar soap were dropped for a duller reason: after filtering, one and three usable prices survived against a floor of ten distinct products.
Then V1.1 removed four more, and this is the part worth reading. Applying product-identity rules to rows that had already been published showed that several of them were aggregating different objects. The baguette row, at 25× the largest number in the project, held two plain baguettes among twenty-three products; the rest were part-baked packets, half-loaf multipacks, organic and seeded variants, a pain au maïs and a pain paillasse. White rice was fourteen parts basmati and jasmine to six parts plain long grain, priced against a non-aromatic benchmark; only three plain products remained. Wheat flour mixed T45 and T55 with T65, wholemeal and specialty grades that need a different milling yield; seven survived. Instant coffee contained cappuccino and chicory mixes; nine survived. All four fall under the floor of ten and are out.
Black tea went the same way: four plain black teas once flavoured and Earl Grey blends were removed. It was already outside the ranking at 21×, and it is now out of the index altogether.
Which leaves three objects, two of them coffee. That is a thin index and we are publishing it thin rather than padding it. It is not a claim about consumer products in general; it is what a reproducible France-and-euros pipeline supports once every product in a row has to be the same kind of object. Every candidate and every rejection is listed in the working, with the rule that removed it, so nothing quietly disappeared for having an inconvenient ratio.
Why we are counting this at all
Griotta is a pause you put in front of your own shopping apps, so a purchase gets decided rather than completed. That work keeps running into the same question from a different angle: an object arrives in front of you already carrying a price, and the price is the one thing about it you are not invited to examine.
This index is one attempt to examine it, with a deliberately narrow question and a deliberately boring method. It sits beside our work on how buying became faster than deciding, on velocity bias, and on what stores say to hurry the decision. Knowing that a bar of chocolate is 6.4× its cocoa will not stop anyone buying chocolate, and it should not. It is just a fact about the object that nobody was going to hand you at the till.
Method and sources
- World Bank Commodities Price Data (the “Pink Sheet”) — September 2026 edition, published 2 September 2026. Every commodity quote, with low and high bands taken from the five most recent periods in the same sheet, and with what each row physically represents recorded per object.
- Open Food Facts — Open Prices — observed French retail prices, filtered to France and euros, within 180 days, accessed 22 September 2026, aggregated one product at a time.
- European Central Bank euro reference rate — 22 September 2026, 1 EUR = 1.1463 USD.
- Conversion assumptions. Cocoa bean to usable nib, 0.78–0.82: shell is 14–15% of bean weight (peer-reviewed analysis of cocoa bean shells), with roasting removing a further 4–5% as moisture. Coffee roast loss, 12–20% of green mass (Royal Coffee, Sweet Maria's). Soluble coffee, about 2.4 kg of green coffee per kg (stated in the background section of a published process patent) . The two conversions that follow belonged to rows V1.1 removed, and are kept only so the working stays complete: wheat to white flour, 72–78% extraction, with 75% the FAO convention. Baguette, dough at roughly 1.68× the flour weight from 65–68% hydration, less 10–13% oven loss.
- The data. Download the V1.1 data (CSV) — every published figure, with its retail sample sizes, commodity-input range, multiple range, confidence, and a dataset_version column so a downloaded file cannot be mistaken for the superseded 1.0. It is generated from the same dataset this page renders, so the two cannot disagree. The Pink Sheet benchmarks behind it, converted to euros per kilogram, are a separate file: download the commodity benchmarks (CSV).
- Composition, quantities, conversion yields, the confidence rules, the candidate manifest and every rejected object are documented per object. The calculation is a script over four files: given the same inputs, it reproduces every number on this page exactly.
Found something wrong? That is the point of publishing the working. Tell us and we will correct it in v2.
Citing and reusing this index
- Cite as: Griotta (2026). The Griotta Desire Index, version 1.1, snapshot of 22 September 2026. https://griotta.com/desire-index
- Data: Version 1.1 data, one row per object (CSV), under ODbL 1.0. Contains information from Open Food Facts Open Prices, which is made available here under the Open Database License (ODbL). The commodity columns use World Bank figures (CC BY 4.0).
- Data: Commodity benchmarks, one row per Pink Sheet series (CSV), under CC BY 4.0. World Bank Commodity Price Data (The Pink Sheet), itself under CC BY 4.0, converted to euros per kilogram by Griotta. It contains no Open Prices data.
- Sources: retail prices from Open Food Facts Open Prices, under the Open Database License (ODbL). Commodity benchmarks from the World Bank Commodities Price Data (The Pink Sheet), under CC BY 4.0. Exchange rate from the European Central Bank euro reference rate. Calculated 22 September 2026.
Part of Griotta Research.