How to find where permit applications stall
Draw the permit process as a flowchart, count what leaves each decision, then show the counts as a Sankey diagram. See whether applications stall at completeness, review or fees.
An application stalls at a gate where it waits or is sent back. This guide draws the permit process first, so each gate is a decision with named exits, and then counts applications through those exits.
The short version
- Draw the permit process as decisions with labelled exits before counting.
- Count each application once for one period, including those withdrawn or refused.
- A wide return branch at completeness or review is a stall, even if the step is fast.
- Show the counts as a Sankey diagram and use the flowchart to explain them.
Start with the gates, not the average time
Average processing time tells you a permit is slow, not where. A building application can sit one day in intake and still lose weeks, because an incomplete application goes back to the applicant, or review comments send the drawings round again. To see that, draw the process with its decisions and count how many applications take each exit.
The example is a building permit process with decisions at zoning, completeness, review comments, fees and inspection. Four decisions are worth counting: "Application complete?", "Review comments to resolve?", "Fees paid and conditions met?" and, later, "Work matches approved plans?". Once you have counts per exit, a Sankey diagram shows them as widths. See /sankey/permit-application-flow for one drawn that way, and /sankey/sankey-diagram-for-service-demand for how to choose the unit and the stages.
Counts show where applications leave a gate, not why. The reason comes from reading the files and from the people who run the gate. This is a method for looking at your own records, not a statement about any authority's performance.
A building permit process, built in stages
Twenty-five steps and several decisions. Each decision is a place where a Sankey would show applications leaving in two directions.
Preparing and submitting
The project starts at "Project ready for permitting" and checks that zoning and land use are in place. The applicant then prepares drawings, completes the code analysis and form, and reaches "Submit application and drawings through the portal or counter".
Intake and completeness
The "Intake completeness check" leads to "Application complete?". The Incomplete branch loops back to the application form, so every incomplete application is a return you can count. This is the first gate to look at.
Review, comments and fees
A complete application is routed to the reviewers. "Review comments to resolve?" sends Comments issued back to "Revise drawings and submit written response to each comment", and "Fees paid and conditions met?" has an Outstanding branch. These loops are where applications wait.
Permit, inspection and close
After the permit is issued, "Work matches approved plans?" splits to a correction notice or to final inspection, and the process ends at "Permit closed; record drawings and certificates filed" or "Application refused; redesign or abandon". Those end states are the outcomes you count.
How it works
Draw the process with its decisions
Put every gate in as a decision with labelled exits, such as Complete and Incomplete. A gate drawn as a plain step hides the exit you want to count.
Pick a period and a unit
Take one quarter and count applications, not documents or review rounds. Say so in the data note.
Count what leaves each decision
For each decision, count how many applications took each exit. Take the numbers from the case system, not from memory.
Draw the counts as a Sankey diagram
Use the decisions as nodes and the exits as flows, including withdrawn and refused. Check that what enters each node equals what leaves it.
Read the widest return branch first
The widest branch that points backwards is the likely stall. Read those files to find out why before changing the process.
Mistakes to avoid
Counting only issued permits
If only issued permits are counted, the loops and the refused applications disappear. Count at each decision.
Counting review rounds as applications
One application may go through several review rounds. Choose the application as the unit and count the rounds separately.
Reading counts as fault
A wide Incomplete branch can mean unclear guidance as easily as careless applicants. Look at the files before drawing conclusions.
Open the building permit flowchart
Open the permit template, adapt the gates to yours and count the exits.
Related guides
Frequently asked questions
Why draw a flowchart if I only want a Sankey?
The flowchart decides what the nodes are. Without it, the Sankey shows whatever stages the case system exports, which are often not the gates where applications are decided.
How many applications do I need?
Enough that each exit has more than a few cases. With fewer than about twenty, show the counts in a table instead.
Does this replace measuring processing time?
No. Time says how long, the Sankey says where applications leave or return. Use both for the same period.