{
  "ok": true,
  "source": {
    "id": "worldbank-cons",
    "label": "World Bank — Consumption",
    "auto": true
  },
  "base": {
    "code": "IE",
    "name": "Ireland",
    "currency": "EUR",
    "flag": "🇮🇪",
    "pppIndex": 1.021,
    "year": 2025
  },
  "target": {
    "code": "ES",
    "name": "Spain",
    "currency": "EUR",
    "flag": "🇪🇸",
    "pppIndex": 0.687,
    "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": 1801.67,
        "local": {
          "currency": "EUR",
          "amount": 1594.48
        }
      },
      "target": {
        "usd": 1034.61,
        "local": {
          "currency": "EUR",
          "amount": 915.63
        }
      },
      "pctDiff": -42.57
    },
    {
      "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": 1441.33,
        "local": {
          "currency": "EUR",
          "amount": 1275.58
        }
      },
      "target": {
        "usd": 827.69,
        "local": {
          "currency": "EUR",
          "amount": 732.51
        }
      },
      "pctDiff": -42.57
    },
    {
      "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": 3294.47,
        "local": {
          "currency": "EUR",
          "amount": 2915.61
        }
      },
      "target": {
        "usd": 1891.86,
        "local": {
          "currency": "EUR",
          "amount": 1674.3
        }
      },
      "pctDiff": -42.57
    },
    {
      "item": {
        "id": "meal-cheap",
        "label": "Meal, inexpensive restaurant",
        "emoji": "🍜",
        "category": "Food out",
        "usPrice": 18,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 8
      },
      "base": {
        "usd": 18.42,
        "local": {
          "currency": "EUR",
          "amount": 16.3
        }
      },
      "target": {
        "usd": 11.91,
        "local": {
          "currency": "EUR",
          "amount": 10.54
        }
      },
      "pctDiff": -35.34
    },
    {
      "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": 76.73,
        "local": {
          "currency": "EUR",
          "amount": 67.91
        }
      },
      "target": {
        "usd": 49.63,
        "local": {
          "currency": "EUR",
          "amount": 43.92
        }
      },
      "pctDiff": -35.32
    },
    {
      "item": {
        "id": "fastfood-combo",
        "label": "Fast-food combo meal",
        "emoji": "🍔",
        "category": "Food out",
        "usPrice": 11,
        "unit": "",
        "elasticity": 1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 11.23,
        "local": {
          "currency": "EUR",
          "amount": 9.94
        }
      },
      "target": {
        "usd": 7.56,
        "local": {
          "currency": "EUR",
          "amount": 6.69
        }
      },
      "pctDiff": -32.68
    },
    {
      "item": {
        "id": "milk",
        "label": "Milk, 1L",
        "emoji": "🥛",
        "category": "Groceries",
        "usPrice": 1.1,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 8
      },
      "base": {
        "usd": 1.12,
        "local": {
          "currency": "EUR",
          "amount": 0.99
        }
      },
      "target": {
        "usd": 0.81,
        "local": {
          "currency": "EUR",
          "amount": 0.72
        }
      },
      "pctDiff": -27.68
    },
    {
      "item": {
        "id": "bread",
        "label": "Bread, fresh loaf 500g",
        "emoji": "🍞",
        "category": "Groceries",
        "usPrice": 3.2,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 6
      },
      "base": {
        "usd": 3.25,
        "local": {
          "currency": "EUR",
          "amount": 2.88
        }
      },
      "target": {
        "usd": 2.37,
        "local": {
          "currency": "EUR",
          "amount": 2.1
        }
      },
      "pctDiff": -27.08
    },
    {
      "item": {
        "id": "eggs",
        "label": "Eggs, dozen",
        "emoji": "🥚",
        "category": "Groceries",
        "usPrice": 3.4,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 4
      },
      "base": {
        "usd": 3.46,
        "local": {
          "currency": "EUR",
          "amount": 3.06
        }
      },
      "target": {
        "usd": 2.52,
        "local": {
          "currency": "EUR",
          "amount": 2.23
        }
      },
      "pctDiff": -27.17
    },
    {
      "item": {
        "id": "chicken",
        "label": "Chicken breast, 1kg",
        "emoji": "🍗",
        "category": "Groceries",
        "usPrice": 10,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 4
      },
      "base": {
        "usd": 10.17,
        "local": {
          "currency": "EUR",
          "amount": 9
        }
      },
      "target": {
        "usd": 7.41,
        "local": {
          "currency": "EUR",
          "amount": 6.56
        }
      },
      "pctDiff": -27.14
    },
    {
      "item": {
        "id": "rice",
        "label": "White rice, 1kg",
        "emoji": "🍚",
        "category": "Groceries",
        "usPrice": 4,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 2
      },
      "base": {
        "usd": 4.07,
        "local": {
          "currency": "EUR",
          "amount": 3.6
        }
      },
      "target": {
        "usd": 2.96,
        "local": {
          "currency": "EUR",
          "amount": 2.62
        }
      },
      "pctDiff": -27.27
    },
    {
      "item": {
        "id": "apples",
        "label": "Apples, 1kg",
        "emoji": "🍎",
        "category": "Groceries",
        "usPrice": 4.8,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 3
      },
      "base": {
        "usd": 4.88,
        "local": {
          "currency": "EUR",
          "amount": 4.32
        }
      },
      "target": {
        "usd": 3.55,
        "local": {
          "currency": "EUR",
          "amount": 3.14
        }
      },
      "pctDiff": -27.25
    },
    {
      "item": {
        "id": "cheese",
        "label": "Local cheese, 1kg",
        "emoji": "🧀",
        "category": "Groceries",
        "usPrice": 12,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 1
      },
      "base": {
        "usd": 12.2,
        "local": {
          "currency": "EUR",
          "amount": 10.8
        }
      },
      "target": {
        "usd": 8.89,
        "local": {
          "currency": "EUR",
          "amount": 7.87
        }
      },
      "pctDiff": -27.13
    },
    {
      "item": {
        "id": "water-bottle",
        "label": "Water, 1.5L bottle",
        "emoji": "💧",
        "category": "Groceries",
        "usPrice": 2,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 8
      },
      "base": {
        "usd": 2.03,
        "local": {
          "currency": "EUR",
          "amount": 1.8
        }
      },
      "target": {
        "usd": 1.48,
        "local": {
          "currency": "EUR",
          "amount": 1.31
        }
      },
      "pctDiff": -27.09
    },
    {
      "item": {
        "id": "pint",
        "label": "Domestic beer, pint (draught)",
        "emoji": "🍺",
        "category": "Drinks",
        "usPrice": 6,
        "unit": "0.5L",
        "elasticity": 1.1,
        "monthlyQty": 6
      },
      "base": {
        "usd": 6.14,
        "local": {
          "currency": "EUR",
          "amount": 5.43
        }
      },
      "target": {
        "usd": 3.97,
        "local": {
          "currency": "EUR",
          "amount": 3.51
        }
      },
      "pctDiff": -35.34
    },
    {
      "item": {
        "id": "beer-import",
        "label": "Imported beer, 330ml bottle",
        "emoji": "🍻",
        "category": "Drinks",
        "usPrice": 8,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 8.07,
        "local": {
          "currency": "EUR",
          "amount": 7.14
        }
      },
      "target": {
        "usd": 6.88,
        "local": {
          "currency": "EUR",
          "amount": 6.09
        }
      },
      "pctDiff": -14.75
    },
    {
      "item": {
        "id": "cappuccino",
        "label": "Cappuccino",
        "emoji": "☕",
        "category": "Drinks",
        "usPrice": 5,
        "unit": "regular",
        "elasticity": 1.1,
        "monthlyQty": 12
      },
      "base": {
        "usd": 5.12,
        "local": {
          "currency": "EUR",
          "amount": 4.53
        }
      },
      "target": {
        "usd": 3.31,
        "local": {
          "currency": "EUR",
          "amount": 2.93
        }
      },
      "pctDiff": -35.35
    },
    {
      "item": {
        "id": "coke",
        "label": "Coke/Pepsi, 330ml",
        "emoji": "🥤",
        "category": "Drinks",
        "usPrice": 2.3,
        "unit": "",
        "elasticity": 0.8,
        "monthlyQty": 0
      },
      "base": {
        "usd": 2.34,
        "local": {
          "currency": "EUR",
          "amount": 2.07
        }
      },
      "target": {
        "usd": 1.7,
        "local": {
          "currency": "EUR",
          "amount": 1.5
        }
      },
      "pctDiff": -27.35
    },
    {
      "item": {
        "id": "transit-month",
        "label": "Public transport, monthly pass",
        "emoji": "🚇",
        "category": "Transport",
        "usPrice": 65,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 66.36,
        "local": {
          "currency": "EUR",
          "amount": 58.73
        }
      },
      "target": {
        "usd": 44.66,
        "local": {
          "currency": "EUR",
          "amount": 39.52
        }
      },
      "pctDiff": -32.7
    },
    {
      "item": {
        "id": "transit-single",
        "label": "Public transport, one-way",
        "emoji": "🎫",
        "category": "Transport",
        "usPrice": 2.75,
        "unit": "",
        "elasticity": 1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 2.81,
        "local": {
          "currency": "EUR",
          "amount": 2.49
        }
      },
      "target": {
        "usd": 1.89,
        "local": {
          "currency": "EUR",
          "amount": 1.67
        }
      },
      "pctDiff": -32.74
    },
    {
      "item": {
        "id": "taxi-start",
        "label": "Taxi start (normal tariff)",
        "emoji": "🚕",
        "category": "Transport",
        "usPrice": 4,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 4.09,
        "local": {
          "currency": "EUR",
          "amount": 3.62
        }
      },
      "target": {
        "usd": 2.65,
        "local": {
          "currency": "EUR",
          "amount": 2.35
        }
      },
      "pctDiff": -35.21
    },
    {
      "item": {
        "id": "taxi-km",
        "label": "Taxi, per km",
        "emoji": "🛣️",
        "category": "Transport",
        "usPrice": 1.8,
        "unit": "/km",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 1.84,
        "local": {
          "currency": "EUR",
          "amount": 1.63
        }
      },
      "target": {
        "usd": 1.19,
        "local": {
          "currency": "EUR",
          "amount": 1.05
        }
      },
      "pctDiff": -35.33
    },
    {
      "item": {
        "id": "petrol",
        "label": "Petrol/gasoline, 1L",
        "emoji": "⛽",
        "category": "Transport",
        "usPrice": 0.95,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 0.96,
        "local": {
          "currency": "EUR",
          "amount": 0.85
        }
      },
      "target": {
        "usd": 0.82,
        "local": {
          "currency": "EUR",
          "amount": 0.73
        }
      },
      "pctDiff": -14.58
    },
    {
      "item": {
        "id": "utilities",
        "label": "Basic utilities, 85m² apartment",
        "emoji": "💡",
        "category": "Utilities & comms",
        "usPrice": 200,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 204.2,
        "local": {
          "currency": "EUR",
          "amount": 180.72
        }
      },
      "target": {
        "usd": 137.4,
        "local": {
          "currency": "EUR",
          "amount": 121.6
        }
      },
      "pctDiff": -32.71
    },
    {
      "item": {
        "id": "internet",
        "label": "Internet, 60Mbps+ unlimited",
        "emoji": "🌐",
        "category": "Utilities & comms",
        "usPrice": 70,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 71.47,
        "local": {
          "currency": "EUR",
          "amount": 63.25
        }
      },
      "target": {
        "usd": 48.09,
        "local": {
          "currency": "EUR",
          "amount": 42.56
        }
      },
      "pctDiff": -32.71
    },
    {
      "item": {
        "id": "mobile",
        "label": "Mobile plan, 10GB+ data",
        "emoji": "📱",
        "category": "Utilities & comms",
        "usPrice": 45,
        "unit": "/month",
        "elasticity": 1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 45.94,
        "local": {
          "currency": "EUR",
          "amount": 40.66
        }
      },
      "target": {
        "usd": 30.92,
        "local": {
          "currency": "EUR",
          "amount": 27.36
        }
      },
      "pctDiff": -32.69
    },
    {
      "item": {
        "id": "gym",
        "label": "Gym membership, month",
        "emoji": "🏋️",
        "category": "Lifestyle",
        "usPrice": 50,
        "unit": "/month",
        "elasticity": 1.1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 51.16,
        "local": {
          "currency": "EUR",
          "amount": 45.28
        }
      },
      "target": {
        "usd": 33.08,
        "local": {
          "currency": "EUR",
          "amount": 29.28
        }
      },
      "pctDiff": -35.34
    },
    {
      "item": {
        "id": "cinema",
        "label": "Cinema seat",
        "emoji": "🎬",
        "category": "Lifestyle",
        "usPrice": 14,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 2
      },
      "base": {
        "usd": 14.32,
        "local": {
          "currency": "EUR",
          "amount": 12.67
        }
      },
      "target": {
        "usd": 9.26,
        "local": {
          "currency": "EUR",
          "amount": 8.2
        }
      },
      "pctDiff": -35.34
    },
    {
      "item": {
        "id": "haircut",
        "label": "Men's haircut",
        "emoji": "💈",
        "category": "Lifestyle",
        "usPrice": 30,
        "unit": "",
        "elasticity": 1.1,
        "monthlyQty": 1
      },
      "base": {
        "usd": 30.69,
        "local": {
          "currency": "EUR",
          "amount": 27.16
        }
      },
      "target": {
        "usd": 19.85,
        "local": {
          "currency": "EUR",
          "amount": 17.57
        }
      },
      "pctDiff": -35.32
    },
    {
      "item": {
        "id": "jeans",
        "label": "Jeans (mid-range brand)",
        "emoji": "👖",
        "category": "Lifestyle",
        "usPrice": 55,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 55.46,
        "local": {
          "currency": "EUR",
          "amount": 49.08
        }
      },
      "target": {
        "usd": 47.33,
        "local": {
          "currency": "EUR",
          "amount": 41.89
        }
      },
      "pctDiff": -14.66
    },
    {
      "item": {
        "id": "sneakers",
        "label": "Running shoes (brand)",
        "emoji": "👟",
        "category": "Lifestyle",
        "usPrice": 90,
        "unit": "",
        "elasticity": 0.4,
        "monthlyQty": 0
      },
      "base": {
        "usd": 90.75,
        "local": {
          "currency": "EUR",
          "amount": 80.31
        }
      },
      "target": {
        "usd": 77.45,
        "local": {
          "currency": "EUR",
          "amount": 68.54
        }
      },
      "pctDiff": -14.66
    },
    {
      "item": {
        "id": "coworking",
        "label": "Coworking hot desk, month",
        "emoji": "💻",
        "category": "Lifestyle",
        "usPrice": 250,
        "unit": "/month",
        "elasticity": 1.1,
        "monthlyQty": 0
      },
      "base": {
        "usd": 255.78,
        "local": {
          "currency": "EUR",
          "amount": 226.37
        }
      },
      "target": {
        "usd": 165.42,
        "local": {
          "currency": "EUR",
          "amount": 146.4
        }
      },
      "pctDiff": -35.33
    }
  ],
  "categoryTotals": [
    {
      "category": "Housing",
      "base": 6537.47,
      "target": 3754.16,
      "pctDiff": -42.57
    },
    {
      "category": "Food out",
      "base": 106.38,
      "target": 69.1,
      "pctDiff": -35.04
    },
    {
      "category": "Groceries",
      "base": 41.18,
      "target": 29.99,
      "pctDiff": -27.17
    },
    {
      "category": "Drinks",
      "base": 21.67,
      "target": 15.86,
      "pctDiff": -26.81
    },
    {
      "category": "Transport",
      "base": 76.06,
      "target": 51.21,
      "pctDiff": -32.67
    },
    {
      "category": "Utilities & comms",
      "base": 321.61,
      "target": 216.41,
      "pctDiff": -32.71
    },
    {
      "category": "Lifestyle",
      "base": 498.16,
      "target": 352.39,
      "pctDiff": -29.26
    }
  ],
  "monthlyBudget": {
    "base": 2473.09,
    "target": 1516.01,
    "pctDiff": -38.7
  },
  "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/ireland-vs-spain/",
    "permalink": "https://geo-parity.com/cost-of-living/ireland-vs-spain/",
    "terms": "Free to use and quote with attribution. Figures are estimates for orientation, not advice."
  }
}