Solar installers often ask for a state price before the project scope exists. That shortcut produces a neat budget and a poor comparison. A plan set vendor prices deliverables. The permitting authority charges permit fees. An engineer prices any required engineering review. Those are different transactions.
Direct answer. Solar plan set cost by state is not a reliable fixed table. The state affects licensing and some code rules, but the project address resolves the authority having jurisdiction. The final quote depends on system type, required sheets, engineering scope, field data, revisions, and submission work. Compare written scopes for the same project, not unsupported statewide averages.
This guide shows how to build that comparison. It uses public vendor pricing only where a current price page supports the figure. Heaven Designs does not publish a rate card in this article.
Is there a real solar plan set price for each state?
No public source establishes one plan set price for every project in a state. A vendor can publish a rate, but that is the vendor’s offer for a defined scope. It is not a statewide market price.
The state still matters. It can govern engineering licensure, statewide code rules, and limits on some government fees. Yet the project address usually resolves the local authority having jurisdiction, its checklist, and its fee schedule.
The useful question is more specific:
What will this provider charge for this project, under this AHJ, with these deliverables and revision terms?
That wording turns an abstract state price into a comparable quote.
Which costs are people combining by mistake?
Four separate charges often appear under the label “permit cost.” Keep them separate in budgets and vendor comparisons.
| Cost layer | Who charges it | What it can cover | Where to verify it |
|---|---|---|---|
| Plan set preparation | Designer or engineering provider | Drawings, calculations, product schedules, and document assembly | Written provider quote |
| Professional engineering | Licensed engineer or engineering firm | Defined structural, civil, or electrical review | Written scope and state license record |
| Building permit | City, county, or another permitting authority | Plan review, permit issuance, and sometimes inspection | Current AHJ fee schedule |
| Utility interconnection | Serving utility | Application, review, study, or metering work | Current utility tariff and application documents |
Expediting can be a fifth line. It may cover portal submission, status follow-up, and correction coordination. It does not replace engineering or the government fee.
The US Department of Energy includes design, siting, permitting, installation, interconnection, and financing within solar soft costs. That definition shows why a single “permit price” can hide several owners and workflows. See the DOE soft-cost overview, accessed September 26, 2026.
What does public vendor pricing prove?
It proves what one provider offered on the observation date. It does not prove a state average or the price another buyer will receive.
Solar Permit Solutions displayed the following flat rates on its public pricing page on September 26, 2026.
| Public offer | System size on the page | Displayed amount | Stated inclusions |
|---|---|---|---|
| Residential or accessory dwelling unit | Up to 20 kW | $1,200 per plan set | Permit-ready plan set, PE stamp, code review, digital delivery |
| Large residential | 20 kW to 30 kW | $2,000 per plan set | Residential scope plus listed large-system additions |
| Commercial and custom | 30 kW and above | Starting at $3,700 per plan set | Listed commercial, ground-mount, and pergola scope |
Source: Solar Permit Solutions pricing page, observed September 26, 2026. Recheck the live page before using these figures in a purchase decision.
This table is useful because the seller defines size bands and inclusions. It is not a national benchmark. The page does not turn those figures into state prices.
Another listing illustrates a freshness trap. Portable Sun displayed an EnergyScape residential solar-only permit plan set at $480 on September 26, 2026. The same page marked the item unavailable. An unavailable catalog listing is not a current purchasable quote. See the Portable Sun listing.
The practical rule is simple. Bind every price to a seller, exact scope, date, and availability status.
How do you audit a public price page?
A number without its conditions is not procurement evidence. Save the page and record the following fields.
Observation date
Price pages change. Record the date and retain a PDF or screenshot with the source URL.
Do not update the number in a comparison sheet without updating its date. A current date beside an old price creates false confidence.
Availability
Confirm that the service can still be ordered. A search result, cached page, or unavailable store item may preserve an amount after the offer ended.
Availability also has geographic limits. A provider may sell design services nationally while limiting engineering coverage or submission support.
Size band
Identify the stated capacity threshold. Check whether it uses direct-current or alternating-current capacity.
A project near the boundary may move into another tier. Ask how the provider treats later capacity changes.
Included disciplines
Look for structural, civil, and electrical language. A PE stamp does not automatically cover every discipline or sheet.
The provider should define which engineering work sits inside the amount. If the page only says “engineering included,” request a written explanation.
Included revisions
Read the definition, not the headline. Unlimited AHJ revisions may exclude owner changes, equipment substitutions, inaccurate field data, or new utility requests.
Capture those exclusions before comparing the offer with a provider that prices change orders separately.
Government and utility fees
Check whether the displayed amount includes fees paid to the AHJ or utility. Most price pages discuss the provider’s service, not those outside charges. Use the solar permit fee routing guide by state to find the correct government source for a project address.
Treat a silent field as unknown. Do not assume it is included.
| Public-price evidence field | Pass condition |
|---|---|
| Seller | Legal business or named provider is clear |
| Offer | Exact service and project type are named |
| Amount | Currency and pricing unit are shown |
| Size band | Capacity boundary and basis are clear |
| Engineering | Included discipline and jurisdiction limit are stated |
| Revisions | Included and excluded changes are stated |
| Fees | AHJ and utility charges are addressed |
| Availability | Offer can be ordered for the project |
| Observation date | Buyer records when the page was checked |
A price page that fails several fields can still start a conversation. It should not close the budget.
Why can two quotes for the same state differ?
The state name is only one field. A quote changes when the work changes.
Project type
A residential rooftop package does not contain the same work as a commercial rooftop, canopy, ground mount, or battery project. Sheet count alone does not capture the difference.
The design may need additional calculations, civil information, structural details, equipment schedules, or coordination. Compare the commercial and residential permit-design scopes before treating them as one product.
Site information
Clean input data lowers uncertainty. Missing roof framing, service information, equipment selections, or field dimensions can add investigation and revision work.
A low quote based on assumed inputs is not directly comparable with a quote that includes field-data review. Mark each assumption before selecting a provider.
Engineering scope
The AHJ may request structural, civil, or electrical engineering for defined documents. The signing professional must have lawful authority to practice in the project jurisdiction.
The solar PE stamp guide explains how to separate the state licensing question from the local permit trigger. Do not add an assumed stamp charge to every project.
Revision terms
One quote may include AHJ comments caused by the provider’s work. Another may limit revisions or exclude equipment and site changes.
Ask what happens when:
- the AHJ requests clarification;
- the utility changes the interconnection method;
- the installer changes a module or inverter;
- field dimensions differ from the survey;
- the array layout changes after engineering;
- a permit expires before construction.
The answer belongs in writing. The word “revisions” is too broad by itself.
Submission and coordination
Drawing preparation, portal submission, and permit expediting are different tasks. A provider may offer one, two, or all three.
If a quote includes submission, identify who pays the AHJ and utility fees. Confirm who receives correction notices and who communicates with the reviewer.
How does the state affect a plan set quote?
The state can affect the rules around a project, but it rarely provides the complete price.
Use this state-level check before requesting quotes:
| State-level question | Why it can affect scope | Primary source to use |
|---|---|---|
| Who regulates professional engineering? | Determines license and seal rules | State engineering board |
| Is there a statewide code or amendment? | Can change required design criteria | State code authority |
| Does state law limit a local solar permit fee? | Can constrain the AHJ charge, not the vendor price | Current state statute |
| Does the state mandate an expedited pathway? | Can change the submittal process | State legislation or agency guidance |
| Are firm registrations required? | Can affect who may offer engineering | State engineering board |
Then move to the local level. Resolve the building department, adopted code, checklist, permit fee, and submission portal for the address.
This order prevents two common errors. The first is applying a state board rule as a local stamp trigger. The second is treating a statutory permit-fee limit as a cap on private design work.
Which state differences matter most to cost?
Not every state difference changes the provider’s work. Focus on the ones that alter scope or risk.
Engineering licensure and firm authorization
State boards govern professional engineering. The project may require an individual license, a firm authorization, or both for the offered scope.
Licensure can affect provider availability. It does not prove the AHJ requires sealed documents for that project. Verify the local trigger separately.
Statewide and local code adoption
Some states adopt codes statewide. Others allow local amendments or local adoption. The quote should state which source the provider will verify.
A generic statement such as “current code” is weak. The project record needs the adopted edition and any relevant amendment source.
Environmental design criteria
Wind, snow, seismic, flood, and exposure criteria depend on the site and governing rules. State lines do not replace address-specific design inputs.
If engineering is included, ask who resolves those criteria. If engineering is excluded, identify who supplies them to the drafter.
Permit pathway
An expedited or automated pathway may change forms, eligibility checks, and drawing requirements. It does not automatically eliminate every drawing or calculation.
Record whether the project qualifies. A quote based on an expedited path can change when one eligibility condition fails.
Local fee method
An AHJ may use a flat schedule, a valuation method, a capacity formula, or another method. The current local source controls the budget entry.
Do not copy a neighboring city’s fee. Do not use a statewide average when the statute or fee schedule gives a project-specific method.
Portal and submission rules
File limits, naming conventions, digital signatures, owner authorizations, and contractor accounts can add coordination work.
Submission support may be worth purchasing in a complex portal. It remains separate from the design itself.
These factors can vary within one state. That is why an address-based matrix is stronger than a state price map.
California shows why the fee labels matter
California Government Code Section 66015 limits certain local solar permit fees. For a residential photovoltaic system, the statute sets a $450 ceiling plus $15 per kilowatt above 15 kW. A local authority can exceed that amount only through the written-finding process described in the statute.
That provision remains in effect until January 1, 2034. It applies to a government permit fee. It does not set a price for a private plan set, PE review, utility application, or expediting service.
Source: California Government Code Section 66015, amended by AB 1132 effective January 1, 2024, accessed September 26, 2026.
This is the level of evidence a state fee number needs. A blog range without the current statute, exception, and effective period is not enough.
What should a state-by-state cost matrix contain?
A useful matrix tracks sources and scope. It does not fill fifty rows with unsupported dollar ranges.
Use one row per operating jurisdiction:
| Matrix field | Required entry |
|---|---|
| State | Project state |
| Project address | Address used to resolve the AHJ |
| AHJ | Confirmed city, county, or other authority |
| Permit type | Residential PV, commercial PV, storage, canopy, or ground mount |
| Checklist source | Current official URL and revision date |
| Adopted code source | Official code authority or AHJ page |
| Engineering trigger | Exact clause or written AHJ response |
| State license check | Official board record and verification date |
| AHJ permit fee | Official fee schedule or calculator result |
| Utility charge | Current utility document, if applicable |
| Provider plan set fee | Dated written quote |
| Included revisions | Exact contract language |
| Exclusions | Survey, engineering, submission, or another omitted item |
| Evidence date | Date each volatile source was checked |
This matrix supports fifty states without pretending every state has one number. It also exposes when a buyer is comparing an unstamped drafting set with a broader engineered package.
How do you build the matrix for a multi-state pipeline?
Start with the places where work is scheduled, not all possible markets. A verified ten-jurisdiction matrix is more useful than fifty guessed rows.
Step 1: normalize jurisdiction names
Use the official city, county, or district name. Add a unique internal identifier so similar names do not merge.
Record how the jurisdiction was resolved from the address. Postal cities can differ from permitting boundaries.
Step 2: store primary sources
Save the permit checklist, fee schedule, code-adoption page, and submission instructions. Record each revision or effective date.
Link to the exact document. A building-department homepage is not enough when the rule sits in a PDF.
Step 3: record project categories
Separate residential rooftop, commercial rooftop, storage, ground mount, and canopy projects. One AHJ can use different rules for each.
Do not overwrite the residential row when a commercial requirement differs. Use distinct records.
Step 4: bind every amount
The matrix should name the source of each amount. Use the provider quote for design. Use the AHJ source for permit fees. Use the utility document for interconnection charges.
Mark sales tax or card fees separately when they apply. Do not blend them into the base plan set price.
Step 5: preserve exceptions
Store the threshold and exception beside the amount. California’s written-finding exception is part of the fee rule, not a footnote to discard.
If an amount depends on project valuation, store the valuation basis used. Another project may produce a different result.
Step 6: set review triggers
Review a row when the AHJ changes its checklist, fee schedule, portal, or adopted code. Review it when the provider changes scope or pricing.
A quarterly sweep can catch obvious changes. Every live project still needs an address-specific check.
| Matrix status | Meaning | Buying action |
|---|---|---|
| Verified | Current primary source and observation date saved | Use for the named project class |
| Quote required | Scope is known but no current provider amount exists | Request a written quote |
| AHJ clarification required | Official documents do not answer the project case | Ask a narrow written question |
| Stale | Source or quote passed its review date | Recheck before budgeting |
| Conflicted | Two current sources disagree | Escalate before design starts |
This status field prevents an old amount from looking current because the spreadsheet cell remains filled.
What should every quote include?
Require the provider to name the output. A short quote should still answer the following questions.
Drawing deliverables
List the expected sheets. Typical categories can include a cover sheet, site plan, array layout, equipment schedule, electrical diagram, labels, mounting details, and calculations.
The exact set depends on the project and AHJ. Use the plan-set contents guide to build the initial scope.
Engineering deliverables
State whether the quote includes engineering analysis, sealed documents, or coordination with an outside engineer. Name the discipline and affected sheets.
Do not accept “PE included” as the complete scope. The quote should identify jurisdiction limits, assumptions, and what happens when engineering inputs change.
Input responsibilities
Identify who supplies the site survey, roof dimensions, framing data, service information, equipment models, photographs, and AHJ documents.
Unknown inputs should remain unknown until verified. A quote based on assumed field data may change after the survey.
Revision responsibility
Separate provider corrections from owner changes. A reviewer clarification caused by an incomplete drawing is not the same as a post-design equipment substitution.
Ask for the number of included cycles only after defining what counts as a cycle.
Submission responsibility
State whether the provider only delivers PDFs or also uploads, pays fees, monitors status, and answers comments.
If submission is included, confirm whose portal account is used. Preserve the final submitted package and receipt in the project record.
How do you compare quotes without a false average?
Normalize each quote into the same cost stack.
Use the following equation.
Comparable permit-package cost = plan set fee + required engineering + AHJ fee + utility fee + submission or expediting + excluded required work.
Do not enter a zero when a quote is silent. Mark the item “not stated” and ask the provider.
| Comparison line | Provider A | Provider B | Provider C |
|---|---|---|---|
| Drawing scope | |||
| Structural scope | |||
| Electrical scope | |||
| State-licensed engineering | |||
| AHJ submission | |||
| Utility submission | |||
| Included revisions | |||
| Owner-change rate | |||
| Government fees | |||
| Required exclusions | |||
| Evidence date |
This worksheet prevents a cheap base fee from winning before excluded work is counted.
What makes a quote change after award?
Some changes are legitimate. Others reveal that the original scope was incomplete.
Legitimate price changes can follow:
- a different project address or AHJ;
- a change from rooftop to canopy or ground mount;
- verified framing that falls outside the original assumption;
- a battery, generator, or service upgrade added later;
- a newly required engineering discipline;
- an equipment substitution that changes calculations;
- a utility study or drawing requirement outside the permit scope.
A provider should explain the trigger and revised deliverable. The buyer should be able to connect the added charge to added work.
Avoid contracts that let every AHJ comment become a change order. Also avoid unlimited-revision language that excludes every meaningful change in fine print.
Should installers use per-project pricing or a retainer?
The answer depends on volume stability and scope consistency. Per-project pricing transfers idle-capacity risk to the provider. A retainer reserves capacity but can waste budget when the pipeline slows.
Compare both models with the same scope. Do not compare a retainer for drafting only with a per-project engineered permit package.
The retainer versus per-project guide provides a decision framework. Its useful output is the break-even method, not a universal price.
What should you ask about low prices?
A low price can reflect an efficient standard scope. It can also exclude the work the AHJ will request.
Ask five questions:
- Which exact sheets and calculations are included?
- Which project facts can change the quoted amount?
- Is state-licensed engineering included when required?
- Which reviewer comments are included as revisions?
- Does the provider deliver files only, or manage submission too?
The goal is not to reject the lowest quote. It is to make the quote legible.
Which numbers should stay out of a state table?
Remove any figure that cannot be reproduced from a current source. A filled cell is not better than an honest unknown.
Do not publish:
- a nationwide range relabeled as a state range;
- a vendor amount without the seller and scope;
- an installer forum comment as a market price;
- an unavailable listing presented as a current offer;
- a local AHJ fee presented as the fee for the whole state;
- a permit fee presented as the plan set price;
- a stamp charge without the engineering scope;
- a price copied from an earlier article without rechecking the source;
- an internal company amount that commercial leadership has not approved;
- a savings percentage without comparable quotes and scope.
Use quote required, not stated, or source stale instead. Those labels tell the buyer what to do next.
How to approve one budget entry
Before approving a plan-set budget, the reviewer should be able to answer four questions.
- Which seller or authority owns the amount?
- Which deliverable or fee does it purchase?
- Which project facts can change it?
- When was the source checked?
If one answer is missing, the number is not ready for a purchase order.
Store the approval record with the quote. Include the project address, selected scope, exclusions, and decision owner. That record makes a later change order easier to review.
For recurring work, compare the original quote with the final invoice. Tag each difference as scope change, missing input, government fee, utility fee, or provider correction. This creates a useful pricing history without turning past invoices into unsupported public averages.
What should a quote request look like?
Send the same brief to every provider. A consistent request produces more comparable responses.
Use this structure:
Please quote the permit drawing and engineering scope for the project below. Identify every included sheet, calculation, professional discipline, revision category, and submission task. List exclusions and project facts that can change the amount. Separate provider fees from AHJ and utility charges. State the quote validity period and the jurisdiction where any engineering service will be performed.
Attach:
- project address and confirmed AHJ;
- project type and system capacity basis;
- current array and equipment schedule;
- site survey and available field information;
- service information for electrical work;
- current AHJ checklist;
- known utility requirements;
- requested delivery format;
- expected submission responsibility;
- known schedule constraints.
Ask the provider to mark missing inputs. Do not force a fixed quote from incomplete data and then treat later clarification as a surprise.
Questions for the clarification call
Keep the call focused on scope:
- Which item in our brief creates the most pricing uncertainty?
- Which engineering discipline is included, if any?
- What project change would require a new quote?
- How are AHJ comments classified?
- Which files will we receive at release?
- Who owns portal submission and reviewer communication?
- Which fees will appear outside your invoice?
Record the answers in the quote comparison. Verbal promises should be added to the written scope before award.
Which pricing model shifts risk to whom?
Pricing structure changes who carries volume and scope risk. It does not make the engineering more or less valid.
| Pricing model | Buyer advantage | Buyer risk | Best comparison method |
|---|---|---|---|
| Fixed per project | Simple budgeting for repeatable scope | Add-ons can hide outside the base fee | Compare inclusions and change triggers |
| Capacity tier | Easy ordering within named size bands | A small size change can cross a tier | Confirm capacity basis and boundary treatment |
| Hourly | Buyer pays for recorded effort | Final amount is less predictable | Compare rates, estimate, cap, and reporting |
| Retainer | Reserved capacity and repeatable workflow | Unused capacity still costs money | Compare utilization and included project classes |
| Portfolio quote | Can reflect repeat volume and AHJ reuse | Scope drift across projects is easy to miss | Price a representative project mix |
For a portfolio quote, give each provider the same project sample. Include standard and difficult jobs. A price built only from easy rooftops will not represent a mixed pipeline.
The contract should say what happens when monthly volume misses the forecast. It should also state whether unused capacity rolls forward.
Solar plan set cost FAQ
Does a Florida plan set always cost more than a Texas plan set?
No reliable rule supports that comparison. The project type, AHJ, engineering trigger, field data, and provider scope can outweigh the state label.
Is the permit fee included in a plan set quote?
Only if the written quote says so. Government permit fees normally belong to the AHJ. A provider may collect and pass them through during submission.
Does a PE stamp price include the engineering analysis?
Do not assume it does. Ask for the discipline, calculations, sheets reviewed, field-data responsibilities, and revision terms.
Can I use a competitor’s published price as my budget?
Use it as a dated reference for that listed scope. Confirm availability and request a project-specific quote before budgeting.
Why is an unavailable product listing a weak price source?
The seller may no longer offer the item at that amount. Availability is part of price validity.
How often should the pricing matrix be refreshed?
Refresh provider pages before every buying cycle. Recheck AHJ and utility fees for every project. Review state statutes whenever their effective or repeal dates change.
Build the quote before choosing the number
Start with the address and permit path. Define drawings, engineering, revisions, and submission work. Then request comparable written quotes.
Heaven Designs can review a defined solar permit design scope. Public pricing, PE coverage, and delivery terms are not stated here. Use the contact page to share the project address, AHJ checklist, and requested deliverables.
Source status: Public vendor pages and government sources were checked on September 26, 2026. Published vendor pricing moves, so confirm any figure against the vendor’s live page before you rely on it for a purchase decision.