Search buildings Stay organized with collections Save and categorize content based on your preferences.
AI-generated Key Takeaways
The Solar API uses place data and satellite imagery to identify buildings and determine their solar potential, focusing on buildings classified as "premise" in Google Places.
The API primarily supports residential buildings with inclined roofs for accurate solar panel placement, while accuracy may vary for flat-roofed buildings.
If the
solarPanelConfigsfield is missing from the API response, it indicates the building was analyzed, but solar panel placement was not feasible due to roof size or shading.Users can identify buildings for solar analysis by converting addresses to coordinates using Geocoding or Place Autocomplete APIs and passing the coordinates to the Solar API.
A complementary approach involves users selecting a building directly on a map using the Maps JavaScript API, and using the extracted coordinates for solar analysis.
The Solar API uses place data to determine building type and identifiesbuildings based on satellite imagery. This page describes how to determine whichbuilding's solar information is returned in abuildingInsightsrequest.
Building types
The Solar API supports buildings of typepremise. This typeindicates a named location, usually a building or collection of buildings with acommon name.
Other types, such assubpremise orcompounds — for example, detached buildings located on a single property, unlessregistered as apremise —arenot supported.
Building roofs
The Solar API identifies optimal rooftop solar panel placement based onsatellite imagery. Residential buildings, particularly inclined or pitchedroofs, are identified with a high degree of accuracy, while buildings with flatroofs (for example, apartment or commercial buildings) may vary in accuracy.
If thebuildingInsights response does not include the fieldsolarPanelConfigs, the building was processed correctly, but we were unable to put panels on the roof. This may happen if the roof is too small to place panels or too shaded for panels to generate significant energy.
dataLayers endpointto create your own solar potential calculations and panel placement.Searching from an address
You can convert an address to latitude and longitude coordinates using theGeocoding API orPlace Autocomplete API.
Use the
place_idto refer to the matched place.Use the place latitude and longitude coordinates in your Solar API
buildingInsightsrequest.- If the Solar API finds a matching building, check that the
place_idin thebuildingInsightsresponse matches theplace_idfrom the Geocoding API or the Place Autocomplete API. - To limit results to places with type
premise, add a place type filterto Geocoding API or Places API responses.{"name":"buildings/ChIJh0CMPQW7j4ARLrRiVvmg6Vs","center":{"latitude":37.4449739,"longitude":-122.13914659999998},...}
- If the Solar API finds a matching building, check that the
ROOFTOP, theplace_id may have a type other thanpremise.You can use theopen source sampleapp or make abuildingInsights request tocheck theplace_id for buildings covered by the Solar API.
Selecting a location on a map
You can also offer a complementary experience by enabling users to select thebuilding on the map using theMaps JavaScriptAPI. Extract the building's latitudeand longitude from themouseevent, then pass inthose coordinates in abuildingInsights request.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-11-21 UTC.