Methodology
How UICPI collects data, constructs the index, and tests for Granger causality against official CPI.
1. Data Collection
UICPI collects restaurant menu prices from two sources: (1) live scraping of food delivery and restaurant aggregator platforms (Zomato, GrabFood, GoFood, Deliveroo, JustEat, Uber Eats, Yelp) and (2) historical archive reconstruction via the Wayback Machine to extend series back to 2018.
Item names are classified into food categories (RICE_DISH, NOODLE_DISH, SOUP_STEW, BREAD_PASTRY, etc.) using an NLP pipeline combining keyword matching and language detection across English, Malay, Indonesian, Thai, and Hindi.
All prices are converted to USD at collection-date exchange rates to enable cross-country comparison.
2. Chain vs Independent
UICPI uses "chain" and "independent" as the human-facing labels for the two sub-indices. The economic content below uses the legacy "formal sector" / "informal sector" terminology under review.
Formal sector restaurants are defined as registered businesses listed on major food delivery platforms with consistent branding and menu structure: sit-down restaurants, fast food chains, and café chains.
Informal sector vendors are defined as unbranded or lightly branded single-stall operations typically associated with street food culture: hawker stalls (Singapore/Malaysia), warung (Indonesia), food courts, roadside vendors. These are identified by low price points, absence of a formal business name, and listing in hawker-specific sections of aggregator platforms.
In economies such as Indonesia, India, and Thailand, the informal food sector represents 40–65% of household food expenditure (UNDP data) yet remains entirely absent from all existing alternative price indices.
3. Index Construction
The UICPI follows a Laspeyres-type chain-linked index. For each country and month:
- Item-level price relatives are computed: pt / p0 where p0 is the base period price.
- Relatives are averaged within food categories (RICE_DISH, NOODLE_DISH, etc.) weighted by item count.
- Category relatives are aggregated to sector-level sub-indices (chain, independent).
- The combined UICPI is a weighted average of chain and independent sub-indices (default weights: 50/50, robustness-tested at ±10pp).
All indices are normalised to 100 at the base month. Where matched-model overlap is insufficient, a mean-price fallback method is used (flagged in the coverage_note field).
4. Matched-Model Approach
Following Cavallo & Rigobon (2016), UICPI attempts to track identical or closely matched items across time periods. A matched pair exists when the same restaurant and item name appears in both the current and base period.
When matched-model overlap is below a minimum threshold (currently 2 items), the index falls back to average price relatives computed from all available items in that category and month. This fallback is transparent — all index observations carry a coverage_note field indicating the method used.
Singapore, which has the largest dataset (6,527 price observations), has the highest matched-model coverage; other countries currently rely primarily on the mean-price fallback pending additional data collection.
5. Granger Causality Testing
To test whether UICPI leads official CPI, we apply the Granger causality testfollowing Cavallo & Rigobon (2016, Review of Economics and Statistics):
- Both UICPI and CPI series are first-differenced to achieve stationarity (verified by ADF test).
- Lag order is selected by AIC (max 6 lags for monthly data, 3 for annual).
- F-test of joint significance of lagged ΔUICPI terms in the ΔCPI equation. A significant result (p < 0.10) indicates UICPI Granger-causes CPI.
- The lag at which the F-statistic is maximised is reported as the estimated lead time in months.
Data requirement: ≥24 monthly observations per country. Current dataset has 10–15 observations per country — full testing will be enabled once monthly collection is complete.
6. Pass-Through Regression
To test the hypothesis that informal vendors exhibit lower cost pass-through than formal restaurants, we estimate:
Δln Psectort = α + β × Δln CPIt + εt
A coefficient β = 1 indicates full pass-through (prices move one-for-one with official CPI). β < 1 indicates partial absorption. The hypothesis predicts βinformal< βformal — informal vendors absorb more of any input cost increase rather than passing it to consumers.
7. Comparison vs Big Mac Index and BPP
| Feature | Big Mac Index | MIT BPP | UICPI ★ |
|---|---|---|---|
| Scope | Single item (Big Mac) | Online retail goods | Restaurant menus + hawker stalls |
| Sector coverage | Chain only (McDonald's) | Chain only (e-commerce) | Chain + Independent |
| Service sector | No | No | Yes |
| Independent vendors | No | No | Yes |
| Collection method | Manual annual survey | Automated web scraping | Automated web scraping + archives |
| Countries (developing) | Limited | Mostly developed | 8 incl. 4 emerging |
| Update frequency | Annual | Daily | Monthly (in progress) |
| Lead indicator test | No | Yes (chain restaurants) | Yes (chain + independent) |
BPP = MIT Billion Prices Project (Cavallo & Rigobon 2016). ★ UICPI is the only index to cover the informal food economy.
Key References
- Cavallo, A. & Rigobon, R. (2016). The Billion Prices Project: Using online prices for measurement and research. Journal of Economic Perspectives, 30(2), 151–178.
- The Economist. (1986). The Big Mac Index. The Economist.
- UNDP. (2021). Informal food systems and household expenditure in developing economies. United Nations Development Programme.
- Granger, C.W.J. (1969). Investigating causal relations by econometric models and cross-spectral methods. Econometrica, 37(3), 424–438.