Changelog
Everything new or changed in Gyronomics, from launch to today. Only changes that affect visitors.
Each entry describes the state as it was on its own date. Figures and claims in older entries may have been corrected by newer ones - for the current picture see the data releases page. Data releases
Monthly pita-gyro price bulletin
- A new monthly pita-gyro price bulletin, modelled on a monthly CPI release: pages /deltio and /en/deltio, one issue a month.
- Monthly Pita-Gyro Price Index with September 2026 = 100, from each shop's change against itself.
- The September issue is the base month: the level in 78 cities and the 8 to 25 September pilot comparison, not an official rate.
- Next issue on 4 November 2026, working day 3. No email. The annual Index does not change.
Read the full entry
A monthly pita-gyro price bulletin, modelled on a monthly CPI release. New pages /deltio and /deltio/2026-09, in Greek and English. The Monthly Pita-Gyro Price Index has September 2026 = 100 as its base and is chained from each shop's change against itself, under the v2 rules. The first issue, September 2026, is the base month: index 100, with no official monthly change because there was no regular reading in August. It shows the level in 78 cities, with an exact 95% interval in 48 of them. It also shows the 8 to 25 September pilot comparison, clearly marked as not an official rate: +0.25%, 95% interval from +0.18% to +0.34%, on 1,588 pairs. The official comparison is Eurostat's HICP for August 2026: restaurants and cafés +0.1% on the month and 5.1% on the year. One issue a month, on working day 3 of the following month; the next one is on 4 November 2026. Issues come as JSON and CSV that never change after publication, each with its SHA-256. The API is at /api/public/bulletin.json, with a bilingual note for every field. The page prints without a PDF, and the city table runs on to the next page without leaving a blank one. Percent changes are rounded by one rule, half away from zero, the same in the bulletin and in the rate table of the prices page. No email. The annual Index does not change.
When the 2026 figure changes, and when each release went public
- 214 and EUR 4.30 hold while the September-December catering CPI mean stays at 5.30% or more. Below that the same rule gives EUR 4.25 and 216.
- versions.json gives each release a first_published field, the first recorded publication that served it.
Read the full entry
/api/public/versions.json now gives each version a first_published field: the build time (UTC) of the first recorded publication on gyronomics.gr that served this version or a later one. date stays the day the version was prepared. The difference shows in the four versions from 28.9 to 5.10. They were prepared on those days, but the first recorded publication that served them is the build of 6.10.2026 at 10:15 UTC. For older versions the field stays null, because the build times of their publications were not recorded, and no guess takes their place. A new version also shows null until its publication is in the register, that is, until the next publication. We now publish in advance when the 2026 headline changes. EUR 4.30 and 214 classic gyros hold while the annual catering CPI enters the series at 6.3% or more (the rule's threshold is 6.28%). With 8 months published, that means a September-December mean of at least 5.30%. If it comes in lower, the same rule gives EUR 4.25 and 216, and 2025 stays alone at 214. At 8.7% or more it would give EUR 4.35 and 211. The sentence is on the 2026 page and the thresholds are in year.json (provisional_basis.headline_band).
Gyros by government
- Wage, gyro price and gyros per month by government period, with a lag from 0 to 6 months, separately for the wage and the price.
- What happened by party, the euro era only, a map of wage lag times price lag, what survives under every version, a shareable image and sourced government dates.
Read the full entry
The new page shows how much the net minimum wage rose, how much the price of a classic gyro rose and how many gyros the wage buys per month, by consecutive government period and by party, from the same annual series as the Index. It is arithmetic, not evidence of cause: a government does not set the price or the wage alone, and which year belongs to which government is a choice. That is why the reader moves two settings: the way the years are assigned and a lag from 0 to 6 months, separately for the wage and for the price (the minimum wage is set by decision, the price reacts later), and whatever they choose stays in the link. The 6-month limit is a choice of the page and not a measurement: no source sets how much lag policies have in Greece. It started at 24 months and came down the same day to 9 and then to 6, on the user's instruction. The lag is not removed to get a clean conclusion. Instead the page tries both ways at every combination of wage lag and price lag, with a 7 by 7 map, and shows what survives: of the 9 comparisons 7 hold under all versions, and in gyros per month PASOK comes out above ND in all of them. That holds inside the 6-month limit only, and the page says so at the top: a conclusion that holds inside the limit does not say what holds outside it. The reader also sets a lag rectangle (wage times price) they consider plausible, and the page recomputes the verdicts inside it. For each period the page also shows how much the price rests on interpolation, and the 2012 minimum-wage cut applies from a date when a different government was in office from the one the 30 June rule gives it to. Government dates come from the Wikipedia list of prime ministers, with the raw file and its SHA-256 in the repo and a check in the build. The page also has a button to copy a link, its own sharing card and a shareable image (Greek and English, PNG and SVG), a method section and CSV/JSON downloads. The page does not give a “what would have happened”. It shows what happened (an accounting by party, an identity that does not say the party caused it), what happens inside one currency (the euro era only, with a small-sample mark for parties with few years) and the fifty-year extrapolation only as a range, stated not to be a forecast. In the euro era the ND and PASOK result in gyros is not the same as that of the whole series. The series and the calculations do not change.
GYRO/EUR: the gyro as a currency
- Three pairs in a ticker format: the price of a classic gyro, gyro per euro, and the wage in gyros.
- Range, logarithmic scale, price-bounds band, statistics, a table and downloads.
Read the full entry
The new GYRO/EUR page shows the euro price of a classic gyro, its inverse and the wage Index, from the same annual series as the Index. Choose a pair and a range (5, 10, 25 years or the full series), a linear or logarithmic scale and, for the price, a band of the published bounds. Beside the chart are the change, the compound annual rate, the high, the low and the maximum drawdown. Points are annual, so there are no candlesticks, volume or volatility, and no forecast. The open year is drawn dashed. The page explains why the “all-time high” is nominal: part of the increase is general inflation. Selections stay in the link and across a language switch, and the table and the CSV/JSON downloads give every annual value with its bounds. The series and the calculations do not change.
The economy in gyros
- 14 official measures: GDP, debt, income, consumption, investment and public finances.
- Year and unit selection, history, bounds, quarterly debt and downloads.
Read the full entry
The new Gross Domestic Pita page shows annual observations for 2000–2025 in euro and gyro equivalents, including per-resident measures. Each measure carries its definition, period and source. Household income for 2025 remains unavailable and historical price estimates retain their bounds. Separate quarterly debt uses a fixed 2025 reference price without claiming a measured quarterly gyro price. An interactive example shows why a higher gyro price reduces equivalents without debt repayment and leaves debt/GDP unchanged. Selections persist in links and language changes. JSON, CSV and the original data from six Eurostat sources are published with integrity hashes. The headline Index series is unchanged.
Pita or sandwich, again: the regular measurement across 1,654 menus
- A new article on the naming border in the regular September measurement.
- A new short edition of the book on the corrected series: 12 years change by 1-2 gyros (2012 from 338 to 336), 2026 stays at 214, the mean wage comes from the OECD and the median runs from 2010.
- A 61-city map and a minimum-sample rule for price comparisons.
Read the full entry
NEW ARTICLE: “Pita or sandwich, again: the regular measurement across 1,654 menus”. The naming border in the regular 25 September measurement: sandwich is the majority name in 13 cities (12 in the pilot), Thessaloniki has 115 of 127, without the word 311 of 1,654 would lose their price, and the map has 61 cities, the 10 new ones with coordinates from two sources. New sample rule: the two names' prices are compared only with 4 or more shops each. We state openly that the 7 September article put Ioannina at zero while it was 1 of 34 (now 3 of 49). The 7 September article stays as published, and the two link to each other. NEW SHORT EDITION OF THE BOOK: “One wage, how many gyros?” dated 26 September 2026, 32 pages per language, on the frozen 2026.09.26-mean-wage-source dataset. It includes the sourced 1993-2019 contribution rates by period. The classic index changes in 12 years by 1-2 gyros, e.g. 2011 from 417 to 416 and 2012 from 338 to 336, and the 2012 wage fall is now 18.0% instead of 17.7%. 2026 stays at 214 gyros. The mean wage now comes from the OECD (Taxing Wages), as on the site: 973 gyros in 2000 and 467 in 2025, instead of 971 and 522 with Eurostat earn_nt_net. The median keeps its five SES points: 2006 is shown as an open point (NACE Rev. 1.1) and 2022 is flagged as a new method. The change in the text and in Table 6 now runs 2010-2022, from 930 to 548 gyros, instead of 2006-2022 (966 to 548). The book computes percentage changes from the integer indices, so they can differ from the site by 0.1 point (mean −52.0% against −51.9%). A new edition note on page 2 is generated from the data. The 21 and 25 September editions remain at their addresses.
Gyronomics in 32 pages
- A short book with six chapters, charts, tables and inline sources, in both languages.
- Choose the short or full edition from Data, the homepage or the footer.
- A dedicated book page in navigation and search, with a cover preview, chapter links and edition sharing.
Read the full entry
The new short edition tells the index story from beginning to end, with nine charts, nine tables and twelve bibliography entries. Data now offers two clear choices: the short edition for a first read and the full edition for every article and the documentation. Each has PDF reading and download buttons, page count, size and date. The homepage and footer lead to the chooser. Downloads work without JavaScript. The complete short-edition source package is available as a ZIP. The book preserves the dated 2026.09.19-book series, while the full edition was regenerated from the updated content. Economic figures and index calculations are unchanged. The dedicated /book and /en/book page is now included in navigation and search. It shows the actual short-edition cover and chapter titles, linking to the corresponding PDF pages. Each edition has its own share link, preserved when switching language. Existing Data links remain usable.
New page: the pita gyro rating, CCC with a negative outlook
- The Index Book: thematic chapters, every article, tables and sources in PDF.
- New rating page: the Index in letters, with the boundaries printed.
- Today CCC with a negative outlook: 218 gyros a month, three-year change -16.8%.
- The worst band in 51 years, since 2024. Only 1983 stands at the top.
- 16 actions since 1976, with the move in gyros beside each one.
- With bands of 40 or 60 the letter changes, the ranking does not.
- It is not a credit rating: no state, no debt, no forecast.
Read the full entry
Rating agencies give a letter and an outlook, and everyone understands immediately what it means. The new rating page does the same for the Index, with one difference that is also its reason for existing: the letters add NO information. They are the band the published number falls into, the boundaries are printed, and anyone who dislikes letters can read the number and lose nothing. No weighting, no hidden factors, no committee. Today the net minimum wage buys 218 classic pita gyros a month, which falls in band CCC, and the three years 2023 to 2026 give -16.8%, so the outlook is negative. It is the worst band in the 51 years of the series, first reached in 2024. One year alone stands at the top, 1983, with 511 gyros. The bands are round numbers in the natural unit, every 50 gyros, rather than shares of some peak: a scale anchored on the peak would rewrite history every time a record fell, and one anchored on zero would flatter the present, because zero is never approached. The page also gives the full history: 16 actions since 1976, with the move in gyros beside each one, so that events can be told apart from a boundary merely being crossed. The largest annual fall is 2012, from 414 to 322 gyros. The largest rise is 1982, with 103 more. Because the width of a band is a convention and a convention is not allowed to produce the conclusion, the page shows what happens with bands of 40 and 60 gyros: the letter changes, to C and B respectively, but under every width today stands on the worst band ever reached and 1983 stands alone at the top. And plainly, high up rather than in the small print: this is not a credit rating. It has nothing to do with the Greek state, with debt, and it forecasts nothing. One quantity is graded, how many pita gyros a wage buys. The Index Book collects the core chapters, every article, tables and sources in edited Greek and English PDF editions. It includes linked contents, bookmarks and an edition date. Downloads are available on Data and in the footer. Interactive tools remain on the website. An integrity check binds the files to the content edition. A link to the Gyronomics community on Reddit was also added to the footer.
New page: how many litres of fuel the minimum wage buys
- New "Fuels" page: litres per month on the same wage, 2005-2026.
- 2005-2025: pita gyro -47.1%, heating oil -28.2%, petrol -20.1%, diesel -10.0%.
- The gyro ran faster than every fuel. The Index is not a cost-of-living measure.
- Heating oil on heating months only: out of season it carries the automotive excise.
- Before 2005 there is no price and none is invented; the current year is partial.
- New crisis page: five goods with 2011 set to 100, before the minimum wage was cut.
- Petrol 115 and diesel 116, above 2011. The pita gyro at 52, with its trough in 2025.
- Two crises: the fuels bottom out in austerity, electricity in 2022, the gyro now.
- The 2012 drop is one event: the minimum wage cut by 20.8%, a common numerator.
- Across bases 2008 to 2011 the levels move, the structure does not. The trough stays 2025.
- Electricity is asterisked where the two official sources disagree, not chosen silently.
- The current year enters dashed: inside 2026 the fuels fall back again.
- In euros: the 414 gyros of 2011 would need a wage of 1,759.50 instead of 924.46.
- Why the lines separate: wage +22.0%, petrol +5.7%, pita gyro +133.8%.
- The 2026 mean is not the current price: petrol 109 on the mean, 98 on the last week.
Read the full entry
A new "Fuels" page. The same wage the Index runs, on a different good: how many litres of petrol, automotive diesel and heating oil the net minimum wage buys per month, from 2005 to today. Prices are weekly pump prices including taxes from the European Commission's oil bulletin. The finding is an uncomfortable one, which is why it is worth publishing: between 2005 and 2025 the wage lost 47.1% of its purchasing power in pita gyros, but 28.2% in heating oil, 20.1% in petrol and 10.0% in automotive diesel. The gyro ran faster than every fuel, which means the Index is not a stand-in for the cost of living and that goods are not chosen to flatter a story. Heating oil is measured on heating months only, October to April, and the reason is not cosmetic: out of season the product carries the automotive excise, and in 2005 its summer price equals the automotive price exactly. On an all-week annual mean the fall came out as 6.3% instead of 28.2%. Before 2005 this source has no price and none is invented; the current year is partial, drawn dashed, and excluded from the changes. The published Index does not change. A second page arrived with it. The crisis page sets five goods side by side on the same wage: pita gyro, petrol, automotive diesel, heating oil and electricity. The base is 2011 at 100, the last full year before the minimum wage was cut, and the reason is not a political date but that the wage is the numerator of every line. All five fell, but four found a bottom and came back: petrol now stands at 115 and automotive diesel at 116, above 2011, heating oil at 94 and electricity at 65. The lowest point for the pita gyro is 2025, which is now, and it stands at 52: the same wage buys half of what it bought in 2011. The troughs do not fall in the same year, and there it shows that this is not one crisis but two. The fuels bottom out in 2012 and 2013, during austerity. Electricity in 2022, in the energy crisis. The gyro now. The drop all five lines share in 2012 is not five price stories but one: the minimum wage was cut by 20.8% and the wage is a common numerator. The page decomposes it through an identity, quantity equals wage over price, with no remainder left: the gyro fell 22.2% with its own price moving just 1.9%, while heating oil fell 37.6% because its price rose 27.0% within one year. Because a base year is an argument, every other starting year the data allows is tried, 2008 through 2011: the levels move a great deal, petrol landing anywhere from 73 to 115, but the structure does not move at all. Under every base the trough for the gyro is 2025 and its recovery is zero, and a test pins that so the base cannot become a hidden argument. Electricity carries an asterisk on 2022 and 2023, where two official sources report different changes, 24.2% against 43.1% and 2.1% against -15.0%. The conclusion does not hang on it: electricity is one of four comparators. The chart runs to the current year with the open part drawn dashed, because otherwise it would end on the best fuel year and imply a climb that has already stopped: inside 2026 petrol drops from 115 to 109 and diesel from 116 to 103. The open year is drawn, not measured, and enters no trough, recovery or table. Heating oil does not get it at all: measured on heating months only, its open year holds the January-April leg alone, and across closed years the two legs of the season sit between -15.4% and +42.9% apart. Electricity comes from a half-yearly series whose 2026 has not been published. Every year of it downloads as CSV and JSON, and sits inside the page as well for anyone who does not download files. The finding is also given in euros, because an index of 52 hurts nobody: for the wage to buy the 414 pita gyros of 2011 at the current price it would have to be 1,759.50 euro net instead of 924.46. The same arithmetic gives 849.12 for petrol, which is less than the actual wage, and that is why all five goods are there: a page whose numbers were always frightening would deserve less trust than one whose arithmetic sometimes runs the other way. It now also says why the lines separate, through the same identity across the whole window: the wage rose 22.0% and is shared, so what distinguishes each good is its own price, from 5.7% for petrol to 133.8% for the pita gyro. Finally it says what would change the conclusion: the trough of the gyro sits one point away from the open 2026, and if that year closes where it stands, no recovery at all becomes a recovery of one point. The chart was rebuilt for the phone, where the page is read: every line ends with its name and its current value, so no legend is needed, not even in a screenshot. A reader question added something both pages were missing: the mean of an open year is NOT the current price. 2026 opened at 1.714 euro per litre of petrol and the last week in the bulletin, 14 September 2026, gives 2.158. The mean of 37 weeks puts petrol at 109, but on the last week alone it comes out at 98, already below 2011, and automotive diesel at 88 instead of 103. The lines keep the mean, because that is how every other year of them is measured, but the current price is now written beside it so the page does not appear to disagree with the sign on the forecourt. The pita gyro does not have this problem, and that is said too: its price for the open year is the price being measured now, not a mean of the months so far.
New page: how many pita gyros the mean and median wage buy
- New "Mean and median" page: the same index on three wages, one basis and one unit.
- 2000-2025: the mean loses 46.5% and the minimum 45.6%. The loss is not a minimum-wage story.
- 2006-2022: the median loses 43.2% against 36.1% for the minimum.
- Not a wage cut: wages roughly doubled while the price of a gyro nearly quadrupled.
- Inside the median: decile spread, sex, the under-30s, income tax, and a second-source check.
- Gaps stay gaps: the median has five points and the next is not expected before 2028.
- The published Index does not change: it remains the minimum wage.
Read the full entry
The Index measures the minimum wage, and the comment we heard most often was "fine, but I do not earn the minimum wage". The new "Mean and median" page answers it with a measurement. The same calculation runs on three wages, on one basis and in one unit: classic pita gyros per month, after employee contributions and before income tax. Between 2000 and 2025 the mean wage loses 46.5% of its purchasing power and the minimum 45.6%. Across the years with a measured median, 2006 to 2022, it loses 43.2% against 36.1% for the minimum. The loss is not a minimum-wage story. The reason shows when the index is split into its two parts: wages roughly doubled, but the price of a gyro nearly quadrupled. It is not a wage cut. The page also shows the spread between the poorest and richest tenth, what the figures say by sex and for the under-30s, how much income tax takes off, and a verification against a second independent source. Gaps stay gaps: before 2000 no such measurement exists for Greece, the median has only five points, and the next one is not expected before 2028. Nothing is interpolated or extended backwards. The published Index does not change: it remains the minimum wage.
Reproduce the selected export
- Four graphics from the series, in EL/EN, landscape and portrait, with PNG/SVG downloads.
- A companion JSON and standalone check for the selected CSV export.
- One ZIP with all replay files, plus personal-budget and Reverse JSON and PNG downloads.
- Restore inputs from JSON and save personal-wage and future-scenario calculations.
- Public research-gap JSON and shared selections/version handling across API and MCP.
Read the full entry
Selected exports optionally include a JSON companion identifying parameters, exact archived inputs and the CSV checksum. A standalone verifier checks the calculations and exported fields without private repository access. Success does not certify historical sources. The selected view also downloads as a ZIP containing CSV, companion JSON, archived data, verifier and instructions after checksum validation. Personal budgets and Reverse gain separate reproduction JSON and PNG images of the selected calculation. A standalone verifier recalculates every result. Reference prices identify their exact archive, while personal prices are labelled as assumptions. The guide explains download and offline execution. Files contain personal inputs and are saved only on the user’s request. The legacy personal JSON remains in a disclosure, with complete download and optional-delivery checks. Local reproduction JSON import now validates and previews a saved calculation before applying its inputs. Saved results remain distinct from a new calculation using current data. Personal wages and future scenarios gain JSON, PNG images and standalone verifiers. Exact wage basis, assumptions, horizon limits and previous archives are preserved. Incompatible or changed files do not alter current selections. Earlier application findings were reviewed and completed work was separated from open issues. The new gaps.json exposes the same register as the Gaps page. MCP reads that register, preserves scenario, starting year, unit and version, and explicitly returns errors instead of different data. Public endpoints share version headers, CORS and GET/HEAD/OPTIONS. Current data rejects old versions with HTTP 409 and continuation links, while historical archive lookup and existing payroll-research links remain supported. A guide on Data explains the distinct behavior of catalogues, archives and live checks. The Gyronomics in pictures collection joins Numbers & stories: the historical journey, wage and price from a common base, then and now, and a calculation explainer. Each topic has Greek and English editions with separate landscape and portrait compositions. Images use the same calculations as the pages and retain wage basis, assumptions, daily release, licence and immutable dataset link. PNG/SVG downloads work without JavaScript; embedded fonts retain their licences. Home shows three previews, while related articles, the two comparison-year pages, the Gap and methodology reuse the same files. Fixed comparisons are distinguished from interactive selections. The build checks SVG agreement with the series, checksums and actual deployment assets. Numerical data, methodology and existing archived datasets remain unchanged.
What does a year of pita gyros cost?
- Per-order delivery fees, independent frequency and a complete personal cost breakdown.
- New article with monthly and annual bills, illustrative scenarios and the personal calculator.
Read the full entry
A new bilingual article converts steady weekly frequency into monthly and annual spending. Copy, an accessible table and share images use the current era-price reference and the existing personal-budget calculator. Examples are explicitly hypothetical, holding price fixed and using the calculator’s week/month convention, without order-level charges. A hypothetical price difference is not presented as an observed increase. Direct links lead to the personal calculator and price evidence. The article is included automatically in the blog, related articles, EL/EN metadata and sitemap. Code-generated images have figure and fingerprint checks. The historical Index, wages and model assumptions remain unchanged. Consistency checks validate spending amounts against the declared scenarios only within this article, without accepting them as wages elsewhere. The personal calculator now accepts an optional per-order fee and independent order frequency. Wraps, delivery and totals are shown separately, with the full formula and JSON v2. Orders and fees stay fixed during price comparisons. Missing or invalid inputs cannot retain stale results, and clearing resets all personal fields.
Your own gyro bill
- Personal cost, frequency, income share and a comparison of two prices.
Read the full entry
A new Calculator section accepts your own price, average weekly or monthly quantity and optional available monthly income after deductions and tax. It shows monthly and annual cost, income share and the difference at another price with frequency held fixed. Week/month conventions are explicit and annual cost is calculated before rounding its monthly equivalent. The series reference price is selected explicitly and distinguished from user input. A local JSON download includes inputs, results, income basis and price provenance. Personal spending fields are not written to the URL or database. Section links, clear validation and reset controls are included. Personal spending is separate from the historical Index; no changes to prices, wages, taxation or immutable datasets.
Immutable datasets and independent reproduction
- Complete baseline archive with SHA-256, sources, assumptions, CSV/JSON and a standalone verifier.
- Minimum Wage: year selection, research payments, sources and a before-tax comparison.
Read the full entry
Added bilingual reproduction pages, links from Open Data, the whitepaper and annual pages, and a public catalogue of exact dataset artifacts. The bundle preserves original wage units, registered records separately from estimates, adjustments, composition parameters and calculation provenance. Each state has a SHA-256; same-day changes add immutable artifacts within the same daily release. The standalone program checks integrity, CSV/JSON agreement, the published wage convention and both indices. The period price remains an input: complete reconstruction from originals, verified historical payroll and uncertainty probabilities are not claimed. Archival coverage begins with this delivery, without invented historical snapshots. The build requires archive/canonical-series agreement. Tests cover corrupted data, version selection, downloads and running the downloaded program. Index values and tax scope are unchanged. Added a bilingual Minimum Wage page with one calculation adapter for pages and JSON/CSV exports. The reconstruction shows gross earnings, contributions, other deductions, ordinary earnings and bonuses beside its difference from the current baseline. Subsidy is kept separate and no income tax is subtracted. All 631 recorded payments reconcile exactly; complete breakdowns permit comparison for 46 of 51 years. Missing fields for 1976–1979 and 1981 are not turned into zeroes. Unrecorded payment months/types remain unknown and 2026 is marked as a projection. Sources and row pointers link to a pinned worksheet revision, distinguished from primary evidence. Links added from annual pages, navigation, reproduction, sitemap and the llms guide. Totals, currencies, dates, provenance and export agreement have automatic checks. The published Index is unchanged and a complete validated statutory calendar is not claimed.
New features
- New evidence section on year pages: price, date, geography and composition, with explicit review status, a chart link and matching API data.
- Article comparing 2019 with today, with a chart and sources.
- Numbers & stories with year comparisons and historical trends.
- Quotable text and image exports with sources and version information.
Read the full entry
New evidence section on year pages: price, date, geography and composition, with explicit review status, a chart link and matching API data. Numbers & stories: then and now The resource page now offers two-year comparisons of price, wages and purchasing power, a historical chart distinguishing evidence grades, and short analyses. Text and PNG/SVG images follow the dataset and retain attribution, version and methodological context. A page for journalists Quotable text from the current series, a PNG/SVG image with source, date and version, data links and explicit limitations. The wage basis and units accompany each export. Available in Greek and English. Comparison links: selected years are saved in the URL, with link copying and access to the same comparison in both languages. New article comparing wages, comparable prices and purchasing power since 2019, with a PNG/SVG chart, sources and an explanation of product rescaling. Figures come from the series, with sharing images in both languages.
How many shops back each year, and why 2026 has only three
Read the full entry
The chart draws fifty-one years with the same line and the same confidence, and that is not honest. 2025 rests on fifteen measured shops. 2023 rests on one. A visitor had no way of seeing it, because the two years are drawn exactly alike. So a new section went onto the data page showing the raw count per year: how many shops explicitly back the national price, and from how many independent sources. It is not a confidence grade and not a judgement of ours; it is a plain number. The total is forty-four shops across twelve years. The other thirty-nine years have no reading of their own: their price is computed from the official catering price index between the years that do. That was always written in the methodology, but a sentence on a methodology page is not the same as a number beside the year. Where a source gives a price without saying how many shops it asked, the page says count not given rather than inventing one. That covers 1989, 2011 and 2015. The most uncomfortable line in the section is the last one, which is why it is written in full. 2026 rests on three shops, the number reported by the survey we use. Over the past days a table of forty-five cities and 755 shops, measured by us, went onto the regional page. It is reasonable to assume the 2026 index comes from there. It does not, and the page now says so plainly. Those readings are platform prices and they are used only for the regional factors. The reason they do not yet enter the national price is specific: we do not know how far a platform price sits from a counter price. We have three same-shop pairs and they give two to four per cent. The cleanest is a Thessaloniki gyros shop whose printed August 2026 price list reads all sandwiches four ninety, while the two platforms show five euros and five ten. Two more shops with their own websites at four ninety appear on the platform at five and five ten. Three pairs in one city are not a factor; they are an indication. It is worth saying what would change if they did enter, because it is not what I feared. The 813 readings give a median of four twenty and four twenty-eight weighted by population. The published price is four twenty-five. They agree. That is why there is no rush: bringing them in would add evidence rather than a correction, and I would rather do it once the channel factor rests on more than three shops.
New features
- Scenarios: what the index does if the minimum wage reaches EUR 1,000
- The gap: the wage beat inflation, and still buys half as much
Read the full entry
Scenarios: what the index does if the minimum wage reaches EUR 1,000 Both party leaders promise a minimum wage of a thousand euros. Mitsotakis says above nine hundred and fifty from April 2027, a thousand by January 2028, and half a point off employee contributions from April 2027. Tsipras says a thousand within 2027. The new page takes both pledges and runs them through the same arithmetic that builds the index, to see how many wraps come out the other end. It forecasts nothing and says so in capitals: you set assumptions, you see arithmetic, and every assumption is on screen. The first thing that had to be solved was a trap you cannot see. Politicians speak in gross, times fourteen payments. The index works with net after contributions, annual income divided by twelve. The two happen to be almost equal, because nine hundred and twenty gross gives nine hundred and twenty-four of ours, so if anyone confused them nobody would ever notice. The conversion now uses the exact formula that builds the series, not a copy of it, and there is a check that keeps it that way. Then a price scenario was needed, because a page that only raises the wage tells half the story. There are three and none is typed in: they are computed from the index's own data when the page loads, so they can never go stale. The first has the wrap follow inflation, that is two point three per cent a year. The second, which is the default, uses the pace the wrap actually ran over the decade, eight point five. The third uses the five-year pace, thirteen point two. It is worth saying plainly that 'like inflation' is not the neutral scenario, it is the optimistic end: the wrap has not followed inflation for a single decade. The result is cleaner than we expected. Both pledges are worth nine point three per cent by 2030, and they sit less than half a point apart. Break-even, meaning how much the price can rise before the raise disappears, is two point three per cent a year. At the decade's pace the index goes from two hundred and fifteen wraps to one hundred and sixty-nine. At the five-year pace, to one hundred and forty-three. And in the most optimistic scenario, where the wrap suddenly starts behaving like the price index, the index lands on exactly two hundred and fifteen, which is where it started. We did not write that conclusion; the page computes it and it changes if the numbers change. You can also enter your own figures, year by year, from 2027 to 2030, and see what it would actually take. There is also a switch for something we have documented: a wage rise pushes the price. On the eighteenth of April 2019 the trade announced a three euro wrap and the reason that circulated was the February minimum wage increase. The switch passes half the rise into the price, is off by default, and is declared explicitly as an assumption rather than a measurement, because the 2019 episode calibrates nothing. The gap: the wage beat inflation, and still buys half as much There is a sentence you hear every time the minimum wage comes up: do not worry, if prices rise the wage rises automatically, you never lose purchasing power. We took it seriously and checked it with official figures only, none of our own. And it comes out true. The net minimum wage outran the official price index in every period we looked at. Since 1976 it multiplied by sixty-seven and a half while inflation multiplied by forty-five. Since 2008 by one thirty-nine, while inflation went one thirty-two. So on paper, a worker on the minimum wage buys more today than in 2008. Everyone knows that is not true. The new page adds the third column missing from this argument: the price of the thing itself. The gyro wrap, from 2008 to today, multiplied by two seventy-seven. The same wage buys two hundred and fifteen wraps a month instead of four hundred and thirty. Half. The same comes out whichever year you start from, and you can try them all. It never reverses, and there is a check in the code that will fire if it ever does. Now the hard part, written on the page rather than hidden here. One good is not the basket. We do not say the price index is rigged, because we do not know that and cannot prove it. We say something narrower and easier to check: that one everyday good, documented year by year from newspapers, price-control orders and printed menus, outran both the index and the wage. Second, part of that gap is already official. The catering sub-index runs above the headline one, and the difference in our series is three point seven points a year. It is not hidden, it is measured and published. Third, and the one that stings for us. For the years 1999 to 2018 the wrap price is not measured every year. It comes from the headline index plus that constant spread, tied to the documented ends. At the ends of each comparison, where there is paper, it is a measurement. In the middle it is a model. Better we say it first. And one last choice worth explaining. 1985 stays in the list of starting years even though that year's price is grade D, a projection with no document behind it. Plenty of people use that year, so rather than hide it we show it with its badge beside it. Every starting year carries the documentation grade of its price.
Two articles: how the prices were found, and why a third did not go in
Read the full entry
Two new articles, both about the same work seen from its two sides. The first is how the 1976 and 1978 prices were found. It is effectively a set of instructions: the National Library digital newspaper archive is free, needs no account, has full-text character recognition, and holds Makedonia, Rizospastis, Eleftheria, Embros and Tachydromos. The word souvlaki, restricted to the years where we had no source at all, returns two hundred and sixteen articles. The first two we opened both carried a price. The article also covers what those two documents corrected: the factor that turns a regulated ceiling into a market price went from one measurement to two, and the skewer-to-wrap ratio went from assumption to documentation. And the unexpected part: with the new factor, the 1977 Chania order carried forward to 1989 on headline inflation alone lands half a percent from the documented price, where before it missed by three and a half. Nothing was tuned, it came from an independent document. The second article is about something that did not ship. An undated newspaper clipping gave a souvlaki price inside our largest gap. The year was found with a calendar: 7 November falls on a Monday only four times in the whole drachma period, and three of those are ruled out by the two price-control orders we already hold. Our model landed inside the clipping's range, which means we had a finding that confirmed us exactly where we had nothing. And it still stayed out, because the paper carries no newspaper, date or page. The year is our inference, not a statement by the document. No figure in either article is written by hand. The gap length, the documented years, the two uplift measurements and the two skewer ratios are read from the data, so if someone finds a price for 1980 the articles say so on their own. Along the way I caught a guard that did not bite. The first check looked for the figure anywhere in the article text, so it passed even when the figure was typed by hand, because the same digits appeared in another paragraph. I found it by deliberately breaking the code to see whether the check would fire, and it did not. The check now reads the source rather than the output. No price and no index changed.
New features
- Two articles: the tax that was paid, and the deflator that did not ship
- Every year now shows how its number is produced
- AI assistants can now ask Gyronomics directly, instead of reading stale copies
- The third way to measure the same fall, and why it comes out worst
- Our gaps got a page, along with the history of failures
Read the full entry
Two articles: the tax that was paid, and the deflator that did not ship Two new articles, both about findings that would have been easier to leave inside the code. The first is about tax. The site said in five places that the minimum wage almost never paid income tax. Nobody had found that figure in a source: it had been produced by the model itself, which applied the 2010 scale across the whole series. A scale with a twelve-thousand-euro threshold, applied to a wage of a few thousand, cannot return anything but zero. With the real scales from the government gazette, the minimum wage paid tax in thirteen years, the first being 1990, back in the drachma. The worst is not the present one, it is 2011. The second article is about something that does not work. We tried swapping the deflator for the years with no documented price, from headline CPI to the Food group, which for a food item sounds obviously more correct. The rates came out of the ELSTAT monthly bulletins, scans with no text layer, twenty-two years of them. And the test cut them: projecting the documented 1977 price forward to 1989, headline misses by 3.4% and Food by 5.9%. Nearly double the error, from the series we assumed was an upgrade. The explanation is that souvlaki was a price-controlled item then, so its price did not follow the household basket. It did not ship, and the reason is published. No figure in either article is written by hand, not even the tax thresholds: they are read from the scales themselves. A third thing did not happen at all. We were looking for an input-cost index to cross-check the eleven empty years, from the retail prices in the bulletins. The table carries no pork and no beef in any issue from 1985 to 1997, only poultry. A gyro cost index without pork would look like evidence without being any. No price and no index changed. Every year now shows how its number is produced Every year has its own page, fifty-one in total. Until yesterday they showed three figures, the sources and the visitor reports. From today they also show how the number is produced. The funny part is that the data already existed in full. The code was building, for every year, a complete record with each figure, the formula that produces it and its source. And then serving it only as raw JSON behind a copy button. So it was read by whoever already knew it was there, which is almost nobody. Now it is a page. The wage shows gross per payment, the contribution rate, net per payment with its formula beside it, how many payments the year has, and net on a 12-month basis with its own formula. Those two bases are exactly what had been confused and produced a negative contribution rate in the previous release. Now both are visible, so they cannot be confused silently again. The price shows whether it is documented or derived, the uncertainty range, the method behind it, and when it is a regulated price it says so, because a price order is a cap rather than something anyone paid. The component does no arithmetic of its own, and a check enforces that. If it did, it would be a second source of truth beside the first, which means two places that can disagree. And a bug turned up, in the simplest way possible: by looking at the screen. The uncertainty percentage was being multiplied by a hundred again, so 2011 printed plus-minus 1,500 percent next to a range of 1.70 to 2.30 euro, which is obviously fifteen. The interesting part is why the check I had already written missed it. Because it looked at the data, where the percentage was always right. The bug was in the rendering, in how the number is drawn, and no data check can see there. The guard went in at the right level. No price and no index changed. AI assistants can now ask Gyronomics directly, instead of reading stale copies Gyronomics has a problem its own success created. Eight sites republish the index, usually frozen at the version of the day they wrote their article. So a search for the price of souvlaki in 1985 now returns our own figures, wrong. And because models read what they find in searches, the error multiplies. From today there is another route. An MCP server, a program that hands the data as tools to any AI assistant. Instead of reading an article from 2025, the model asks directly and gets the current version with its source. But the important part is not freshness, it is honesty. Every answer carries the year's documentation grade, and when the year sits in a gap it says so explicitly. Ask about 1985 and you do not get a bare number: you get the number together with the fact that it is grade D, that no primary price exists, and a link to the gaps page. The same is written into the tool description, which is the only text a model is guaranteed to read before calling. The server carries no copy of the data, it queries the public API. Carrying it would make it one more source that goes stale, which is exactly what it sets out to solve. To work, it needed a new endpoint serving the full record for one year. And bringing that into the light exposed a real bug that had been hiding for months. The wage block printed its formula alongside, but the formula did not produce the number it printed: it mixed the per-payment contract wage with the annualised one. The contribution rate came from dividing the two, so it was wrong in forty-six of the fifty-one years and came out negative for 2026: minus half a point instead of fourteen. It was hidden because it was served only as raw JSON behind a copy button that probably nobody ever pressed. The moment it became a public endpoint it was obvious. It is fixed, and a check now runs every formula on every year to see whether it really produces the figure beside it. A missing flag was added to the open data too: which years have a modelled tax. The site's table said so, the file you downloaded did not. Two more bugs turned up in the server itself, and only because we tested it by sending messages from the command line rather than wiring it to a real client. It closed before it could answer, and it could answer out of order. No price and no index changed. The third way to measure the same fall, and why it comes out worst The site showed two answers to the same question. It had a third one computed, and nobody saw it. The first is period gyros: how many of what they sold then the wage of the time could buy. The second is classic equivalents: how many of today's wraps, so we compare like with like. The third asks something neither of them catches: how many of exactly the ones you ate, with no fries inside and the portion the 1977 price order specified. It is the strictest of the three, because it holds both composition and size fixed. And it gives the harshest figure: 887 at the 1983 peak, 262 today. A fall of seventy percent. It went in as a new tab in the deep layers, next to VAT, portion size, tax and the classic-equivalent. But we did not put it in bare, and this is the part that needs care. This index rests on two figures nobody measured: how much of the price pays for the fries that went inside, and how much pays for the bigger meat portion. They are reasonable estimates, not measurements. An index with immovable assumptions presents itself as a measurement when it is not, and that is exactly the mistake we already paid for with income tax. So two sliders went in, inside the tab itself so each assumption sits next to the number it drives. Move one and watch what happens. Zero out the fries and 2026 goes from 262 to 236. And the moment you touch anything, the page tells you that you are no longer looking at the published figures. A check enforces the most important part: the column must follow the sliders. Had it called the fixed function, you would move the bars and the number would sit still, which is worse than having no sliders at all. Two more fixes went into checks of my own. One expected to find two input elements when the two bars are produced by a single loop, so it failed on correct code. The other merely asked that the word controlling the warning exist somewhere in the file: deleting the condition from the render left the word alive in its declaration, so the check passed while the warning never appeared. No price and no published index changed. The third lens replaces none of them, it is added beside them. Our gaps got a page, along with the history of failures Every dataset has holes. Most do not show them. From today ours have a page of their own. There are two gaps. Eleven consecutive years for which not a single primary gyro price exists, and twelve years for which we do not know the tax scale. The page says which they are, why they are missing, and most importantly exactly which document closes each one. Not "any source", but a prefectural market order, a Gazette issue B of the period, a dated shop price list. The part I think is most useful is the history of failures. Six entries on what has already been searched and what it gave. The statistical office's digital library, where the retail price table has bread, meat and oil but no prepared food. The tax circular archive, effectively empty before 1988. The Gazette archive, which searches by number rather than content, so it does not help unless you already know the decision's number. And a forum post giving a 1993 price that does not even say whether it means a skewer or a wrap, which are different products. There is one success too, because a page with six failures reads as giving up. Ministerial decisions of the period are almost untraceable, unless some law ratified them and printed them in full in its annex. That trick closed four tax years, and it doubles as the instruction for whoever searches next. The page also names eight sites that do not count as a source. They republish our own index, often frozen at an old release, so a search for a historical price returns them and they arrive in good faith as evidence. A circular reference is not a second source. One thing occupied us while building it. A page that advertises gaps is the worst page to let go stale. If someone sends a price for 1985 tomorrow and the page keeps asking for help with it, we are asking for help with a problem we solved. So no year is written by hand: everything is computed from the data itself, and a check forbids hard-coding a year range into the descriptions. No price and no index changed. Not one new data point was added. It simply gathers in one place what we already knew we did not know.
The "if it had followed inflation" scenario never said since when
Read the full entry
The chart always had a switch answering the question "fine, but what if the gyro had simply followed official inflation?". The answer is striking: the wage would buy 612 gyros a month instead of 215. What the page never said was the more important half of the sentence: since when. The answer was "since 1998", written inside the code and nowhere else. And because picking the base year is the commonest trick in economic charts - choose a convenient year and the chart says whatever you want - not stating it at all is worse than choosing it. Now the reader chooses. Beside the switches there is a list of fifteen years, and the scenario is recomputed from whichever one you pick. From 1989 the difference is 618 gyros a month, from 1998 397, from 2011 167, from 2019 106. Two things were not hidden. First: only years with their own price from a source are offered - not ones computed between two others. 1983 would give the most spectacular number of all, but the 1983 price is an interpolation, and compounding an official index on top of guesswork produces something that looks like a measurement while it is not. Each year shows its documentation grade. Second: pick 2025 and the difference comes out near zero. We could have hidden that option and nobody would have noticed. It stays, because it says something true: over the last year the gyro price moved almost exactly in line with the official catering index. The divergence is not happening now - it accumulated over previous decades.
- New
New "data releases" page and a permanent button for visitor prices
Read the full entry
The release history was buried halfway down the Data page with no URL of its own. It now has a page at /releases with the notes for every version and an automatic diff of the headline figures. It matters most to anyone who downloaded a CSV or embedded the chart: if they request an old version the API replies that it has been superseded, and now points them at a human page instead of raw JSON. Separately, the "visitor gyro prices" page was hidden inside a submenu; there is now a permanent button at the top of every page, and the number of submissions appears next to the title. Two links that led nowhere were also fixed: the pointer from visitor prices to the correction form and the reverse - the two forms live on different pages, but each linked to the other as if they were on the same one. Finally, the changelog dates were checked one by one and entries are now always sorted chronologically.
- New
New "classic gyro wrap" page, findings card and glossary
A new page shows when the product itself changed: a 37-40 g portion under price controls, fries moving inside the pita in the early 1990s and standard by 2000, a portion peak of about 110 g in 2015 and shrinkage since. A "what the data says" card now derives its conclusions automatically from the dataset instead of hand-written numbers, and a glossary explains CPI, price controls, shrinkflation, quality adjustment and the A-D confidence grades. Also fixed a stale reference to a 4.70 EUR price for 2025 that predated the level correction (correct value: 3.92 EUR national median).
- New
New features
- Live Eurostat data check
- In 5 steps and per-section sharing
- Articles and a mini widget
- Light theme, life stories and Born year tool
- Reverse Gyronomics
- Gyro Day
- Work time per gyro
- Price quiz and quick navigation
- Time Machine, 2030 Outlook and country comparison
Read the full entry
Live Eurostat data check The Data page now runs a live check that pulls official Eurostat HICP annual rates for Greece (general and food-service CPI) and compares them with the Gyronomics dataset. You can see at a glance whether anything differs or a new year is available, plus when the source was last updated. In 5 steps and per-section sharing A new /how-it-works page explains in five steps what the index measures, for first-time visitors. Each main tool (home, calculator, Gyro Day) now has its own share button with ready-made text. The data page shows when the dataset was last updated, and the orange accent is now more readable in light theme. Articles and a mini widget A new Articles section (/blog) with short reads: why we count gyros instead of euros, the minimum wage 1985-2026, and what food-service CPI is. There is also a new mini widget you can embed on other sites, showing the year's index as a compact counter. Light theme, life stories and Born year tool Light theme is now the default (dark still one click away). The home page gained short stories (1985, 2002, 2010), a 3-step explanation of the calculation and a Born year tool with ready-to-share text. Reverse Gyronomics The index flipped (now the home page): the index flipped. Pick a reference year or your own gyro target and see how high the net minimum wage would need to be each year to cover it. Gyro Day New section showing the date each year by which the salary has covered one gyro per day for the whole year, with a timeline for all years. Work time per gyro The work section now shows how many minutes and hours of work one gyro costs each year. Price quiz and quick navigation A Guess the Price game for historical gyro prices and a quick navigation bar between sections. Time Machine, 2030 Outlook and country comparison New sections: a time machine slider with historical context, 2030 scenarios and a purchasing power comparison with Germany, Spain and Portugal.
- New
New features
- Salary calculator, share card and FAQ
- Index calculation modal and methodology
Salary calculator, share card and FAQ Calculate how many gyros your own salary buys, share the result as an image and read answers to frequent questions. Index calculation modal and methodology New Index Calculation dialog with a year-by-year breakdown, tooltips everywhere and a Methodology section under the chart.
- New
Public price reports
Visitors can now submit what they remember a gyro costing each year and everyone sees the annual averages.
- New
Gyronomics launch
1985-2026 chart (net salary vs gyro price), data table with purchasing power index and Greek/English support.
Price and wage coverage: price collection of September 2026, catering CPI to August 2026, minimum wage in force since 1 April 2026. Dataset version 2026.10.10-monthly-bulletin, last updated 2026-10-10.