Product case study · Aaditya Lobo · October 2026
A solar design in seconds, for Goan roofs
The brief: replace hours of manual roof design with a tool that goes from site data to a complete proposal in seconds, at the level of Arka360, Aurora and Reslink, for Indian and Goan roofs. This is what I learned, what I decided, and what I built in a day to test it. The working tool is called Canopy.
01The problem, taken apart
A solar design is five jobs. I started by asking where the hours actually go, because the answer decides what to build.
| Job | How it is done today | Where the time goes | In Canopy |
|---|---|---|---|
| Get the roof into the computer | Trace the outline on a map, type the heights and the pitch | Most of it. Arka360's own guide says a concrete roof takes within 20 minutes, before stringing and drawings | Read from the picture in about 0.2 s, then corrected by dragging |
| Place the panels | Semi-automatic fill, then nudged by hand | Minutes | Every position that fits is found and ranked by what it would earn |
| Wire them | Strings drawn by hand in Arka360 (a paid tier) | Minutes to tens of minutes | Strings follow from the inverter's voltage window; no drawing |
| Predict the energy | Automatic | Seconds | Hour-by-hour year, shade ray-cast per panel |
| Drawings, materials, price, proposal | Exported, then assembled and edited | The rest of it | Generated from the same design, in the form Goa's portal asks for |
The physics was never slow. A year of generation for twenty panels simulates in under 20 milliseconds on a laptop. The hours are a person tracing a roof, typing its dimensions, drawing strings and assembling documents. So the product is not a faster calculator. It is a way to get a good-enough roof into the computer without tracing it, and then to never ask a person to do anything a rule can do.
My estimate of 20 to 90 minutes of hands-on time per home today is inferred from the documented steps in Arka360, not measured. Timing ten real designs with the team is the first thing I would do.
02Who it is for
| Who | What they need | What Canopy gives them |
|---|---|---|
| The designer at the installer | An answer while the customer is still on the phone | A design in seconds, and a clear list of what to check on site |
| The homeowner | What will it cost, what will I save, will it work on my roof with my trees | A proposal about their own roof, in plain numbers |
| The electricity department and GEDA | An array layout, a shade report and a single-line diagram with each application | Those three sheets, generated |
| The install crew | What to load on the truck and where each string goes | A bill of materials with the rule behind each quantity, and the string layout |
Speed matters most at first contact. A national survey of households (CEEW) found that 5% had started the process of getting rooftop solar and 1.4% had installed it, and that 68% of those willing but not started did not know how to begin. That survey excludes Goa, so I use it as direction, not as a number.
03The constraint that shapes everything
There is no measured height data for Goa. Every automatic roof tool that works depends on it.
- Aurora's automatic roof model needs laser-scanned height data and sharp imagery together. Its coverage maps show the US and Europe.
- Arka360's documented India workflow is manual tracing, with typed heights. Its AI roof feature is a 2024 beta for selected customers.
- Google's Solar API reached India in April 2026 with heights predicted from satellite pictures: about 1 m height error, 5° pitch error, roof segments overlapping the truth by a little over half. It does not detect tanks or roof material.
- Google also publishes a free building map with heights (Open Buildings 2.5D), predicted from 10 m satellite pictures: about 4 m of real detail and 1.5 m of height error. Canopy uses it as a second opinion, with no key.
- The free satellite picture over Goa resolves 0.58 m a pixel. A water tank is two pixels.
- Drones would solve it, but commercial flights need a certified aircraft and pilot, and much of the coast sits near two airports.
So "match Aurora" cannot mean copying Aurora. For Indian roofs the automatic step is an open problem, and it is the one place a new tool can be better than the incumbents and not merely cheaper.
04How it compares
The brief names three tools. This is what each does on an Indian roof today, beside what Canopy does. Where a cell says claimed, it is the vendor's own statement and I could not check it.
| Arka360 | Aurora | Reslink | Canopy | |
|---|---|---|---|---|
| Getting the roof in | Traced by hand on a map, heights typed. An automatic outline is in beta for selected customers | Automatic where laser height data exists (the US and Europe). By hand in India | Its workflow page says the rep draws the boundary. Other pages claim AI detection and phone laser scanning | Read from one picture, with a confidence on each value, then corrected by dragging |
| Height and pitch | Typed in | From laser data; not in India | Drawn or scanned on site (claimed) | Shadow, Google's building map and Goa's floor rule; pitch from the material; the phone's tilt sensor on site |
| Placing panels | Automatic fill above a sunlight threshold | Automatic, to a maximum fit or an energy target | Automatic | Automatic, ranked by what each position yields, sized by what the next panel earns |
| Strings | By hand, on the top plan only | Automatic | Automatic (claimed) | Automatic, from the inverter's voltage limits |
| Drawings | Single-line diagram and layout as DXF, on the top plan | Plan sets for the US; its diagram editor is Europe-only | Single-line, layout and string drawings (claimed bank-ready) | First-pass single-line diagram, array layout and shade report as SVG and DXF. Not reviewed by an engineer |
| Energy | Yes; weather source not stated | Yes | 8,760-hour simulation, claimed within 3 to 5% of metered | Hour by hour; within 2.4% of PVGIS in twelve test cases |
| Proposal for a Goan home | Savings, payback and return; pay-per-unit for India not confirmed | Built around US finance | Buy and pay-per-unit, central subsidy applied (claimed) | Goa's slab tariff, surcharge, net metering, central and state subsidy; buy, loan or pay per unit |
| On a phone | Not checked | Not checked | Phone-first: a design on site in under ten minutes (claimed) | Runs in a phone browser, with location and a tilt-sensor pitch reading; not yet tried at a real site. No laser scanning |
| Track record | In commercial use in India | In commercial use, mainly in the US | Says 6,000 installers and 25,000 proposals | Built in a day. No customer. Never checked against a measured roof |
Where Canopy is ahead
- It starts from the picture. Drawing the roof is the step all three leave to a person in India.
- It says where each number came from and how sure it is, so the designer knows what to check on site.
- It is built on Goa's own rules: the slab tariff and surcharge, both subsidies, floor heights from the building regulations, and the three sheets the state portal asks for.
- It sizes the system by what the customer earns, not by how much roof there is.
- Strings and the single-line diagram are not a paid tier, and a design costs nothing to produce.
Where it is behind
- It is unproven. No design has been checked against a measured roof or a metered system. Theirs are in daily commercial use.
- Grey slabs and roofs under trees still need a hand, and it knows five roof forms. Dormers and curved roofs are out.
- No engineer has reviewed its drawings. It does not design the mounting structure or check wind and load.
- It has none of what an installer buys software for day to day: accounts, a team, a customer list, signing, sending by WhatsApp, support.
- The catalogue is small (four panels, sixteen inverters), with no battery sizing.
- The free satellite picture is not licensed for measurement. A product needs paid imagery or Google's Solar API.
What they charge
| Tool | Published price | Worth knowing |
|---|---|---|
| Arka360, India | ₹46,000, ₹70,000 or ₹1,00,000 a year, plus GST and ₹10,000 to start | Strings, the single-line diagram and the API come only on the ₹1,00,000 plan |
| Aurora Solar | $159 or $259 a user a month, 50 projects each | Automatic roof models and the API are on custom enterprise plans |
| Reslink | $2,000 to $10,000 a year, by the size of plant designed | As the page was served to us; rupee prices seen elsewhere do not agree with it |
| OpenSolar | Free | Paid for by hardware and finance partners; uses Google's Solar API |
| SurgePV | $1,299 to $1,899 a user a year | Sold to Indian installers; says its own detection needs a designer to correct it |
| Canopy | Not for sale | Runs on free public data, so a design costs nothing to make |
Prices read from each vendor's own pricing page in October 2026, before tax. Google's Solar API, if added, costs nothing for the first 70,000 roof lookups a month in India and $4 a thousand after that.
05The decisions
Estimate with a confidence, then confirm
- Decision
- Canopy does not claim to measure the roof. It proposes one, says where each value came from (read from the picture, or usual for Goa) and how sure it is, and lets the designer fix it by dragging.
- Why
- No tool reads Indian roofs automatically today. Aurora's needs laser height data that exists only for the US and Europe. Google's new height model for India is good to about a metre and five degrees, and cannot see tanks. A tool that hides its uncertainty will be wrong in ways nobody notices until the crew is on the roof.
- What it costs
- It is not one click. On the sample roofs the confirm step is a few seconds; on a grey slab among grey roads the outline has to be drawn by hand.
A small grammar of roofs instead of free-form 3D
- Decision
- A roof is a handful of rectangles, each flat, single-slope, gable or hip. Where they overlap the higher one wins, which is how an L-shaped house is actually built.
- Why
- It covers what Goa builds (tile on a gable or hip, concrete slab, sheet over a terrace). Every downstream step gets exact planes with a tilt and a direction. And a wrong guess is two drags away from right, where a wrong mesh is a redo.
- What it costs
- Dormers, curved roofs and odd angles are out. They need the drone path.
Spend accuracy where it pays
- Decision
- Roof pitch is taken from the material unless the picture gives a clear reading. The effort goes into which way each face points, what stands on the roof, and shade.
- Why
- I measured it with the engine (table below). On a south-facing slope a 5° error in pitch moves the yearly output by under 1%. Which way the face points moves it by up to 25%. Tree height moved one sample roof by 14 points.
- What it costs
- The pitch shown for most tile roofs is the usual 24°, not a measurement. It is marked as such.
Two rough readings and a rule beat one guess
- Decision
- Height comes from three places: the building's shadow in the picture, Google's free building-height map, and Goa's building regulations, which fix a floor at about 2.95 m (a 2.8 m room and its slab) on a 0.45 m plinth.
- Why
- Neither reading is good alone. Trees hide most shadows, and Google's map is good to about 1.5 m. But a building can only be a whole number of floors, so a rough height is enough to pick the floor count, and the rule turns that into metres. Where the shadow and the map disagree, both are shown and the designer is asked.
- What it costs
- Google's height error was measured outside India. One sample roof reads 6.6 m by shadow and 13 m by the map; only a visit settles it.
Size by what the next panel earns
- Decision
- Every size from four panels to a full roof is priced and run through the bill, and the default is the best one for the customer, not the biggest.
- Why
- Goa bills in slabs, so each extra panel displaces cheaper units than the one before, and past the home's own use it earns only the surplus rate. The right size is where the next panel stops paying for itself.
- What it costs
- The sales number is sometimes smaller than the roof could carry. I think that is the honest number, and the designer can still choose to fill the roof.
Rules write the electrical design
- Decision
- String lengths come from the inverter's voltage limits on the coldest morning and the hottest roof. Faces pointing different ways never share a string. Cable is sized for voltage drop. The single-line diagram and array drawing are drawn from that result.
- Why
- This is the part competitors leave manual or put in a paid tier, and it is pure rule-following. It is also what the approval needs.
- What it costs
- The drawings are first-pass. An engineer still signs them.
Two stages of accuracy, not one
- Decision
- The satellite read gives a proposal on the first call. The site visit that happens anyway then confirms height, pitch and trees, and the same design updates.
- Why
- A proposal in seconds is what moves a lead. An install-ready design from a 0.58 m picture is not honest, and nobody has shown it can be done.
- What it costs
- The final panel count can move by a panel or two after the visit, and the proposal says so.
The numbers behind "spend accuracy where it pays"
Yearly output per kWp for a 24° tile slope in south Goa, and what a wrong pitch does to it. Computed with Canopy's own simulation.
| Face points | Units per kWp | Against south | Pitch 5° too low | Pitch 5° too high | Direction 15° off |
|---|---|---|---|---|---|
| South | 1,509 | 0.0% | +0.2% | −0.8% | −0.2% |
| South-east | 1,454 | −3.7% | +0.9% | −1.4% | +1.9% |
| South-west | 1,466 | −2.9% | +0.7% | −1.3% | −2.2% |
| East | 1,338 | −11.4% | +2.4% | −2.7% | +3.2% |
| West | 1,352 | −10.4% | +2.2% | −2.6% | −3.4% |
| North | 1,139 | −24.6% | +6.9% | −7.6% | +0.7% |
On the faces worth using, pitch barely matters. On a flat slab, racks at 12° give 1,500 units per kWp against 1,512 at the ideal 22°, so low racks cost under 1% and take far less wind. Shade is different: on the bungalow, benaulim sample, the trees read from the picture cost 2.4% at an assumed garden-tree height and 13.2% if they are tall palms.
06What nature contributed
I went looking for places where a natural system solves the same optimisation, and checked each against the literature. Five held up. Three did not, and are not in the product. Fibonacci is on both lists: true for sampling a sphere evenly, folklore for arranging panels.
| In nature | What it does | In Canopy | |
|---|---|---|---|
| A pile of dry sand on a plate | It settles into equal slopes meeting at ridges: the hip roof of that plate | Kept | The roof grammar. Real roofs differ only at inside corners, where sand makes a cone and builders make a valley |
| A tree's lowest leaf | A leaf is kept only while it earns more than it costs (Monsi and Saeki, 1953) | Kept | The sizing rule: add panels in order of yield, stop when the next one does not pay |
| Blood vessels and leaf veins | Branches are sized to balance flow loss against the cost of the vessel (Murray, 1926) | Kept | The same sum as Kelvin's 1881 rule for wire. It lands on the standard 4 mm² string cable |
| How eyes read a scene | Guess the scene, render it, compare, keep the best guess | Kept | The detector tries each roof form under the picture's own sun and keeps the best match |
| A sunflower's seed head | Each seed is turned from the last by the golden angle, which packs them evenly | Kept | The same lattice spreads rays evenly over the sky to measure how much open sky each panel sees |
| Fibonacci trees of panels | Said to catch more light | Dropped | The 2011 claim measured voltage, not power. Flat panels on one plane do not shade each other |
| Slime mould and ant-trail networks | Find short networks | Dropped | No evidence for arrays this small. A back-and-forth path is already as short as it gets |
| Steep leaves near the equator | Avoid midday overheating | Dropped | Points the wrong way for panels, which do not saturate |
The picture itself is the other natural instrument. A satellite photo is a sundial: the building's shadow gives its height, and the direction the shadow falls gives the time the picture was taken. Canopy reads both when the ground is visible.
07What was built
- Readoutline, material, shadow, trees
about 0.2 s - Shaperectangles into roof planes
- Placeevery position that fits
- Shade576 patches of sky per panel
- Size and wireevery size priced; strings by rule
- Simulate and price8,760 hours; slabs; subsidy
| Real roof | Positions found | Chosen | Units a year | Price | Payback | Design time |
|---|---|---|---|---|---|---|
| Tiled house, Benaulim | 112 | 7 panels, 3.78 kWp | 5,762 | ₹2,72,669 | 4.5 years | 0.9 s |
| Bungalow, Benaulim | 90 | 14 panels, 7.56 kWp | 11,271 | ₹5,30,273 | 4.5 years | 0.4 s |
| House by the road, Porvorim | 180 | 10 panels, 5.40 kWp | 7,484 | ₹3,97,398 | 4.9 years | 1.1 s |
| Apartment block, Porvorim | 69 | 35 panels, 18.90 kWp | 27,315 | ₹11,51,998 | 4.3 years | 0.3 s |
| Office block, Verna | 250 | 136 panels, 73.44 kWp | 1,08,966 | ₹42,86,764 | 4.2 years | 3.8 s |
How I know the numbers are right
- Energy. Against the EU's PVGIS model for Panaji, twelve cases (flat, 15° and 25° south, 25° east, west and north; open rack and roof-mounted): every one within 2.4%, south-facing within 1.4%.
- Money. Given the assumptions Tersus publishes for its 5 kW and 10 kW systems, the model returns ₹1,85,500 and ₹2,98,000 of subsidy (published: the same), ₹3,165 and ₹7,713 off the monthly bill (published: ₹3,160 and ₹7,709), EMIs of ₹2,807 and ₹4,157 (published: ₹2,807 and ₹4,157), and payback in 5.8 and 3.7 years (published: 5.8 and 3.7).
- Geometry, layout, strings. Automated tests: areas add up, no panel crosses a setback, every panel is in exactly one string, no string breaks a voltage limit.
What is real today
| Asked for | State | |
|---|---|---|
| Roof area and outline | Works | From the picture on tile and sheet; a coarse outline to drag on grey slabs |
| Roof type | Partly | Material from colour is reliable; gable or hip is a best guess |
| Roof slope | Partly | Usual value for the material; measured only when the picture allows |
| House height | Partly | From the shadow, Google's building map and Goa's floor-height rule; good to about a floor |
| Best panel positions | Works | Ranked by yield with ray-cast shade |
| Interactive 3D model | Works | With a sun you can move through the day and year |
| Bill of materials | Works | Quantities by rule; prices editable, or a company price list |
| Inverter and panel wiring | Works | Strings, inverter choice, cable sizes, checks |
| Single-line, PV and array drawings | Partly | First-pass sheets as SVG and DXF; not yet reviewed by an engineer |
| Performance simulation | Works | Validated against PVGIS |
| Proposal with buy, loan and pay-per-unit | Works | Goa tariff, net metering, both subsidies |
| Accuracy against real installs | Not yet | Needs Tersus's completed sites to compare with |
08Problems I foresee
| Problem | Why it bites | What Canopy does about it |
|---|---|---|
| The free picture is coarser than its source | 0.58 m a pixel over Goa, from a 0.34 m original. Outlines are good to about a pixel | Area carries a ±15% range. Production needs licensed 30 cm imagery or the installer's own drone picture |
| Shadows are hidden by trees | Height is read from the building's shadow, and most Goan houses stand in trees | Falls back to Google's building-height map and the regulation floor height, then asks. One tap fixes it |
| Pitch from brightness is weak | The physics is sound, but colour-balanced mosaics squeeze the contrast it depends on | Tested, then demoted: pitch defaults to the material's usual value. The method stays for raw or drone imagery |
| Tree height is unknown | It is the largest swing in the result | Trees are placed from the picture and flagged. The shade report says heights must be measured |
| Grey slabs among grey roads | Colour cannot separate them | The colour search is held inside the building Google's map shows, and failing that the map's own outline is used. Still coarse: it needs a drag. The real fix is a trained roof-outline model |
| Ridge direction can be read wrong | It decides which way faces point, the biggest lever on yield | Rafters span the short way, so the ridge is assumed to run the long way unless the picture disagrees strongly. Editable |
| Imagery licence | Free map tiles are not licensed for measurement | A prototype choice. Google's Solar API terms do allow design and proposals |
| Surplus payout is unconfirmed | Sizing past the home's use depends on what is actually paid each March | Best value never sizes past covering the bill |
| Subsidy rules move | Central scheme ends March 2027, Goa's in March 2028, both budget-limited | All scheme numbers sit in one file with their sources |
| Structure is not checked | Old rafters and coastal wind (39 m/s) decide whether a tile roof can carry panels | Out of scope today. A site-visit checklist item, then a structural module |
| Prices | The price book is market defaults, not quotations | A Prices tab holds the installer's own rates, margin and GST, or a price list by system size. Panel and inverter values are read from makers' datasheets |
| The installer already has a tool | Luarc lists Auriva for solar layout and proposals | This is a day's independent attempt at the same brief, useful as a second opinion on the hard parts |
09What I would do next
First two weeks: find out how wrong it is
Tersus has what no vendor has: finished roofs with known panel counts, and an app that records what each one generates. Run Canopy on twenty completed homes and compare panel count, kWp and yearly units with what was built and measured. That turns every default in this document into a measured error, and tells us which of the problems above to fix first.
Next six weeks: close the confirm step
- The phone capture, tried on real sites. A first version exists: location, pitch from the tilt sensor laid on the slope, eave height sighted from the ground, photos. Next: tree height the same way, then an installed app, because a phone's laser scanner cannot be reached from a web page and only reaches about five metres: enough for a terrace and its tanks, not for a roof seen from the ground.
- Google's Solar API as a third opinion on outline, pitch and height, and a trained roof-outline model for grey slabs.
- Import of the sanctioned building plan where the roof cannot be seen: it carries the true dimensions, pitch and heights.
- The quote calculator on the Tersus site handing its bill data to Canopy, so a web lead gets a roof-specific proposal.
- An engineer's review of the drawings against what the Goa portal accepts.
Later
- Learn the defaults from installs: every measured roof sharpens the usual pitch, height and tree values for its village.
- Structure and wind checks for tile roofs; housing societies and factories with several inverters.
How I would know it is working
| Measure | Today | Target |
|---|---|---|
| Time from address to a proposal the designer will send | Hours (to be timed) | Under five minutes, including the confirm step |
| Panels proposed against panels installed | Unknown | Within one panel on eight roofs in ten |
| Predicted against metered yearly units | Unknown | Within 8% |
| Applications accepted without a drawing being sent back | Unknown | Nine in ten |
10What is not verified
- Roof detection has not been checked against any measured roof. Its error ranges are my estimates.
- Component prices, soiling and outage losses are defaults, not Goa measurements. Panel and inverter electrical values are from makers' datasheets, two of them distributor copies.
- Google's building heights were validated outside India; nobody has published their error for Goa.
- The rate paid for surplus units each March, the GST split on installations, and whether subsidies reach a plant owned by a third party.
- Tree crowns are assumed to pass 40% of direct light, from stand data, not from a single palm.
- The satellite tiles are used for a prototype and are not licensed for measurement.
Sources: JERC tariff order for Goa, 30 September 2025; Goa gazette of 13 August 2026 (state subsidy); PM Surya Ghar guidelines; JERC net metering regulations 2019 and 2024 amendment; GEDA portal manual; PVGIS 5.3 (ERA5); tersusenergy.com (prices, refreshed 26 August 2026); Arka360, Aurora, Reslink, OpenSolar and SurgePV pricing pages; Arka360, Aurora, Reslink and Google Solar API documentation; Google Open Buildings 2.5D Temporal; the Goa Land Development and Building Construction Regulations 2010; Census of India 2011 (roof materials); Monsi and Saeki 1953; Murray 1926; Aichholzer and others 1995; CEEW household survey.