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.

  1. 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".

  2. 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.

  3. 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.

  4. 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

  1. 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.

  2. Pick a period and a unit

    Take one quarter and count applications, not documents or review rounds. Say so in the data note.

  3. 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.

  4. 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.

  5. 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.

Open the building permit flowchart

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.

The template behind this guide

Building permit application process flowchart (submit to occupancy) — Building permit application flowchart template: zoning check, stamped drawings, intake, parallel agency and code review, comment responses, fees, permit issue, inspections, stop-work orders and certificate of occupancy.