Field Notes

Why Solar Permits Get Stuck: 7 Fixable Causes

Why solar permits get stuck, from missing documents to lost corrections. Diagnose seven workflow failures and prevent avoidable delays.

Why solar permits get stuck

A solar permit can be stuck before anyone at the AHJ opens it.

The problem is not always a slow reviewer.

Sometimes the wrong drawing was submitted. Sometimes nobody answered a correction. Sometimes the application never reached the review queue.

If your team labels all three situations “waiting on permits,” it cannot fix any of them consistently.

Why do solar permits get stuck? The short answer

Solar permits get stuck when a project is not ready for submission, its package does not match local requirements, technical information conflicts, corrections do not reach the right specialist, a submission is not actually accepted, follow-up lacks an owner, or a downstream decision is mistaken for permit approval. External AHJ backlogs can also cause genuine waiting. The operational fix is to identify which event failed, retain evidence of the failure, and assign the person who can change it.

This is a root-cause guide, not a list of software features. The companion Solar1 guide to solar permit tracking software explains what to look for when buying a system. Here, the focus is what a permit manager can change on a live portfolio this week, even with the tools already available.

First separate an internal hold from an AHJ delay

The distinction matters because the two categories require different responses. An internal hold is work your company can complete or escalate: a missing customer signature, an unverified roof measurement, a mismatch in inverter model numbers, an unsigned engineering package, or a correction notice that has no assigned designer. An external hold is an application that the jurisdiction has accepted but has not yet decided, or a formal request for information that only the authority can resolve. Many projects move back and forth between these categories.

The U.S. Department of Energy explains that local governments use different permitting and inspection rules, and that administrative errors and backlogs can cause delays. That means “AHJ delay” is sometimes accurate, but it should be supported by a received application, the correct submission channel, and a last-known official response. A portal upload without an acknowledgment is not the same thing as an accepted application.

Before you ask a permit coordinator to call the city, require three facts: the last verified external event, the next event needed, and who controls that next event. This small discipline prevents a common mistake: chasing the reviewer while the corrected plan set is still waiting in an internal folder.

1. The permit packet is missing something small but mandatory

A package can look complete in a shared drive and still fail the jurisdiction’s intake check. A missing equipment datasheet, application signature, structural attachment, site address detail, contractor license information, fee confirmation, or required local form may be enough to stop the review from beginning. This is especially easy to miss when a company enters a new municipality and reuses the packet from its previous market. The failure is not necessarily technical design quality. It is an incomplete handoff into the authority’s intake process.

The useful control is a submission release gate. Name the jurisdiction and permit type, record the current source of its requirements, and check each required attachment against the exact package that will be transmitted. Have one person confirm that the upload set matches the signed-off set. The gate should be pass, hold, or documented exception, not a casual “looks good.” When a document is absent, record its owner and expected completion date. Do not let a project appear submitted while the team is still assembling the package.

For a small residential crew, a one-page checklist may be enough. For a multi-branch installer, the same principle can live in an ERP workflow with jurisdiction-specific requirements. The process matters more than the format: the company must know which version passed the gate, who approved the release, and what was actually sent.

2. The project details disagree across the application and drawings

Reviewers cannot confidently approve two different versions of the same project. The application may name a 10 kW system while the single-line diagram shows an updated configuration. The equipment schedule may list one inverter while the specification sheet belongs to another. A customer-requested battery addition may appear on the proposal but not on the electrical plan. A site-survey correction may change the roof layout without updating the attachment index. These are coordination failures, not evidence that the AHJ is unusually strict.

Pick a controlled project baseline before the permit is released: site identity, system size, module and inverter models, storage configuration, service equipment, and the drawing revision that governs submission. Check those values across the application, plan sheets, calculations, and supporting specifications. The technical reviewer must still validate engineering and code compliance; an operations checklist cannot substitute for licensed professional judgment where required.

If the design changes after submission, do not silently replace the PDF labeled “final.” Record what changed, which documents it affects, whether the authority needs a revised submission, and whether procurement or the customer contract must also change. The owner of the revised design should explicitly release the next packet. That prevents a seemingly harmless substitution from creating a second, avoidable review cycle.

3. Nobody checked the AHJ’s current requirements for this exact job

A city or county may change its portal, form, fee, plan-review instructions, or accepted code edition. Different project types can follow different paths within the same jurisdiction. A straightforward rooftop PV job, a PV-plus-storage system, a main-panel upgrade, and a larger commercial project may not require identical review steps. Using a generic nationwide checklist without checking the official local instructions turns yesterday’s successful submission into today’s returned packet.

Create a short jurisdiction record with the official source URL, last verification date, submission route, permit categories, known local attachments, fee process, and exceptions. Before release, verify that the record applies to this project’s scope. Where a rule is ambiguous, capture the question and the authority’s answer instead of treating an internal assumption as policy. Record the employee responsible for keeping the jurisdiction information current.

Avoid presenting a maintained AHJ database as a legal guarantee. It is a practical starting point. The authority’s current instructions and applicable codes govern the submission. If a city adopts a new form or the project moves outside an automated-permit eligibility path, the team should change its release checklist and flag affected jobs before the next upload.

4. Corrections arrive, but the response never becomes coordinated work

A correction letter is not a single task. It may contain a structural question for an engineer, an electrical notation for a designer, a missing contractor document for administration, and a customer decision about equipment. If the coordinator forwards the whole PDF to one group chat, everyone can assume somebody else owns it. The permit status becomes “corrections” for days without a visible path back to resubmission.

Break the notice into numbered comments. For each one, capture the exact reviewer request, the affected document or calculation, the responsible discipline, the person who can approve the response, and the evidence needed to close it. Set an internal target for completing the response, but do not invent an AHJ deadline if none was supplied. A single coordinator should own the assembled response package even when several specialists own individual corrections.

Before resubmitting, check that every comment has a disposition: corrected, clarified, or formally disputed with supporting rationale. Cross-reference the updated sheets and response letter. Keep the prior submission and correction notice available so a later reviewer can reconstruct the decision. The important performance measure is not just the number of correction notices. It is the time from notice receipt to a complete, approved response.

5. The application was uploaded but never entered the review queue

This failure hides behind a reassuring status. A coordinator clicks submit, sees a confirmation screen, and marks the permit as “in review.” But the portal may still require payment, an application signature, a contractor authorization, a second submission step, or an intake completeness check. Some jurisdictions provide an application number immediately but do not begin technical review until a later acceptance event. The company may wait a week for a decision on a packet that is not yet under review.

Use two separate internal events: transmitted and accepted for review. Attach the portal receipt or official acknowledgment to the first, and the jurisdiction’s acceptance or equivalent evidence to the second. If the process does not issue a separate acceptance, document what the authority’s process actually means and use a verified last-check date. A fee pending or intake-incomplete state should remain visible rather than being buried in a generic “submitted” stage.

The U.S. Department of Energy describes SolarAPP+ as an automated permitting pathway used by participating jurisdictions for eligible residential solar and solar-plus-storage projects. Even there, eligibility, compliance checks, local fee steps, and the participating jurisdiction’s workflow matter. Do not assume that an instant automated review is available to every project or that every portal confirmation means the same thing.

6. Follow-up depends on memory rather than a verified trigger

An accepted application can still wait longer than expected. That is a genuine external queue problem, but a solar company can make it worse by checking irregularly, using the wrong contact, or letting a reviewer request disappear in an inbox. The permit coordinator may be managing dozens of jobs while the project manager assumes the city has everything it needs. Nobody knows when the status was last verified or when the next appropriate follow-up should occur.

For each accepted permit, set a follow-up policy based on the jurisdiction’s published process and the project’s urgency. Record the last contact, the response, the next permitted follow-up, and the owner. If the authority publishes a review window, treat it as guidance rather than a guaranteed approval date. Escalate internally when the project threatens a crew commitment, customer promise, or material delivery. Contact the AHJ respectfully and with a specific application number and question, not a vague demand for a date.

The goal is not to flood municipal staff with messages. It is to prevent avoidable silence. A well-maintained queue lets the coordinator distinguish an application waiting within the normal review window from one that is missing an acknowledgment, overdue under the company’s policy, or blocked by a newly received question.

7. The team confuses permit approval with readiness to install

Sometimes the permit itself is not stuck at all. The authority has issued approval, but the company cannot proceed because the approved plan differs from the procurement list, a permit condition remains open, a prerequisite inspection is required, the customer has not confirmed access, or a utility-related milestone is still pending. When the whole project is labeled “permitting,” managers may continue blaming the AHJ for a downstream operational hold.

Treat permit issued, install-ready, inspection-ready, and permission to operate as different events. Record the actual approval document and its conditions. Then run an install-release check covering current plans, materials, qualified crew, site readiness, customer access, and any applicable legal or safety requirements. The project may be legally permitted but not operationally ready. That distinction protects scheduling and prevents a false promise to the customer.

DOE’s rooftop-solar guidance separates local permitting and inspection from the utility’s connection process. The exact sequence varies, and some work can overlap, but a building permit is not automatically PTO. A clean record should make it obvious which authority controls each remaining decision and what evidence is required before a crew is dispatched or a system is energized.

A diagnostic table: what is stuck and who can release it?

When a project has been idle, do not start by changing its expected completion date. Start with the failed event. Use the following table during the morning permit review to turn an ambiguous red status into a specific owner and release condition.

Seven permit delay symptoms and the evidence needed to resolve each
Observed symptomLikely failureOwner to investigateEvidence needed to release
Packet not acceptedMissing attachment or local formPermit coordinatorComplete, signed upload set
Contradictory equipment valuesUncontrolled design revisionDesign leadApproved matching plan and specs
Returned under new ruleOutdated AHJ instructionsJurisdiction ownerCurrent official requirement
Corrections aging internallyUnassigned specialist responsesPermit lead + discipline ownersClosed comment-by-comment response
Uploaded but no review clockIntake or fee step incompleteSubmitting coordinatorOfficial receipt/acceptance
No update after acceptanceExternal review queue or missed follow-upPermit coordinatorVerified status and next check
Permit issued, install heldUnmet operational release conditionProject managerInstall-readiness checklist

How do you find the real cause on a live permit?

Choose one job that appears late and reconstruct its timeline backward from the current status. Begin with the last official AHJ communication. Was the application accepted? Did the authority ask for corrections? Which revision was submitted? Was the fee processed? Did an internal owner complete the requested work? Which fact is missing today? The answer should fit into one sentence: “This permit cannot move because [specific evidence or decision] is missing; [named owner] will provide it by [internal target date].”

If that sentence cannot be completed, the immediate task is discovery, not an optimistic reschedule. Ask the coordinator to verify the external state and gather the missing evidence. Then classify the hold as intake, design, jurisdiction rule, corrections, review queue, or downstream readiness. Keep “unknown” as a temporary investigation state with a short deadline, not a permanent status. This approach makes the next meeting shorter because it focuses on unresolved decisions instead of retelling the project history.

For a portfolio of 40 active permits, start with the oldest unverified status, not simply the oldest submission date. A job submitted yesterday with a missing payment may be more actionable than one accepted two weeks ago within the city’s normal review period. A correction awaiting an internal response is usually more controllable than an external technical review. The queue should make those distinctions visible.

What does a delayed permit actually cost an installer?

Consider an illustrative company with 20 residential projects in the active permitting stage. Suppose six projects require one extra correction cycle. Each cycle uses 1.5 hours of coordinator time at an assumed loaded labor rate of $38 per hour and 2.5 hours of designer time at $55 per hour. The direct rework cost is 6 × [(1.5 × $38) + (2.5 × $55)] = $1,167. Those are planning assumptions, not national averages or measured Solar1 customer savings.

Now suppose two of those six projects also lose a crew reservation and each reschedule requires three additional administrative hours at $38 per hour. That adds $228, bringing the modeled direct coordination cost to $1,395. This still excludes customer dissatisfaction, extra travel, subcontractor cancellation fees, equipment holding cost, financing effects, and delayed contractual billing. Those consequences can be material, but they should be measured from the company’s records rather than invented as a universal dollar figure.

A useful internal ROI test is to track correction-response hours, resubmission counts, and schedule changes for one month. Then repeat after introducing the release gate and named correction owners. Compare like-for-like project types and jurisdictions. The improvement should be credited only where the workflow actually changed the outcome. Faster local permitting programs and installer coordination improvements are different mechanisms and should not be counted twice.

Can SolarAPP+ eliminate these seven problems?

SolarAPP+ can remove part of the traditional review wait for eligible projects in jurisdictions that use it. It does not make bad project data acceptable, replace site verification, resolve every design exception, or guarantee that downstream inspection and utility steps disappear. DOE says the platform uses automated code-compliance checks for standardized rooftop systems and routes more complex projects to manual review. Contractors still need accurate inputs and must follow the participating authority’s process.

A National Laboratory of the Rockies performance review published in 2026 analyzed 2024 SolarAPP+ data: 861 installers submitted 37,393 permits through the platform, and the researchers found a median permitting-and-inspection timeline 12 business days shorter than traditional projects in their comparison. This is evidence about the participating automated permitting pathway, not a forecast for any individual installer and not a result attributable to Solar1.

If an AHJ offers SolarAPP+, verify project eligibility before promising instant approval. If it does not, a well-run manual permitting process still benefits from clear intake, version control, correction ownership, and verified follow-up. The internal workflow should accommodate both paths without pretending they have identical approval rules.

Which permit metrics help owners improve the process?

Start with measures tied to a decision. First-pass intake acceptance rate shows whether packets clear the authority’s initial completeness check. Correction frequency shows how often technical or administrative rework occurs. Internal correction-response time measures the part of the cycle the company can usually control. Accepted-to-decision time measures external review waiting, segmented by jurisdiction and project type. Unverified-status age exposes records that have not been checked recently.

Keep the definitions stable. “Submitted” should mean the same event across projects, and a correction cycle should start when the company receives the official notice, not when somebody happens to open an email. Report medians alongside outliers rather than averaging a handful of unusually complex commercial projects with simple residential jobs. For multi-AHJ operators, compare each jurisdiction against its own recent history before assigning blame.

Owners also need one operational measure: permits currently blocking a committed installation or contractual milestone. That count should have an owner, a specific reason, and a next action for each project. It is often more useful on Monday morning than a dashboard celebrating how many applications were uploaded last month.

A ten-business-day reset for an overloaded permit queue

Days one and two: export every active permit, verify the official application reference, and separate transmitted, accepted, corrections, approved, and unknown states. Do not change official dates to make the queue look clean. Identify records with no recent verification and assign them to a coordinator.

Days three and four: review the five oldest internal holds. For each, locate the failed release event, name the responsible specialist, and set a realistic response target. Where the hold is a missing local form or packet item, update the jurisdiction checklist. Where the problem is a conflicting design, return the project to technical review rather than letting the coordinator improvise.

Days five and six: audit the next ten packets scheduled for submission. Apply the new release gate, confirm the correct revision and supporting files, and retain evidence of the approved upload set. Use the audit to find which missing items recur. Avoid expanding the checklist into a fifty-field burden if only a few controls prevent most returns.

Days seven and eight: define follow-up triggers for accepted applications based on the actual AHJ process. Establish a corrections response owner and a separate project manager who handles install-readiness consequences. Tell customer-facing staff which dates are confirmed and which are estimates.

Days nine and ten: review first-pass acceptance, correction-response age, unknown-status count, and projects blocked from installation. Keep the controls that changed decisions. Remove duplicate data entry. The aim is a repeatable permit operation that an unfamiliar coordinator can understand, not a beautiful dashboard with another spreadsheet hidden behind it.

Where does a complete solar ERP fit?

A solar installer eventually needs permit events to affect the rest of the business. A corrected inverter specification can change procurement. A permit condition can affect field readiness. An approval can release a scheduling decision. A delayed inspection can affect a customer update or a contract-specific billing milestone. That is why the long-term answer is broader than a stand-alone permit spreadsheet.

Solar1 is being built as a complete solar-specific ERP for installers and EPC companies, connecting customer, project, design coordination, permitting, procurement, inventory, field operations, finance, and service records. The intended permitting workflow would preserve the authority’s decisions while letting the business act on verified events. Solar1 is under development; this describes the product direction, not a claim that every permit feature, AHJ integration, or automation is live today.

For a broader view of how approvals affect commercial and field execution, read Solar1’s lead-to-cash project lifecycle guide. If you are evaluating software rather than diagnosing today’s delays, the separate solar permit tracking software buyer guide covers the capabilities to test in a demo.

Fix the failed event before changing the promised date

The most useful permit meeting ends with fewer unknowns, not more optimistic dates. Find out whether the project is missing a packet item, a consistent design, a current local rule, a completed correction, an accepted application, an appropriate follow-up, or a separate install-readiness decision. Assign the person who can resolve that specific condition and retain proof when it changes.

Use these seven failure points to audit ten active permits. If the same issue repeats, make it a release gate instead of a reminder. When you are ready to connect permitting with the rest of the company, explore Solar1’s complete ERP direction and bring one real stuck project to the conversation.

Steps

  1. Verify the official status

    Find the application receipt, accepted date, latest jurisdiction message, and last status check for every delayed permit.

  2. Classify the hold

    Determine whether the next missing event belongs to internal intake, design, local requirements, corrections, external review, or downstream readiness.

  3. Name the release owner

    Assign one accountable employee and specify the document, decision, or official response that will close the hold.

  4. Apply a submission gate

    Check the AHJ-specific packet, current design baseline, signed approvals, and fee or portal requirements before the next release.

  5. Measure the change

    Compare first-pass acceptance and correction-response time before and after the control, with project and jurisdiction differences accounted for.

Frequently asked questions

Why does my solar permit say submitted but not in review?

Some portals record an upload before intake acceptance, fee payment, or completeness screening. Verify the jurisdiction’s application number, receipt, payment status, and official acceptance event before assuming the technical review clock has started.

What is the most useful first step when a solar permit is delayed?

Identify the last verified official event and the exact missing decision or evidence. Separate internal work, such as correcting drawings, from external AHJ waiting, then assign an owner and a next check.

Can a solar permit be delayed even when the design is correct?

Yes. A correct design can still be held by missing forms, fee processing, applicant authorization, jurisdiction-specific administrative rules, or an external review backlog. Technical correctness and submission completeness are separate checks.

How should installers respond to AHJ correction comments?

Break the notice into individual comments, assign the appropriate specialist to each one, and require a reviewed response with the correct revised documents. Resubmit only when all comments have an explicit disposition and the packet is controlled.

Does SolarAPP+ mean solar permits are always approved instantly?

No. Automated approval applies to eligible applications in participating jurisdictions, subject to code checks and local process requirements. Complex or ineligible projects may require manual review, and inspection and utility steps still matter.

How can a solar installer measure permitting improvement?

Track first-pass intake acceptance, correction frequency, internal correction-response time, accepted-to-decision time, and age of unverified statuses. Compare similar project types and AHJs before attributing changes to a new process.