Treadstone Associates
Article · 9 min read

Using AI for building permit applications

The useful role for AI in permitting is completeness, not creativity. Most permit delay is caused by an application that was not complete when it was submitted, and checking a submission against a municipal checklist is exactly the kind of dull, verifiable work a model does well.

Treadstone Associates · Updated 2026

Key takeaways

  • • The review clock runs on a complete application — Ontario prescribes 10 days for a house and 30 days for a more complex building such as a hospital.
  • • Zoning is applicable law: if the proposal needs a rezoning or a minor variance, no permit issues until that is dealt with.
  • • AI can build the document checklist, extract data from drawings into the forms, and flag what is missing. A registered designer still takes responsibility for the design.
  • • Every municipality has its own submission requirements, so the checklist has to come from that municipality, not from a model’s memory.

Start with where the time actually goes. A permit application does not usually sit for six weeks because the municipality is slow; it sits because it was submitted without a document the reviewer needed, went into a query loop, and quietly lost its place. AI helps with that specific problem, and barely at all with the rest of permitting.

Ontario is unusually clear about how the clock works, which makes it a good example even if you build elsewhere. The province states that the Building Code requires a municipality to review a complete permit application within a set timeframe when the application meets the criteria in the Code — the example given is 10 days for a permit application for a house and 30 days for a more complex building such as a hospital — and that within that time the municipality must either issue the permit or refuse it and give all the reasons for refusal.

The statutory anchor behind that clock is the Building Code Act, 1992, s.8(2)(e), which lists an incomplete application as one of the chief building official’s own grounds to withhold a permit, and s.8(2.2)–(2.3), which require a decision “within the period prescribed by regulation” once an application meets the prescribed requirements, with all reasons for a refusal disclosed within that same prescribed period. The 10-and-30-day figures live in the regulation those subsections point to, not in the Act itself — which is also why they can change without a statute amendment.

Read that carefully and the leverage is obvious. The timeframe attaches to a complete application. Completeness is a documentation problem. Documentation problems are what AI is for.

What has to be in the box before the clock starts

The province’s guidance says applications are submitted to your municipality, not to the province, that you will have to attach drawings, plans and other documents, that a fee may apply, and that it is a good idea to talk to the building department before you apply so they can tell you what information, drawings and plans are required and whether other permits or approvals are needed.

That last clause is why a generic checklist is dangerous. Requirements are municipal. The City of Toronto, for instance, publishes its own application process and required documents, and a neighbouring municipality will differ in detail. The right move is to feed the tool the municipality’s own published checklist and have it work against that, rather than asking it what a permit application usually needs.

A completeness pass, in the order it is worth running

1. Build the checklist from the source. Paste in the municipality’s published submission requirements. Have the model turn them into a flat list of discrete items, each either present or not.

2. Inventory what you have. Point it at the drawing set and the folder of supporting documents. Ask it to map each file to a checklist item and list the items nothing maps to.

3. Cross-check the forms against the drawings. Addresses, legal descriptions, storeys, area, occupancy, construction value — these appear in several places and disagree more often than anyone admits.

4. List the approvals that gate the permit. Conservation authority, site plan approval, heritage, sewage system, other applicable law.

5. Hand the list to a person. Every item above is a flag, not a finding.

The traps that AI will not save you from

Two of them account for most refusals, and both are about law that sits outside the Building Code.

The first is zoning. Ontario treats municipal zoning as applicable law, and states that construction or new development which does not comply with a zoning by-law is not allowed and the municipality will refuse to issue a building permit. If you need a zoning change or a minor variance, the permit does not issue until that is obtained. A model reading your drawings has no way to know what the zone permits — that is a research task with its own method, covered in checking zoning before you quote.

The second is site plan control and the other approvals stacked on top. Where a property is covered by a site plan control by-law, the province notes you may not get a building permit until the plans and drawings have been approved by the municipality; our sister firm sets out when site plan control applies in Ontario. Designated heritage property adds another layer again — see alteration permits on a heritage designated property.

Who signs, and why that is not a formality

AI can draft the covering letter, populate the form and assemble the package. It cannot take responsibility for the design. Ontario requires practitioners and organisations regulated by the qualification programme to register through QuARTS and obtain a Building Code Identification Number, and its guidance for applicants warns not to assume that someone absent from the public registry can provide services that will support your application.

The practical translation: the tool is an assistant to whoever is registered. If nobody registered is on the file, the tool has not solved your problem, it has made your incomplete application arrive faster.

A worked example

A design-build contractor is submitting for a two-storey rear addition and interior alterations on a house in a mid-sized Ontario municipality. The file contains 11 drawings, a heat loss calculation, a truss layout, a survey and a soils note.

The AI pass takes about half an hour. The municipality’s checklist goes in first and becomes 23 discrete items. The folder is inventoried against it; three items have nothing mapped — a completed Schedule 1 for the designer, the plumbing riser, and proof of an approved lot grading plan. The forms are cross-read against the title block and two disagreements surface: the construction value on the form predates the last pricing revision, and the drawing set gives a different unit count from the application.

None of that is clever. All of it is what would otherwise have come back as a query four weeks later, after the file had already lost its slot. The remaining work — deciding whether the grading plan is required at all, and calling the plans examiner about the unit count — is a human phoning a human.

Common questions

Can AI submit the application for me?

No. Applications are submitted to the municipality by the applicant or their agent, through whatever portal or counter that municipality uses. Treat any tool that claims otherwise with suspicion.

Will this speed up the municipality’s review?

Only in the sense that a complete application enters the prescribed review timeframe and an incomplete one does not. Permit volumes move with the market — Statistics Canada’s construction statistics publishes monthly building permit values, and a busy month in your municipality is a queue you cannot prompt your way out of.

Can it check my drawings against the code?

It can locate provisions in a code document you supply and tell you where to read. It cannot determine compliance, and a determination is what a permit is. The reasoning is set out in can AI answer building code questions.

Stop losing weeks to incomplete submissions.

A 30-minute call is enough to tell you whether AI pays for itself here.