{
  "ok": true,
  "source": {
    "id": "worldbank-cons",
    "label": "World Bank — Consumption",
    "auto": true
  },
  "base": {
    "code": "GB",
    "name": "United Kingdom",
    "currency": "GBP",
    "flag": "🇬🇧",
    "pppIndex": 0.924,
    "year": 2025
  },
  "target": {
    "code": "PT",
    "name": "Portugal",
    "currency": "EUR",
    "flag": "🇵🇹",
    "pppIndex": 0.649,
    "year": 2025
  },
  "items": [
    {
      "item": {
        "id": "rent-1br-center",
        "label": "Rent: 1-bedroom, city center",
        "emoji": "🏙️",
        "category": "Housing",
        "usPrice": 1750,
        "unit": "/month",
        "elasticity": 1.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 1566.67,
        "local": {
          "currency": "GBP",
          "amount": 1189.1
        }
      },
      "target": {
        "usd": 955.39,
        "local": {
          "currency": "EUR",
          "amount": 845.52
        }
      },
      "pctDiff": -39.02
    },
    {
      "item": {
        "id": "rent-1br-outside",
        "label": "Rent: 1-bedroom, outside center",
        "emoji": "🏡",
        "category": "Housing",
        "usPrice": 1400,
        "unit": "/month",
        "elasticity": 1.4,
        "monthlyQty": 1
      },
      "base": {
        "usd": 1253.34,
        "local": {
          "currency": "GBP",
          "amount": 951.29
        }
      },
      "target": {
        "usd": 764.31,
        "local": {
          "currency": "EUR",
          "amount": 676.41
        }
      },
      "pctDiff": -39.02
    },
    {
      "item": {
        "id": "rent-3br-center",
        "label": "Rent: 3-bedroom, city center",
        "emoji": "🏢",
        "category": "Housing",
        "usPrice": 3200,
        "unit": "/month",
        "elasticity": 1.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 2864.78,
        "local": {
          "currency": "GBP",
          "amount": 2174.37
        }
      },
      "target": {
        "usd": 1747,
        "local": {
          "currency": "EUR",
          "amount": 1546.1
        }
      },
      "pctDiff": -39.02
    },
    {
      "item": {
        "id": "meal-cheap",
        "label": "Meal, inexpensive restaurant",
        "emoji": "🍜",
        "category": "Food out",
        "usPrice": 18,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 8
      },
      "base": {
        "usd": 16.5,
        "local": {
          "currency": "GBP",
          "amount": 12.52
        }
      },
      "target": {
        "usd": 11.19,
        "local": {
          "currency": "EUR",
          "amount": 9.9
        }
      },
      "pctDiff": -32.18
    },
    {
      "item": {
        "id": "dinner-mid",
        "label": "Dinner for two, mid-range",
        "emoji": "🍽️",
        "category": "Food out",
        "usPrice": 75,
        "unit": "3 courses",
        "elasticity": 1.1,
        "monthlyQty": 2
      },
      "base": {
        "usd": 68.75,
        "local": {
          "currency": "GBP",
          "amount": 52.18
        }
      },
      "target": {
        "usd": 46.62,
        "local": {
          "currency": "EUR",
          "amount": 41.26
        }
      },
      "pctDiff": -32.19
    },
    {
      "item": {
        "id": "fastfood-combo",
        "label": "Fast-food combo meal",
        "emoji": "🍔",
        "category": "Food out",
        "usPrice": 11,
        "unit": "",
        "elasticity": 1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 10.16,
        "local": {
          "currency": "GBP",
          "amount": 7.71
        }
      },
      "target": {
        "usd": 7.14,
        "local": {
          "currency": "EUR",
          "amount": 6.32
        }
      },
      "pctDiff": -29.72
    },
    {
      "item": {
        "id": "milk",
        "label": "Milk, 1L",
        "emoji": "🥛",
        "category": "Groceries",
        "usPrice": 1.1,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 8
      },
      "base": {
        "usd": 1.03,
        "local": {
          "currency": "GBP",
          "amount": 0.78
        }
      },
      "target": {
        "usd": 0.78,
        "local": {
          "currency": "EUR",
          "amount": 0.69
        }
      },
      "pctDiff": -24.27
    },
    {
      "item": {
        "id": "bread",
        "label": "Bread, fresh loaf 500g",
        "emoji": "🍞",
        "category": "Groceries",
        "usPrice": 3.2,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 6
      },
      "base": {
        "usd": 3,
        "local": {
          "currency": "GBP",
          "amount": 2.28
        }
      },
      "target": {
        "usd": 2.26,
        "local": {
          "currency": "EUR",
          "amount": 2
        }
      },
      "pctDiff": -24.67
    },
    {
      "item": {
        "id": "eggs",
        "label": "Eggs, dozen",
        "emoji": "🥚",
        "category": "Groceries",
        "usPrice": 3.4,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 4
      },
      "base": {
        "usd": 3.19,
        "local": {
          "currency": "GBP",
          "amount": 2.42
        }
      },
      "target": {
        "usd": 2.41,
        "local": {
          "currency": "EUR",
          "amount": 2.13
        }
      },
      "pctDiff": -24.45
    },
    {
      "item": {
        "id": "chicken",
        "label": "Chicken breast, 1kg",
        "emoji": "🍗",
        "category": "Groceries",
        "usPrice": 10,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 4
      },
      "base": {
        "usd": 9.39,
        "local": {
          "currency": "GBP",
          "amount": 7.13
        }
      },
      "target": {
        "usd": 7.08,
        "local": {
          "currency": "EUR",
          "amount": 6.27
        }
      },
      "pctDiff": -24.6
    },
    {
      "item": {
        "id": "rice",
        "label": "White rice, 1kg",
        "emoji": "🍚",
        "category": "Groceries",
        "usPrice": 4,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 2
      },
      "base": {
        "usd": 3.75,
        "local": {
          "currency": "GBP",
          "amount": 2.85
        }
      },
      "target": {
        "usd": 2.83,
        "local": {
          "currency": "EUR",
          "amount": 2.5
        }
      },
      "pctDiff": -24.53
    },
    {
      "item": {
        "id": "apples",
        "label": "Apples, 1kg",
        "emoji": "🍎",
        "category": "Groceries",
        "usPrice": 4.8,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 3
      },
      "base": {
        "usd": 4.51,
        "local": {
          "currency": "GBP",
          "amount": 3.42
        }
      },
      "target": {
        "usd": 3.4,
        "local": {
          "currency": "EUR",
          "amount": 3.01
        }
      },
      "pctDiff": -24.61
    },
    {
      "item": {
        "id": "cheese",
        "label": "Local cheese, 1kg",
        "emoji": "🧀",
        "category": "Groceries",
        "usPrice": 12,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 1
      },
      "base": {
        "usd": 11.26,
        "local": {
          "currency": "GBP",
          "amount": 8.55
        }
      },
      "target": {
        "usd": 8.49,
        "local": {
          "currency": "EUR",
          "amount": 7.51
        }
      },
      "pctDiff": -24.6
    },
    {
      "item": {
        "id": "water-bottle",
        "label": "Water, 1.5L bottle",
        "emoji": "💧",
        "category": "Groceries",
        "usPrice": 2,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 8
      },
      "base": {
        "usd": 1.88,
        "local": {
          "currency": "GBP",
          "amount": 1.43
        }
      },
      "target": {
        "usd": 1.42,
        "local": {
          "currency": "EUR",
          "amount": 1.26
        }
      },
      "pctDiff": -24.47
    },
    {
      "item": {
        "id": "pint",
        "label": "Domestic beer, pint (draught)",
        "emoji": "🍺",
        "category": "Drinks",
        "usPrice": 6,
        "unit": "0.5L",
        "elasticity": 1.1,
        "monthlyQty": 6
      },
      "base": {
        "usd": 5.5,
        "local": {
          "currency": "GBP",
          "amount": 4.17
        }
      },
      "target": {
        "usd": 3.73,
        "local": {
          "currency": "EUR",
          "amount": 3.3
        }
      },
      "pctDiff": -32.18
    },
    {
      "item": {
        "id": "beer-import",
        "label": "Imported beer, 330ml bottle",
        "emoji": "🍻",
        "category": "Drinks",
        "usPrice": 8,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 7.75,
        "local": {
          "currency": "GBP",
          "amount": 5.88
        }
      },
      "target": {
        "usd": 6.73,
        "local": {
          "currency": "EUR",
          "amount": 5.96
        }
      },
      "pctDiff": -13.16
    },
    {
      "item": {
        "id": "cappuccino",
        "label": "Cappuccino",
        "emoji": "☕",
        "category": "Drinks",
        "usPrice": 5,
        "unit": "regular",
        "elasticity": 1.1,
        "monthlyQty": 12
      },
      "base": {
        "usd": 4.58,
        "local": {
          "currency": "GBP",
          "amount": 3.48
        }
      },
      "target": {
        "usd": 3.11,
        "local": {
          "currency": "EUR",
          "amount": 2.75
        }
      },
      "pctDiff": -32.1
    },
    {
      "item": {
        "id": "coke",
        "label": "Coke/Pepsi, 330ml",
        "emoji": "🥤",
        "category": "Drinks",
        "usPrice": 2.3,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 0
      },
      "base": {
        "usd": 2.16,
        "local": {
          "currency": "GBP",
          "amount": 1.64
        }
      },
      "target": {
        "usd": 1.63,
        "local": {
          "currency": "EUR",
          "amount": 1.44
        }
      },
      "pctDiff": -24.54
    },
    {
      "item": {
        "id": "transit-month",
        "label": "Public transport, monthly pass",
        "emoji": "🚇",
        "category": "Transport",
        "usPrice": 65,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 60.06,
        "local": {
          "currency": "GBP",
          "amount": 45.59
        }
      },
      "target": {
        "usd": 42.19,
        "local": {
          "currency": "EUR",
          "amount": 37.34
        }
      },
      "pctDiff": -29.75
    },
    {
      "item": {
        "id": "transit-single",
        "label": "Public transport, one-way",
        "emoji": "🎫",
        "category": "Transport",
        "usPrice": 2.75,
        "unit": "",
        "elasticity": 1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 2.54,
        "local": {
          "currency": "GBP",
          "amount": 1.93
        }
      },
      "target": {
        "usd": 1.78,
        "local": {
          "currency": "EUR",
          "amount": 1.58
        }
      },
      "pctDiff": -29.92
    },
    {
      "item": {
        "id": "taxi-start",
        "label": "Taxi start (normal tariff)",
        "emoji": "🚕",
        "category": "Transport",
        "usPrice": 4,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 3.67,
        "local": {
          "currency": "GBP",
          "amount": 2.79
        }
      },
      "target": {
        "usd": 2.49,
        "local": {
          "currency": "EUR",
          "amount": 2.2
        }
      },
      "pctDiff": -32.15
    },
    {
      "item": {
        "id": "taxi-km",
        "label": "Taxi, per km",
        "emoji": "🛣️",
        "category": "Transport",
        "usPrice": 1.8,
        "unit": "/km",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 1.65,
        "local": {
          "currency": "GBP",
          "amount": 1.25
        }
      },
      "target": {
        "usd": 1.12,
        "local": {
          "currency": "EUR",
          "amount": 0.99
        }
      },
      "pctDiff": -32.12
    },
    {
      "item": {
        "id": "petrol",
        "label": "Petrol/gasoline, 1L",
        "emoji": "⛽",
        "category": "Transport",
        "usPrice": 0.95,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 0.92,
        "local": {
          "currency": "GBP",
          "amount": 0.7
        }
      },
      "target": {
        "usd": 0.8,
        "local": {
          "currency": "EUR",
          "amount": 0.71
        }
      },
      "pctDiff": -13.04
    },
    {
      "item": {
        "id": "utilities",
        "label": "Basic utilities, 85m² apartment",
        "emoji": "💡",
        "category": "Utilities & comms",
        "usPrice": 200,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 184.8,
        "local": {
          "currency": "GBP",
          "amount": 140.26
        }
      },
      "target": {
        "usd": 129.8,
        "local": {
          "currency": "EUR",
          "amount": 114.87
        }
      },
      "pctDiff": -29.76
    },
    {
      "item": {
        "id": "internet",
        "label": "Internet, 60Mbps+ unlimited",
        "emoji": "🌐",
        "category": "Utilities & comms",
        "usPrice": 70,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 64.68,
        "local": {
          "currency": "GBP",
          "amount": 49.09
        }
      },
      "target": {
        "usd": 45.43,
        "local": {
          "currency": "EUR",
          "amount": 40.21
        }
      },
      "pctDiff": -29.76
    },
    {
      "item": {
        "id": "mobile",
        "label": "Mobile plan, 10GB+ data",
        "emoji": "📱",
        "category": "Utilities & comms",
        "usPrice": 45,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 41.58,
        "local": {
          "currency": "GBP",
          "amount": 31.56
        }
      },
      "target": {
        "usd": 29.21,
        "local": {
          "currency": "EUR",
          "amount": 25.85
        }
      },
      "pctDiff": -29.75
    },
    {
      "item": {
        "id": "gym",
        "label": "Gym membership, month",
        "emoji": "🏋️",
        "category": "Lifestyle",
        "usPrice": 50,
        "unit": "/month",
        "elasticity": 1.1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 45.84,
        "local": {
          "currency": "GBP",
          "amount": 34.79
        }
      },
      "target": {
        "usd": 31.08,
        "local": {
          "currency": "EUR",
          "amount": 27.51
        }
      },
      "pctDiff": -32.2
    },
    {
      "item": {
        "id": "cinema",
        "label": "Cinema seat",
        "emoji": "🎬",
        "category": "Lifestyle",
        "usPrice": 14,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 2
      },
      "base": {
        "usd": 12.83,
        "local": {
          "currency": "GBP",
          "amount": 9.74
        }
      },
      "target": {
        "usd": 8.7,
        "local": {
          "currency": "EUR",
          "amount": 7.7
        }
      },
      "pctDiff": -32.19
    },
    {
      "item": {
        "id": "haircut",
        "label": "Men's haircut",
        "emoji": "💈",
        "category": "Lifestyle",
        "usPrice": 30,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 27.5,
        "local": {
          "currency": "GBP",
          "amount": 20.87
        }
      },
      "target": {
        "usd": 18.65,
        "local": {
          "currency": "EUR",
          "amount": 16.51
        }
      },
      "pctDiff": -32.18
    },
    {
      "item": {
        "id": "jeans",
        "label": "Jeans (mid-range brand)",
        "emoji": "👖",
        "category": "Lifestyle",
        "usPrice": 55,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 53.29,
        "local": {
          "currency": "GBP",
          "amount": 40.45
        }
      },
      "target": {
        "usd": 46.27,
        "local": {
          "currency": "EUR",
          "amount": 40.95
        }
      },
      "pctDiff": -13.17
    },
    {
      "item": {
        "id": "sneakers",
        "label": "Running shoes (brand)",
        "emoji": "👟",
        "category": "Lifestyle",
        "usPrice": 90,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 87.2,
        "local": {
          "currency": "GBP",
          "amount": 66.18
        }
      },
      "target": {
        "usd": 75.71,
        "local": {
          "currency": "EUR",
          "amount": 67
        }
      },
      "pctDiff": -13.18
    },
    {
      "item": {
        "id": "coworking",
        "label": "Coworking hot desk, month",
        "emoji": "💻",
        "category": "Lifestyle",
        "usPrice": 250,
        "unit": "/month",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 229.18,
        "local": {
          "currency": "GBP",
          "amount": 173.95
        }
      },
      "target": {
        "usd": 155.39,
        "local": {
          "currency": "EUR",
          "amount": 137.52
        }
      },
      "pctDiff": -32.2
    }
  ],
  "categoryTotals": [
    {
      "category": "Housing",
      "base": 5684.79,
      "target": 3466.7,
      "pctDiff": -39.02
    },
    {
      "category": "Food out",
      "base": 95.41,
      "target": 64.95,
      "pctDiff": -31.93
    },
    {
      "category": "Groceries",
      "base": 38.01,
      "target": 28.67,
      "pctDiff": -24.57
    },
    {
      "category": "Drinks",
      "base": 19.99,
      "target": 15.2,
      "pctDiff": -23.96
    },
    {
      "category": "Transport",
      "base": 68.84,
      "target": 48.38,
      "pctDiff": -29.72
    },
    {
      "category": "Utilities & comms",
      "base": 291.06,
      "target": 204.44,
      "pctDiff": -29.76
    },
    {
      "category": "Lifestyle",
      "base": 455.84,
      "target": 335.8,
      "pctDiff": -26.33
    }
  ],
  "monthlyBudget": {
    "base": 2184.81,
    "target": 1414,
    "pctDiff": -35.28
  },
  "attribution": {
    "sources": [
      {
        "id": "worldbank-cons",
        "label": "World Bank — Consumption",
        "attribution": "Computed from World Bank Open Data (PA.NUS.PRVT.PP ÷ PA.NUS.FCRF). Latest available year per country.",
        "updated": "2026-09-09",
        "year": 2025,
        "url": "https://data.worldbank.org/indicator/PA.NUS.PRVT.PP"
      }
    ],
    "citation": "Geo-Parity — Cost of Living & Salary Comparison. Data: World Bank — Consumption (2025). https://geo-parity.com/cost-of-living/united-kingdom-vs-portugal/",
    "permalink": "https://geo-parity.com/cost-of-living/united-kingdom-vs-portugal/",
    "terms": "Free to use and quote with attribution. Figures are estimates for orientation, not advice."
  }
}