Upload a Solar Proposal PDF
We extract likely proposal fields from text-based PDFs, show what was detected, and let you load those values into the analyzer for manual verification.
Maximum 10 MB. Up to the first 30 pages are read. Image-only/scanned proposals currently require manual entry. Do not rely on extracted values until you compare them with the original PDF.
Quote Analyzer Readiness — incomplete
Pricing ready · Benchmark ready · Production ready · Equipment incomplete · Financing ready · Warranty review
Next action: Confirm the exact panel model. Record the exact module model rather than relying on a generic manufacturer or premium-panel description.
- Exact panel model is missing.
- Exact inverter or microinverter model is missing.
- Workmanship or installer service warranty term is still missing.
- Roof-penetration or leak warranty term is not recorded; verify whether the proposal has a separate term or exclusion.
- 1 analyzer watch flag remains for proposal review.
The solar-only cash-equivalent price is within 25% of the Texas marketplace benchmark of $2.25/W. Equipment, workmanship, roof scope and local market conditions still need comparison.
The proposal implies about 1,480 kWh/kW/year. Compare it with ZIP-specific PVWatts and the installer's roof and shade model before relying on savings projections.
A serious quote should identify the panel and inverter models, not only the manufacturer or a generic premium-equipment description.
Questions to ask the installer
- What is the cash price with no financing, and what line items are excluded?
- Does the financed number mean the financed contract price, Regulation Z Amount Financed, or the loan amount / principal?
- If this is a loan, what are the APR, Finance Charge, scheduled payment, Total of Payments and any step-up or re-amortization conditions?
- Which exact panel, inverter and battery model numbers will be installed?
- Which software and assumptions produced the annual kWh estimate?
- Which utility export rule and electricity-rate escalation are used in the savings projection?
- What are the installer workmanship, roof-penetration and service-response warranties?
Pricing benchmark: Texas average $2.25/W from EnergySage Marketplace residential solar pricing, updated September 11, 2026. Marketplace averages are useful comparison points, not appraisals. Local roof complexity, electrical work, equipment, installer scope and system size can materially change a fair quote.
This analyzer compares the numbers you entered with transparent planning benchmarks. Readiness is a data-completeness workflow aid, not an appraisal, installer rating or guarantee that a quoted price is fair for a particular roof or market.
Stress-test the battery in this quote
Choose the exact battery model and the number of full battery units written into the proposal. Home Solar Atlas will carry those equipment details into the 72-hour outage simulator. The current battery-portion price stays out of the URL and, when browser session storage is available, is carried only into the current tab for quote-based resilience economics.
Confirm a supported battery model, full-unit count and positive battery-portion price to calculate quoted package cost per usable kWh.
Quoted package $/usable kWh is a normalization metric, not a market-price benchmark or value score. Gateway/controller equipment, electrical work, labor, taxes, multi-unit discounts and bundled scope may differ between proposals. The total quoted package price is never used to invent first-unit or incremental-unit pricing.
Know which proposal signals deserve a second look
A system-size mismatch, unusually high production forecast, unclear financed amount, escalating lease/PPA payment or generic equipment description is a reason to verify the written proposal, not an automatic verdict on the installer. Use the red-flags guide to understand what each signal means, then return to the dedicated checker for the actual numbers.
Undetected PDF fields stay blank
When you use values extracted from a proposal PDF, Home Solar Atlas replaces the analyzer form with the detected proposal values rather than keeping unrelated demo assumptions. If the PDF does not provide a project state, system size, cash-equivalent price, production estimate, panel model, inverter model, financing field or warranty term, that field remains blank and Quote Analyzer Readiness marks the relevant comparison incomplete or needing review.
A missing state therefore does not silently become Texas, and missing size, price or production values do not produce a fabricated $/W or production-yield comparison. If battery and non-solar deductions equal or exceed the entered project total, normalized solar $/W is blocked until the itemization is corrected rather than being displayed as $0/W.
Detected financing and warranty terms remain reviewable
When the PDF extraction engine identifies financing type, APR, loan term, Finance Charge, Number of Payments, Payment Frequency, workmanship/service warranty or roof-penetration/leak warranty, those values load into editable review controls together with the pricing, production and equipment data. Detection is still only a review aid: compare every loaded field with the original proposal and financing documents.
Financing readiness follows the structure that is actually selected. A loan requires the financing type, APR and loan term before that portion is considered complete. A lease, PPA or other non-loan structure is not forced through loan APR math; instead the analyzer keeps a review advisory for the contract term, escalator or payment schedule, buyout/transfer rules and total obligation. A financed amount marked as cash is treated as a mismatch that must be corrected.
For loan disclosures, Home Solar Atlas separates a financed contract price, Regulation Z Amount Financed and a loan amount / principal. Amount Financed is kept as its own disclosure meaning instead of being assumed equal to principal. A generic label such as “Financed Amount” is not assigned one of those meanings unless the proposal makes the scope clear. An explicitly labeled Finance Charge is also kept as its own dollar disclosure; it is not treated automatically as a dealer fee, cash-to-financed markup or modeled interest amount, and it is not a Quote Analyzer Readiness blocker.
For the payment schedule, an explicit Number of Payments and Payment Frequency can be extracted and corrected separately. Those references still do not establish the complete Regulation Z schedule on their own because the scheduled amounts and beginning-payment date or listed due dates must also be reviewed in the original disclosure.
Move confirmed loan terms into the Loan Calculator
When financing type is set to loan, Quote Analyzer can transfer the current cash price, quoted financed amount and its reviewed scope, APR, loan term, an explicitly quoted monthly loan payment, reviewed Number of Payments and Payment Frequency, an explicitly quoted Total of Payments and an explicitly quoted Finance Charge into the Solar Loan Calculator through browser session storage in the same tab. The proposal PDF, installer name, equipment fields and contact details are not part of that transfer.
Partial loan data stays partial. If APR or term is still missing, the Loan Calculator leaves that field blank and withholds payment and total-cost results instead of silently substituting a demo rate or term. A confirmed financed contract price can be reconciled with modeled project price and can optionally supply a cash-to-contract-price modeling markup. A confirmed loan amount/principal can be reconciled with modeled principal. Regulation Z Amount Financed and Finance Charge stay disclosure references and are not automatically substituted for modeled principal, project price, dealer fees or modeled interest.
Quote Analyzer Readiness is a completeness check
The readiness block separately checks normalized pricing, state benchmark context, production, exact panel/inverter identity, financing structure and workmanship-warranty information. It then gives one deterministic next action, beginning with system size and cash-equivalent price before moving through itemization, state, production, equipment, financing and warranty gaps.
Readiness is not an installer rating or fair-price verdict. Roof-leak warranty gaps and non-loan financing structures remain visible as review advisories even when the core comparison fields are otherwise complete. Optional disclosure references such as quoted monthly payment, Number of Payments, Payment Frequency, Total of Payments and Finance Charge do not independently make readiness pass or fail.
Normalize the battery portion without inventing a market price
When you confirm a supported battery model, full-unit count and positive battery portion, the analyzer divides the quoted package price by the catalog usable capacity of the confirmed configuration. The result is shown as quoted package $/usable kWh.
This is a normalization metric, not a Home Solar Atlas market benchmark or value score. A gateway, controller, electrical work, labor, taxes, multi-unit discount or other bundled scope can make two battery packages materially different even when their normalized $/usable kWh values look similar.
From installer quote to 72-hour battery resilience
After reviewing the proposal, confirm the exact quoted battery model and full-unit count in the handoff block below the analyzer. When a text-based PDF clearly names Tesla Powerwall 3, Enphase IQ Battery 5P or FranklinWH aPower 2 and gives an explicit quantity, Home Solar Atlas can prefill those fields for review. Unknown products are not fuzzy-matched or guessed.
The confirmed equipment assumptions carry into the 3-day outage calculator and are checked against the same minimum-pass and reserve-floor logic used for the catalog comparison. The battery portion price is not placed in the URL. When browser session storage is available, the current quote total is carried only within the current tab so the resilience page can show the quoted package cost per usable kWh without extrapolating that package price to a different battery count.
Request Local Solar Quote Matching
If your current proposal looks expensive or incomplete, send Home Solar Atlas the basics of your project. The initial request stays first-party and does not authorize us to share your contact details with installers.
Have two or three proposals?
Use Quote Compare to run the same extraction logic across multiple installer PDFs and see normalized solar $/W, supported battery package $/usable kWh, system size, production, financing terms, equipment, live Proposal Readiness and review flags in one comparison flow.
How PDF extraction works
The upload workflow reads selectable text from up to the first 30 pages of a PDF and looks for common proposal fields such as system size, project price, financed amount and its label, battery price, annual production, panel and inverter models, financing type, APR, loan term, quoted monthly payment, Number of Payments, Payment Frequency, quoted Total of Payments, quoted Finance Charge, workmanship warranty, roof-penetration/leak warranty and proposal date.
Payment-schedule extraction is deliberately conservative: it looks for explicit labels or compact wording such as “240 monthly payments” and does not derive Number of Payments from the loan term. Finance Charge extraction is similarly narrow and does not relabel a generic financing fee as Regulation Z Finance Charge. For battery resilience, the extraction engine also recognizes three current Home Solar Atlas catalog families when they are named clearly: Tesla Powerwall 3, Enphase IQ Battery 5P and FranklinWH aPower 2. Detected values are prefilled only for review and must still be checked against the original proposal. Image-only or scanned PDFs currently require manual entry.
How the pricing comparison works
Home Solar Atlas first removes separately entered battery, roofing, main-panel and other non-solar work from the cash-equivalent project price. The remaining positive solar-only price is divided by the DC system size to calculate $/W. If the deductions leave no positive solar-only price, the result is marked incomplete until the itemization is corrected.
Where a current state marketplace average is published, the analyzer compares against that state instead of using one national price for every homeowner. When a publishable Home Solar Atlas state sample exists, the analyzer also compares your quote with the median of approved anonymized homeowner submissions. Battery package $/usable kWh remains a separate quote-normalization metric and is not compared with those solar market benchmarks.
Quote Analyzer v3 privacy
The PDF extraction endpoint processes the uploaded file for the current request and does not add the PDF, its full extracted text or detected fields to the Real Solar Prices database. Contributing anonymized quote data remains a separate, explicit action on the Submit Quote page.
The optional loan-calculator handoff stores only the current cash price, quoted financed amount and reviewed scope, APR, loan term, quoted monthly loan payment, reviewed Number of Payments and Payment Frequency, quoted Total of Payments and quoted Finance Charge in browser session storage for this tab. It does not transfer the proposal PDF, installer identity, equipment or contact details.
The optional battery-resilience handoff stores the quoted battery package total only in browser session storage for the current tab when that browser feature is available. The price is not added to the resilience URL or the public quote dataset.
The Solar Quote Checklist is separate from PDF extraction. It stores only checked checklist-item IDs in browser session storage when available and does not store the proposal price, installer identity or PDF file.