Catalog/energy-solar-estimate

Science

Rooftop solar PV production estimate API

Models rooftop solar PV PRODUCTION for any location from a full typical year of keyless Open-Meteo daily shortwave-radiation data. Converts the MJ/m² irradiance series to peak-sun-hours and runs the standard yield model (kWh ≈ capacityKw × insolation × performance-ratio) to derive annual & average-daily energy yield, capacity factor, peak-sun-hours, a monthly profile, seasonal best/worst month, specific yield (kWh/kWp/yr), estimated CO₂ offset, and a plain-English suitability verdict. Answers 'how much energy will solar panels produce at this location', 'estimated annual kWh for a 5 kW rooftop system', 'solar capacity factor and peak sun hours for my coordinates', 'is this location good for solar PV', 'specific yield and CO2 offset for a solar array'. A modelled estimate on public climate data, not a financial guarantee.

Price$0.16per request
MethodPOST
Route/v1/science/solar-estimate
StatusLive
MIME typeapplication/json
Rate limit60/minute
Cache86400s public
solarpvenergyrenewableirradiancecapacity-factoresgyieldopen-meteo
API URLhttps://x402.hexl.dev/v1/science/solar-estimate
Integration docs
Example request
{
  "lat": 33.45,
  "lon": -112.07,
  "capacityKw": 5,
  "tilt": 30
}
Example response
{
  "location": {
    "latitude": 33.45,
    "longitude": -112.07
  },
  "typicalYear": 2024,
  "irradianceUnit": "MJ/m²",
  "system": {
    "capacityKw": 5,
    "performanceRatio": 0.75,
    "tiltDegrees": 30,
    "tiltGain": 1.227
  },
  "annualYieldKwh": 9290,
  "avgDailyYieldKwh": 25.45,
  "minDailyYieldKwh": 4.18,
  "maxDailyYieldKwh": 37.78,
  "specificYieldKwhPerKwp": 1858,
  "capacityFactor": 0.2121,
  "capacityFactorPct": 21.2,
  "peakSunHoursPerDay": 6.79,
  "avgInsolationKwhPerM2Day": 6.79,
  "monthly": [
    {
      "month": "Jan",
      "energyKwh": 600.2,
      "avgDailyKwh": 19.74
    },
    {
      "month": "Jun",
      "energyKwh": 1004.5,
      "avgDailyKwh": 33.04
    },
    {
      "month": "Dec",
      "energyKwh": 560.1,
      "avgDailyKwh": 18.42
    }
  ],
  "bestMonth": {
    "month": "Jun",
    "energyKwh": 1004.5
  },
  "worstMonth": {
    "month": "Dec",
    "energyKwh": 560.1
  },
  "seasonalSwingRatio": 1.79,
  "co2OffsetKgPerYear": 3577,
  "suitability": "excellent",
  "verdict": "EXCELLENT: Top-tier solar resource — fast payback, ideal for PV. Specific yield ≈ 1858 kWh/kWp/yr; a 5 kW system models ≈ 9290 kWh/yr (CF 21.2%).",
  "daysModelled": 366,
  "disclaimer": "Modelled production estimate from public climate data and a standard performance-ratio model. Actual output varies with shading, orientation, soiling, panel/inverter spec, temperature and weather. Tilt is a coarse uplift, not a full transposition model. NOT a financial guarantee — verify with a site assessment."
}
Input schema
{
  "type": "object",
  "required": [
    "lat",
    "lon"
  ],
  "additionalProperties": false,
  "properties": {
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees.",
      "examples": [
        33.45
      ]
    },
    "lon": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees.",
      "examples": [
        -112.07
      ]
    },
    "capacityKw": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 100000,
      "description": "System DC nameplate capacity in kW (default 5).",
      "examples": [
        5
      ]
    },
    "tilt": {
      "type": "number",
      "minimum": 0,
      "maximum": 90,
      "description": "Optional array tilt in degrees from horizontal for a plane-of-array uplift.",
      "examples": [
        30
      ]
    }
  }
}
Output schema
{
  "type": "object",
  "additionalProperties": true
}