Kilowatts set the number. Four other answers set what a kilowatt costs.
A solar price is kilowatts times a dollars-per-watt figure, and the dollars-per-watt is not a constant. It moves with the panel you are quoting, the inverter architecture, what the roof is covered with and how far off the ground it is. That is one multiplication the engine cannot do — no rule multiplies one answer by another answer — so our demo account does what a fencing contractor does with linear feet: it runs a baseline rate on the size question and carries the other four as percentages on the whole job.
The consequence is honest and worth saying out loud rather than hiding: those percentages are big. A concrete tile roof is plus 26 and slate is plus 34, because lifting, hooking and setting tile back without breaking it really is a third more day than lagging into a shingle rafter. A page that pretended a roof covering was a rounding error would be a page a real installer could not use.
NapkinPrice™ runs that shop as three services on one account. The install card asks eight questions and puts a gross contract price on the screen, the service call prices a system that has stopped producing off its own rate card, and ground mount, commercial and new-build work goes down a third path that never shows a number at all. Every figure any of them returns is the price of the work — the contract price, before any federal credit she may go on to claim and before any financing she may arrange.
The flow also asks for a photo of the roof and of the inside of the main panel door, and the lead tells you to ask for those pictures on the callback. Attaching the image itself to the lead is on the roadmap, which is why it is not a tick in that list.
The eight things that set an array’s number
One size question, four pick-ones, two yes/nos and a photo, plus the ZIP. Seven of them move money and one deliberately does not. You build the set once in the dashboard and every rate in it is a field you own.
How big a system, in kilowatts
The base number and the only per-unit line on the service: her kilowatts times your baseline rate, $2,450 a kilowatt on our own demo card. That baseline is a deliberately plain array — a standard panel, a string inverter, one storey, asphalt shingle — and everything after it adjusts that. Put the arithmetic in the help text rather than assuming she knows it: take the kilowatt-hours off the highest summer bill and divide by 120, so an 1,100 kWh month is about 9 kW. Set a floor and a ceiling on the answer and the widget refuses a silly number instead of quietly clamping it. On the demo it runs 3 to 20 kW.
What panel you are quoting
A pick-one percentage rather than three separate rates, because the panel changes what the whole array costs to buy and rack, not the price of one line of it. Standard mono at 400 to 420 W is the baseline at nothing, a high-efficiency 440 to 460 W panel is plus 12%, and a premium all-black is plus 22%. The help text is where you say what the upgrade actually buys her: more kilowatts on the same roof, which is the answer when the roof is small or half of it faces the wrong way.
Inverter architecture
One box on the wall, optimizers behind every panel, or a microinverter behind every panel. Nothing, plus 6% and plus 11% on the demo. More electronics on the roof is more hardware and more labour, so it is a percentage rather than a per-panel rate — and the help text should say what she gets for it rather than only what it costs, because per-panel monitoring and one shaded panel not dragging the string down is a real answer to a real question.
What the roof is covered with
The single biggest swing on the form, and it is about how the rack attaches. Asphalt takes a flashed lag into a rafter and is the baseline at nothing. Corrugated metal is plus 5%, standing seam plus 8%, a flat EPDM or TPO roof plus 14%, concrete or clay tile plus 26% and slate plus 34%. Do not apologise for the size of those. Tile has to be lifted, hooked and set back without breaking, which is slow, and slate breaks anyway.
How far up it is
Height and pitch decide how much of the day goes on staging and fall protection instead of on racking. One storey, two storeys, or three storeys and the pitches over 7/12 that you cannot stand on without cleats. Nothing, plus 7% and plus 15%. The honest note belongs here: a pooled percent lands on everything additive, so on a job with a service upgrade on it the height band is charged across the panel work too.
A main panel and meter upgrade
A yes/no with your own flat amount behind it — $2,850 on the demo for the panel, the meter work and the utility coordination. It is the line most often trued up at the survey, so the help text tells her how to look for herself: read the big breaker at the top of the panel, and if it says 100 amps with no spare double slot the answer is usually yes. Not sure? Answer no. A flat amount is added once for the job, whatever the array size.
Whether she is claiming the federal credit
The question that moves nothing, and the most important one on the form. It carries NO pricing rule at all, and the help text says "No effect on the price" before it says what the answer does change: it tells the office to have the commissioning paperwork and the equipment serial numbers ready for her accountant. Ask it because it is useful. Price nothing off it, because a credit depends on her tax bill rather than on her roof, and the quote engine has no way of knowing one.
Travel zone
List your ZIPs by zone — whole ZIPs or three-digit prefixes — and the widget prices the trip from the ZIP she types, most specific match first. The demo shop charges nothing in York County, a flat $340 over the state line into Baltimore County, the city, Harford and Howard, and 4% plus $520 for everywhere else it travels. Notice how small those are against the job: that $340 ring charge is barely 1% of the worked example further down this page, and solar travel really is a rounding error. Set one zone to "outside my area" and it declines politely while still capturing the lead.
A real array, start to finish
Eight questions, about a minute. This is the exact sequence running on our own solar demo account — a 9 kW system on a two-storey asphalt-shingle house in York, PA 17402, high-efficiency panels, DC optimizers, no service upgrade needed — and the total at the bottom is what the live pricing engine returns for these eight answers and nothing else, not a figure anybody typed into this page.
| # | What she is asked | What she answers | What it does to the price |
|---|---|---|---|
| 1 | How big a system are you after, in kilowatts? | 9 kW | 9 × the baseline rate — $2,450 a kilowatt on the demo — is $22,050. The only per-unit line here |
| 2 | What panel are we quoting? | High-efficiency mono, 440 to 460 W | A percent on the whole job: +12%. Standard mono is the baseline at +0%, premium all-black +22% |
| 3 | Inverter | DC optimizers | A percent on the whole job: +6%. A string inverter is +0%, microinverters +11% |
| 4 | What is the roof covered with? | Asphalt shingle | The baseline: +0%. Metal is +5% or +8%, a flat roof +14%, tile +26%, slate +34% |
| 5 | How far up is it? | Two storeys | A percent on the whole job: +7%. Three storeys or a pitch over 7/12 is +15% |
| 6 | Does the main electrical panel need upgrading? | No | Nothing. Yes adds a flat $2,850 for the panel, the meter work and the utility coordination |
| 7 | Will you claim the federal solar credit on your own taxes? | Yes | Nothing whatsoever, and that is the design. Answer No instead and the number below does not move by one dollar |
| 8 | Got a photo of the roof, or of the main panel? | Offered | Nothing. A photo never moves the price |
| The arithmetic, in the order the engine runs it | 9 kW × $2,450 = $22,050, no trip charge on top, then the four percentage answers pool into one and +25% applies once to all of it → $27,562.50 | ||
| She sees | $25,082 – $30,043 | ||
| What lands in your inbox, the second she submits | Name, mobile, ZIP, all eight answers, the photo flag, and the disclaimer she was shown | ||
The $2,450, the $2,850 and the percentages above belong to the demo account, not to a Tailgate Office price list — you set every one of them in the dashboard. Three things about that arithmetic are worth reading twice. The percentages pool rather than compound, so plus 12, plus 6, plus nothing and plus 7 make plus 25 and not the plus 27 you would get by multiplying them out, and on a job this size that difference lands in her favour. The base fee is zero on this service and that is deliberate: there is no trip charge buried in the number, because on planned work the survey is what sells the array. And the pooled figure lands on the whole additive subtotal, so when the service upgrade is answered yes the panel and height bands are charged across it too — $22,050 plus $2,850 is $24,900, and the same plus 25% makes the midpoint $31,125 rather than $27,562.50 plus a bare $2,850. What is not illustrative is the total: $25,082 to $30,043 is what the engine returns for those eight answers at that ZIP, and you can reproduce it yourself on the demo in about a minute.
Would you rather try it than read about it? We keep a working example solar website with NapkinPrice™ embedded — the real engine, quoting live, on a page that is not ours. Put in those eight answers and see the same number come back.
Try the live demo site (opens in a new tab)The number is the whole job. The credit is hers, and it is not in it.
This is the one design decision that matters in this trade, and it is the easiest place on the whole site to start lying. So here is the whole of it in plain words.
Solar is sold on the net number. Every proposal a homeowner has seen this month leads with a figure after a thirty percent federal credit and a finance term, and the gross price is in eight-point type underneath. It is tempting to do the same on a website widget, and our demo account does not, for a reason that survives the temptation: a credit is conditioned on her own tax liability and on owning the system rather than leasing it, it is claimed months later on her return rather than on your invoice, and it steps down on a schedule. None of those three things is a fact about her roof, and a quote form only knows about her roof.
The honest version of the technical claim is sharper than the usual one, and it is worth getting right. The engine knows base fees, per-unit rates, flat adds, percentages, a minimum, a season and a travel zone. There is no credit field, no rebate rule kind and nothing anywhere that expresses a finance term — but a percentage is only a number, and nothing in the software would stop somebody typing a minus thirty into one and labelling it with the credit. So this is a rule of authorship rather than a feature we can claim, and it is written into the demo account’s own fixture file, in capitals, addressed to whoever edits it next. The test it gives them is readable off a label in one second: does the contractor’s invoice get smaller? A cheaper panel does. A string inverter instead of microinverters does. A tax credit does not.
What the demo does instead is ask the question and price nothing off it. “Will you claim the federal solar credit on your own taxes?” is the seventh question on the install card, it carries no rule at all, and its help text opens with no effect on the price before it says what the answer does change. You can prove that from outside: run the worked example above with Yes and it returns $25,082 to $30,043; run it again with No, changing nothing else, and it returns $25,082 to $30,043. That is the same discipline the insulation page keeps for utility rebates, and it lands in the same place: a prospect who works out for herself that her real cost will be lower has been sold honestly, and one shown a net figure the widget cannot reproduce has been sold a bug.
There is one more thing this rule quietly decides, and it is not obvious. The demo account carries no seasonal rate at all, which on a trade with a famous year-end rush looks like an empty field somebody forgot. It is not. A roof in March and the same roof in September are the same crew day, so there is no capacity constraint for a season to price. The thing that looks seasonal here is people trying to get energised before a tax year closes — which is the credit again, wearing a calendar. Encoding it as a seasonal percentage would put the prohibited subject straight back on the page through the one door left open, so the field stays empty and every figure on this page is the same in January as it is in June.
Rooftop install — quotes instantly
The card that does the selling, and it shows a GROSS contract price: the number on the contract, the number on the invoice, and the number this engine actually computes. No trip charge inside it, a band of plus or minus 9%, a real floor and a real ceiling. The 9 kW two-storey asphalt job above is $25,082 to $30,043; put the same array on a concrete or clay tile roof and it is $30,299 to $36,292; add the main-panel and meter upgrade to the asphalt version and it is $28,324 to $33,926. The cheapest thing on the list — 5 kW, standard panels, a string inverter, one storey, asphalt — has an arithmetic of $12,250 and quotes at $13,000 to $14,170, because the floor clamps the low end UP rather than sitting under it. And there is a ceiling: 14 kW of high-efficiency mono with microinverters on a standing-seam two-storey reaches $47,334 and the widget stops pricing, because past $45,000 that is a job you want to quote with your own eyes on the roof.
Service call, the array stopped producing — quotes instantly
The other half of this trade, and the half that rings the phone. Its own $185 base fee for the trip, the ladder and the diagnostic, its own $285 minimum, and a band of plus or minus 8% — TIGHTER than the install, on purpose, because a fault on an existing array is a better-known job than a new one. A dead out-of-warranty inverter on a 24-panel two-storey array, at the next opening, is $2,399 to $2,817. The cheapest possible call — birds under a four-panel array, one walkable storey, no screen, this week — floors at $332 to $390. Twenty panels, ninety-six feet of critter screen and needed today because it is producing nothing is $3,685 to $4,326. Push it far enough — a dead inverter on sixty panels, three storeys, three hundred feet of screen, today — and it reaches $16,439.50 and routes, because past $6,500 that is a re-install decision rather than a repair.
Ground mount and commercial — we come and scope it
Site-visit mode captures the whole spec and shows no number at all, which is the only honest answer to a field array, a pole barn, a commercial roof, a house that is not built yet or a carport. It asks what it is looking at, roughly how many kilowatts, how far it is from the array back to the meter, whether the service is three-phase and whether anybody has quoted it already — and not one of those answers moves money. The distance question is the one that proves the point: on a ground mount the trench, the conduit and the copper are usually the second biggest line on the job after the panels, and no six-answer form is going to price a trench it has not seen. She gets your own "we will come and look" message; you get a lead worth bidding. Notice the service NAME says so, because the name is the only place the widget can tell her before she starts.
A floor of thirteen thousand dollars, and why a number that big is the honest one
Every other trade on this site sets a minimum in the hundreds. This one sets it at $13,000, which makes it the largest instant-service floor anywhere in our demo estate, roughly double the next one. That is a decision rather than a default, and the reasoning is in the fixture file where the next person will find it: the cheapest array the form can describe — 5 kW, standard panels, a string inverter, one storey, asphalt — computes to $12,250, and a crew that owns a rack truck, a permit runner and an electrician does not roll out for less than thirteen. The visible consequence is that the smallest jobs quote AT the floor, so a 3 kW array and a 5 kW array both come back $13,000 to $14,170. That is not a bug in the band; it is the floor doing exactly what a floor is for, and it is better than a website quoting somebody $8,000 for an array nobody will build.
The travel zones stack on top of all of it, and they are the same engine run on the same eight answers with nothing changed but the ZIP: York 17402 is $25,082 to $30,043, a Baltimore ring ZIP is $25,391 to $30,414, a ZIP in the catch-all zone out west is $26,558 to $31,812, and a ZIP outside every zone you serve gets no price at all — a polite decline, with the lead still captured. Those gaps are small and they should be. A service that quotes will not go live until it carries a real base fee or a real minimum, which is deliberate: a service with neither would happily return $0 to a homeowner, and one bad number on your website costs more than a day of setup.
One thing our own scan says about this trade, because it changes who you should be linking to rather than just who you are. Of the contractors we have labelled solar, more than four in five also carry another trade label — most often electrical, then roofing, a long way ahead of anything else. Solar is not an island business; it is usually the second or third thing on somebody’s truck. If that is you, the electrical page and the roofing page describe the other cards you would run on the same account, and one account carries all of them. That figure is ours, measured on 16 September 2026, and it counts labels rather than businesses — a shop labelled both is one shop.
The call that decides a five-figure job comes in at half past seven
A solar office is a desk and a sales calendar, not a dispatch board, which is why our demo shop keeps the narrowest hours in the estate: 9 to 5, and it says so. Nobody’s array is an emergency at six in the morning. But the call that actually matters in this trade is the evening one — somebody has just opened a summer electric bill, or watched a monitoring app show zero on the hottest week of the year — and at half past seven every installer in the search results is shut. Roughly 62% of contractor calls go unanswered, about 78% of jobs go to whoever responds first, and voicemail gets a callback around 3% of the time. On tickets this size that is not a lost afternoon. It is the quarter.
| What a missed solar call is worth | On the demo account |
|---|---|
| 9 kW, high-efficiency panels, optimizers, two-storey asphalt | $25,082 – $30,043 |
| The same array on a concrete or clay tile roof | $30,299 – $36,292 |
| Dead out-of-warranty inverter, 24 panels, two storeys | $2,399 – $2,817 |
| Birds under the panels, 96 ft of critter screen, needed today | $3,685 – $4,326 |
| Voicemail callback rate | ~3% |
| One recovered install pays for | 126 months of the bundle |
| One recovered inverter swap pays for | 12 months |
That first row is more than a decade of the whole front office off one recovered job, which is the arithmetic nobody in this trade actually runs. CallMitt™ writes back from your own texting number, a local number registered to your business and not a stranger’s 800 line, and the text opens with your business name, so she replies into the same thread as her quote. The message is picked by the hour and the day against the hours you actually keep, so a 7:30pm call gets the after-hours version — which on this demo is written for exactly that caller, asking for her address and what the last bill was so somebody can come back to her first thing.
Straight about where this stands. We have no SMS gateway on our side yet, so nothing we compose reaches a phone today — you log the missed call and the reply is written, compliance-checked and held in your outbox where you can read it. Everything around it is built and running now: the five messages, the business-hours, weekend, holiday and vacation rules, the quiet hours, the opt-out handling, and the thread her reply lands in beside her quote. Two things that wording usually leaves out, and both are permanent: texting runs 8am to 9pm where the caller is, read off their area code, and no setting on our side relaxes it, so a call outside that window is recorded as blocked with the reason rather than queued and nothing re-attempts it in the morning; and a reply held longer than an hour is retired rather than delivered when sending switches on, because nobody wants a month-old “sorry we missed your call” landing on a customer’s phone.
How CallMitt Works Run Your Own NumbersAn installer is hired on one question, and it is about July
The man you want is on a south-facing shingle roof in a harness in the third week of July, carrying modules up a ladder all day. Plenty of people will tell you they are fine with roofs in April. Finding out in the first week of a heat wave that they are not costs you the day, the crew around him and the install date you promised. The second thing a résumé never makes clear is the difference between somebody who has carried panels and somebody who can actually commission the system — strings, an inverter, a rapid-shutdown device — and that gap is most of what you are paying for.
Put “Now hiring — text CREW to your texting number” on the van and the yard sign. CrewFunnel™ asks seven short questions: is he 18 or older, is he up for full days on a roof in a harness in July, has he wired PV strings and commissioned an inverter, how many years has he done solar install work, how far out does he live, can he start inside two weeks, and what was the last job he worked on. Three of those are knockouts — under 18, not up for the roof work, or living more than thirty miles out — and three come back as a weighted fit score, years in the trade heaviest and the start date next.
Two things about that scoring are worth copying. Distance is a knockout and never a weight, because a number answer scores higher the bigger it is, so weighting miles would rank the man furthest away at the top. And free text carries no weight at all, because any non-empty answer scores full marks and a weighted text box quietly inflates every candidate who typed anything. Both are set that way on our own demo job, and every question on it carries a Spanish translation.
One honest note on delivery. There is no inbound SMS on our side yet, so today he answers those seven questions on your screening page rather than by text — same questions, same knockouts, same scoring, same pool. The keyword on the van takes over the day your carrier registration clears.
See how CrewFunnel worksAn array gets its review the day it is switched on, not when the first bill comes
The inspector has signed, the utility has swapped the meter, and on commissioning day she stands in the side yard watching it run backwards for the first time. That is the day she would write you a review, and she would put the photo in it. The first bill is weeks away, and by then the array is just part of the roof and the credit on the statement belongs to the sun. The outfit with sixty reviews is not sixty times better than you; somebody there asks every customer, on commissioning day.
HurraBell™ does the asking. Mark the job done — from the inbox, from your phone, or from your job software through Zapier — and the customer gets one request in your words, with your own Google review link, after a delay you pick: an hour, unless you change it. Three days later, one email reminder, unless the link has been opened or the customer has got back in touch.
Review requests aren’t switched on yet, so none is sent today. When they are, the request goes by email once your Google review link is saved on the HurraBell page and your mailing address on the Account page. A text goes as well where the customer agreed to texts, and only once your carrier registration clears, the same wait as every text on this site; until then it is email only.
See how HurraBell worksOne recovered install covers 126 months
And a single recovered inverter swap covers 12 of them. In a trade where one missed evening call is a five-figure job, that is the arithmetic that matters.
The Tailgate Office Bundle
Instant quotes on your website, missed-call text-back, text-to-apply hiring, review requests, and customers, jobs, estimates and invoices in one place. 30 days free, no credit card, no setup fee, cancel from the dashboard.
Start Free TrialOnly need one of the tools? After the trial you can keep just that one at its own price; the office stays with the Bundle.
Solar questions we get asked
No, and it never will be. Every figure on this page and in the widget is the GROSS contract price — what the contract says, what the invoice says, and what the engine actually computes. The credit depends on her own tax liability and on owning the system rather than leasing it, it is claimed months later on a return rather than on your invoice, and it steps down on a schedule. A quote form knows about a roof. It does not know about a tax bill, and a website that pretends otherwise is writing a number the homeowner cannot reproduce and you cannot honour. What the demo does instead is ask whether she is claiming it, price nothing off the answer, and say beside the band that this is the price of the work before any credit she goes on to claim. If she works out for herself that her real cost will be lower, you have been honest and she still called you.
Not through this widget, and that is a limitation worth stating rather than working around. There is no finance term anywhere in the engine — no rate, no term length, no field that expresses either — so anything monthly on your site would have to be a number typed by hand beside a number the engine computed, and the two would drift apart the first time you changed a rate. The band is a planning figure for the contract price. Finance is a conversation you have at the kitchen table with a lender’s own numbers in front of you, and it is a much better conversation to have after she already trusts your price.
You can price a range, which is all the widget ever shows. On this trade the range is a genuine plus or minus 9%, and the four things that set the price — how many kilowatts, what panel, what the roof is covered with and how far up it is — are all knowable from the kitchen table. What is NOT knowable is the shade report, the exact roof planes and what is actually in the main panel, which is why the disclaimer says the price is confirmed after the survey and why the panel-upgrade question tells her to answer no if she is not sure. She stops shopping, and the person who wanted a 12 kW array for nine thousand dollars never fills in your callback form at all.
Because a solar price is kilowatts times a dollars-per-watt figure, and the dollars-per-watt is set by four other answers. No pricing rule multiplies one question’s answer by another question’s answer — a per-unit rate multiplies a number by a FIXED amount — so the shape that works is a baseline rate on the size question with the qualitative answers carried as percentages on the whole job. That is the same shape our fencing demo uses, with kilowatts in place of linear feet. The result is that a slate roof reads as plus 34% rather than as a different dollars-per-watt, which is arithmetically the same thing and looks stranger. It is also true: slate really is a third more day than shingle, and it breaks.
Because the cheapest array the form can describe — 5 kW, standard panels, a string inverter, one storey, asphalt — computes to $12,250, and a crew with a rack truck, a permit runner and an electrician does not roll out for less than thirteen. It is the largest instant-service floor in our whole demo estate, roughly double the next one, and it was set deliberately rather than left at a default. You can see it working: a 3 kW array and a 5 kW array both come back at $13,000 to $14,170, because the floor clamps the low end up rather than sitting under it. A website that quoted somebody $8,000 for an array nobody will build costs you the callback and the reputation at the same time.
Because the engine cannot carry it honestly, and pretending otherwise is how you end up with a product that does not do what the website said. A ground mount is priced by the trench, the conduit and the copper back to the meter, frost-depth footings, and a county setback somebody has to go and read. A commercial roof, a pole barn and a house that is not built yet are each their own version of the same problem. So they route to a site visit, the service is NAMED "we come and scope it" because the name is the only place the widget can warn her before she starts, and nothing on this page prints a per-watt figure for a ground mount. Same discipline the chimney page keeps for a stainless reline.
Call it fifteen minutes for your text-back messages and your working hours, a minute, once review requests are switched on for your account, to paste your Google review link on the HurraBell page and your mailing address on the Account page, and about an hour to write the eight install questions and load one rate card — your dollars-per-kilowatt baseline, your panel and inverter percentages, your roof-covering bands, your height bands and your service-upgrade amount. Then most of another hour for the service call, which has its own base fee, its own per-panel rate, its own urgency question and a tighter band. A service that quotes will not go live until it carries a real base fee or minimum, which is deliberate. No onboarding call, no setup fee and no contract: $199 a month buys all four tools.
Wire service upgrades or reroof as well? See the electrical page, the roofing page, all the trade pages, or call (301) 268-1943.
Give her the real number before she closes the tab.
Set it up tonight. Free for 30 days, no card, no setup fee, cancel from the dashboard.