Last checked: September 9, 2026

Charlotte is the largest municipality in North Carolina, and its permitting setup is one of the most misunderstood in the state. The instinct is to assume the city issues building permits to addresses inside city limits. It does not. For a deck, an addition, a new house, or a restaurant upfit, the answer starts with Mecklenburg County Code Enforcement — while the City of Charlotte plays a separate and different role.

Fees, turnaround times, and portal details change. Nothing on this page is the official record, and this guide is written for Charlotte and Mecklenburg County addresses only. Always confirm the permit path for your specific address and scope with the agency that owns that step.

Verify your address before you act. Confirm the property has a valid address in the county's addressing system — new or missing addresses must be created with Mecklenburg County GIS Addressing before an application can reference them — and confirm whether the parcel sits inside Charlotte city limits, inside one of the county's six towns, or in unincorporated Mecklenburg County. That answer decides which zoning office applies to your project. It does not change who issues the building permit.

Short Answer — Who Issues Building Permits in Charlotte NC

Building permits for Charlotte addresses are issued by Mecklenburg County Code Enforcement, a division of the county's Land Use and Environmental Services Agency (LUESA). The City of Charlotte does not issue construction permits.

The county issues building, electrical, mechanical, and plumbing permits as required by North Carolina General Statute 160D-1110, and it does so countywide — for addresses inside the City of Charlotte, for the county's six towns, and for unincorporated areas alike.

The City's role is zoning and land development review through the CLT Development Center. For most commercial projects, the county cannot issue the building permit until the City approves the site plan and releases any City holds on the permit. That sequencing rule is why two offices can be involved in a single project.

The two main phone numbers are not interchangeable. Mecklenburg County Code Enforcement — permits and inspections — is 980-314-CODE (2633). The City of Charlotte CLT Development Center — zoning and land development — is 704-336-6692. If your question is "do I need a permit and who inspects it," call the county. If it is "does my site plan or zoning allow this," call the city.

Quick Facts

ItemDetail
Permit issuerMecklenburg County Code Enforcement (LUESA division)
Legal basisNC General Statute 160D-1110
CoverageCountywide — Charlotte, the six county towns, and unincorporated areas
Permit typesBuilding, electrical, mechanical (heating/air conditioning), plumbing
City of Charlotte roleZoning and land development review (CLT Development Center)
Apply onlineCounty AccelaMeck portal — preferred for all new projects
Legacy portalPOSSE Outrider — existing projects only, being retired
Plan reviewMost commercial projects; residential new construction and additions
Residential threshold$40,000 or less may not need a permit — only if no trigger work applies
Homeowner permitsHomeowner Internet Permitting (HIP); eligibility rules apply
InspectionsSchedule in AccelaMeck or call 980-314-CODE (2633)
County officeLUESA, 2145 Suttle Ave, Charlotte, NC 28208; Mon–Fri 8 a.m.–5 p.m.
County contact980-314-CODE (2633); Code@MeckNC.gov
City contactCLT Development Center, 600 East Fourth Street, Charlotte, NC 28202; 704-336-6692
CountyMecklenburg County

Local Basics — Address and Zone Lookup Before You Apply

Two checks come before any application, and skipping either one wastes a trip through the review queue.

1. Confirm the project address exists. New or missing addresses must be created with Mecklenburg County GIS Addressing before a permit application can reference them. If the property has no address on record yet, nothing else can proceed until that step is done — not the plan review, not the trade permits, not the inspection schedule.

2. Confirm which zoning office applies. Whether the parcel sits inside Charlotte city limits, inside one of the county's six towns, or in unincorporated Mecklenburg County decides the zoning and land development path:

  • Inside Charlotte city limits: the City of Charlotte CLT Development Center handles zoning use permits, site plan review, and City holds on permits.
  • Inside one of the county's six towns: that town runs its own zoning.
  • Unincorporated Mecklenburg County: there is no city zoning layer.

Here is the part readers most often get backwards: the building permit issuer is the county in all three cases. City limits change the zoning step, not who issues the construction permit.

For in-city addresses, start with the Wizard tool on the City's Accela Citizen Access portal. It routes applicants to the correct application and covers Zoning Use Permits, Sign Permits, and Zoning Verification Letters, so you can see what your project needs before you file anything.

City contacts for the zoning side:

  • CLT Development Center: 600 East Fourth Street, Charlotte, NC 28202; 704-336-6692
  • City Planning, Design and Development: 704-336-2205; pddinfo@charlottenc.gov; 600 E. Fourth St, Charlotte, NC 28202

What Work Requires a Permit — Commercial and Residential Scope

The county's scope list applies to both commercial and residential work. Permits are required for new construction, reconstruction, alteration, repair, movement of a building to another site, removal or demolition of any building, and the installation, extension, alteration, or general repair of electrical, mechanical, or plumbing systems.

Residential work covers one- and two-family dwellings and townhomes, using the same scope list. In practice, that means a new house, an addition, structural alterations, a garage build, and trade work all fall inside the permitting system.

Separate permits are required for building, electrical, heating and air conditioning, and plumbing work. Permits are grouped by specific project and paid by the general contractor — or by the homeowner acting as their own general contractor. Most commercial projects and residential new construction and additions also require plan review, meaning drawings go in before the permit is issued.

The $40,000 Residential Rule — Read the Conditions

Residential projects costing $40,000 or less may not require a permit — but only if the work does not involve any of these triggers:

  • Addition, repair, or replacement of load-bearing structures
  • Addition or design change of a plumbing system
  • Addition, replacement, or design change of heating or air conditioning
  • Addition, replacement, or design change of an electrical system
  • Materials not permitted by the code
  • Addition of roofing, excluding like-grade fire-resistance replacement

Look at what that list covers. Swapping a water heater touches plumbing. Replacing a furnace touches heating. Adding a circuit touches electrical. Re-roofing touches roofing. Many jobs that cost well under $40,000 still need a permit, because the trigger is the type of work, not just the price.

Quoting "$40,000 and under is exempt" without those conditions is misleading and is one of the most expensive misunderstandings in residential remodeling. Confirm with Code Enforcement at 980-314-CODE (2633) before assuming any exemption applies.

Step-by-Step — Applying for a Building Permit

  1. Confirm the project address exists. New or missing addresses must be created through Mecklenburg County GIS Addressing first.
  2. For in-city addresses, check City zoning requirements. The Wizard tool on the City's Accela Citizen Access portal routes you to the right application and covers Zoning Use Permits, Sign Permits, and Zoning Verification Letters.
  3. Apply through the county's AccelaMeck portal, the preferred portal for all new customer projects.
  4. For commercial projects, get City site plan approval and City holds released. The county cannot issue the building permit before then.
  5. For residential new construction, additions, pools, and ADUs, confirm the City's Individual Residential Lot Review (LDIRL) is approved in City Accela before the City Land Development release appears in the county system.
  6. Group the trade permits under the project — building, electrical, HVAC, and plumbing together on one record.
  7. Submit plans for plan review where required — most commercial projects, plus residential new construction and additions.
  8. Do not start work until the permit is issued and any City holds are released.
  9. Schedule inspections through AccelaMeck or by calling 980-314-CODE (2633).

The City and the county accept applications at the same time, so you can file for City site plan approval and for county building permits in parallel. What you cannot do is receive the county building permit before the City approves the site plan and releases its holds. Hold release requests go to CLT Development Center Customer Service at 704-336-6692 — have the six-digit Mecklenburg County project number or the county Accela Record ID ready.

The Two Accela Portals — Do Not Mix Them Up

This is the biggest source of confusion in Charlotte permitting, so treat it as a hard rule: two separate Accela systems, run by two agencies, for two different jobs.

Mecklenburg County's portal is AccelaMeck (aca-prod.accela.com/MECKLENBURG), used for building and trade permits. Residential project types include single-family and two-family structures, ADUs, garages, residential master plans, repairs, renovations and upfits, equipment changeouts (Trade Internet Permits/TIP), townhomes, and demolition. Commercial project types include small commercial, large commercial/OnSchedule, mega projects, and special projects.

The City of Charlotte's portal is Accela Citizen Access — a distinct system used for zoning and land development, not building permits.

A third system exists but is not for new applicants: POSSE Outrider, the legacy contractor dashboard. Projects already in progress continue there, and the legacy portals will not stay open indefinitely.

Two migration notes: Live Remote Inspections (LRI) and Homeowner Internet Permits (HIP) were still transitioning into AccelaMeck at the last check, so treat those paths as moving rather than settled. Portal help is 980-314-CODE (2633), press 1.

Homeowner Permits — Homeowner Internet Permitting (HIP)

Homeowners can pull their own permits, but the eligibility test is strict. You must own the home, have your name on the property deed, and use it as your primary residence. The property must not be deeded as a condominium, and trust or power-of-attorney designees do not qualify. Homeowner permits are for owner-occupants doing their own work — if you hire a contractor, the contractor pulls the permit.

The $40,000 line appears again here:

  • Under $40,000: apply in person or online through a homeowner account.
  • $40,000 or more: the homeowner is not eligible for a homeowner account. They must establish and post a bond account through Mecklenburg County, follow the contractor permitting process, and complete an Owner Exemption Affidavit declaring ownership and the intent to live in the home at least 12 months after project completion.

Homeowners doing their own electrical, mechanical, or plumbing work also need a Homeowner Trade Work Certificate of Ownership form and must personally install the work. The county cites the licensure exemptions that allow this: NC GS 87-1(b)(2) for building, NC GS 87-43.1 for electrical, and NC GS 87-21 for mechanical and plumbing. Questions go to 980-314-CODE (2633).

Fees — What Governs Them and Why This Page Does Not Quote Amounts

Permitting and other fees are set by the Mecklenburg County LUESA Fee Ordinance, the official fee document linked from the county's Permitting page. Fees are generally based on the project.

No dollar figures are published here, and that is deliberate: current amounts were not verified against the ordinance at the last check, and an outdated number is worse than no number. Before budgeting, pull the LUESA Fee Ordinance and the current county fee schedule and confirm the amounts that apply to your scope of work.

On the City side, fee payments are accepted by check, credit card, or e-check, and the City states it will never request payment by wire transfer. Treat any wire-transfer request tied to a Charlotte permitting transaction as a red flag and verify directly with the agency. Inspection-related charges — re-inspections, Inspections by Appointment, and Overtime Inspections — are set through the county's fee structure; no verified amounts are published here.

Inspections — Scheduling and Team Structure

More than 100 inspector code officials cover all construction across Mecklenburg County's 524 square miles. The process is nearly paperless: results and inspector notes are posted online from the field.

Schedule an inspection by logging in to AccelaMeck or by calling 980-314-CODE (2633). Exact scheduling cutoff times are not published on the official pages reviewed here, so confirm timing when you book.

The county organizes inspections into teams by project type:

  • Commercial — assemblies up to 99,999 sq ft, commercial occupancy up to 299,999 sq ft, CMS school remodels, multifamily four stories or less
  • Mega-Multifamily — larger thresholds, high-rises, hospitals
  • Residential — new construction, remodels, and additions for single-family, two-family, and townhomes up to three stories; remodels and accessory structures over $40K
  • Residential Multi-Trade — small projects under $40K, equipment changeouts, residential solar
  • Special Projects — BIM/IPD, fast-track, CMAR, design-build

Premium inspection options go beyond the standard queue: Inspections by Appointment (IBA) for scheduled time blocks, Live Remote Inspections (LRI) for some re-inspections by video chat, Overtime Inspections (OTI) after hours and on weekends, plus the Re-inspection Fee Program.

County office: LUESA, 2145 Suttle Ave, Charlotte, NC 28208; Monday–Friday, 8 a.m.–5 p.m.; 980-314-CODE (2633); Code@MeckNC.gov.

City Limits vs. County — What Actually Changes at the Line

Building and trade permits are issued by Mecklenburg County Code Enforcement countywide. The permit issuer is the same whether your address is inside Charlotte city limits, inside one of the county's six towns, or unincorporated. City limits do not change who issues the construction permit.

What changes at the line is zoning and land development review:

  • Inside Charlotte city limits: the City of Charlotte CLT Development Center handles zoning use permits, site plans, and City holds.
  • Inside one of the six towns: that town runs its own zoning.
  • Unincorporated areas: there is no city zoning layer.

For commercial projects, the sequencing rule catches people out. Applicants may apply for City site plan approval and county building permits at the same time, but the County cannot issue building permits until the City approves the commercial site plan and releases any City holds. Hold release requests go to CLT Development Center Customer Service at 704-336-6692 with the six-digit Mecklenburg County project number or the county Accela Record ID. Some scopes of work may also require Commercial Zoning approval handled outside the City Land Development plan review process, so confirm your specific scope rather than assume.

Records follow the same split: the county system holds construction permit records, so search the county side for permit history and the City side for zoning and land development records. Verify your address against city limits before assuming which zoning office applies — a Charlotte mailing address proves nothing, and plenty of Charlotte-addressed properties sit outside the city.

Contacts, Hours, and Addresses

These belong to different agencies. Do not interchange them.

  • Mecklenburg County Code Enforcement / LUESA (permits and inspections): 2145 Suttle Ave, Charlotte, NC 28208; Monday–Friday, 8 a.m.–5 p.m.; 980-314-CODE (2633); Code@MeckNC.gov
  • City of Charlotte CLT Development Center (zoning and land development): 600 East Fourth Street, Charlotte, NC 28202; 704-336-6692
  • City of Charlotte Planning, Design and Development: 704-336-2205; pddinfo@charlottenc.gov; 600 E. Fourth St, Charlotte, NC 28202

The correct portal is chosen by task: county AccelaMeck for permits, City Accela Citizen Access for zoning and land development.

Resident Scenarios

Replacing a heat pump. This is a residential equipment changeout, a listed AccelaMeck project type. Because heating and air conditioning work is a $40,000 trigger, "it cost less than $40,000 so I don't need anything" does not apply. If you plan to do the work yourself, check HIP eligibility and the Homeowner Trade Work Certificate of Ownership requirement before buying equipment.

Finishing a basement. Finishing usually adds circuits, may extend plumbing for a bathroom, and can touch structure depending on the plan — three trigger conditions at once. Expect separate trade permits grouped under the project and plan review where the scope calls for it.

Building an ADU or a garage. Both are listed AccelaMeck residential project types. Inside city limits, also check whether the City's Individual Residential Lot Review (LDIRL) is required, since new construction, additions, pools, and ADUs need that review approved in City Accela before the City Land Development release appears in the county system.

Upfitting a retail space inside city limits. File the City site plan application and the county building permit in parallel to save time, but expect the county permit to be held until the City approves the site plan and releases its holds. Watch for Commercial Zoning approval requirements that sit outside standard land development review.

A house with unpermitted work. Start with the construction permit record for the address on the county side. If there is no permit for work that clearly needed one, call 980-314-CODE (2633) and ask what the path back into compliance looks like for that scope.

A property with no address on record. New or missing addresses must be created with Mecklenburg County GIS Addressing before any permit application can reference them. Nothing else can proceed until that is done.

Mistakes to Avoid

  • Assuming the City of Charlotte issues construction permits. Mecklenburg County Code Enforcement does, countywide.
  • Sending a zoning question to the county or a permit question to the city. The numbers belong to different agencies.
  • Submitting a new project to the legacy POSSE Outrider portal, which serves only projects already in progress.
  • Quoting the $40,000 threshold without the trigger list — load-bearing work, plumbing, HVAC, electrical, non-code materials, and roofing all override it.
  • Starting work before the permit is issued or before City holds are released on a commercial job.
  • Assuming a Charlotte mailing address means the property is inside city limits.
  • Budgeting from an old fee figure found online instead of the current LUESA Fee Ordinance and county fee schedule.
  • Applying as a homeowner when you are hiring a contractor, or when the project is $40,000 or more.
  • Missing the City's Individual Residential Lot Review for new construction, additions, pools, or ADUs.

Frequently Asked Questions

Who issues building permits in Charlotte NC? Mecklenburg County Code Enforcement, a division of the county's Land Use and Environmental Services Agency (LUESA), issues building, electrical, mechanical, and plumbing permits — including for addresses inside the City of Charlotte — under NC General Statute 160D-1110. Call 980-314-CODE (2633).

Does the City of Charlotte issue building permits? No. The City handles zoning and land development review through the CLT Development Center at 704-336-6692, and most commercial projects need City site plan approval before the county can issue the building permit — but the construction permits come from Mecklenburg County.

How do I apply for a building permit in Charlotte, and where is the AccelaMeck login? Apply online through Mecklenburg County's AccelaMeck portal at aca-prod.accela.com/MECKLENBURG. New projects must use AccelaMeck; the legacy dashboard (POSSE Outrider) is only for projects already in progress. Portal help: 980-314-CODE (2633), press 1.

What residential projects do not need a permit in Mecklenburg County? Projects costing $40,000 or less may not require a permit unless they involve load-bearing structures, plumbing, heating/air conditioning, or electrical system work, materials not permitted by code, or new roofing. Confirm with Code Enforcement at 980-314-CODE (2633) before assuming an exemption — the type of work decides, not just the cost.

Can a homeowner pull their own permit in Charlotte? Yes, through Homeowner Internet Permitting if you own the home, your name is on the deed, it is your primary residence, and you do the work yourself. Projects of $40,000 or more require a posted bond account and an Owner Exemption Affidavit declaring intent to live in the home at least 12 months after completion.

How do I schedule a building inspection in Charlotte, and where do I see results? Log in to AccelaMeck or call Code Enforcement at 980-314-CODE (2633). Results and inspector notes are posted online from the field, and premium options include Inspections by Appointment, Live Remote Inspections, and after-hours Overtime Inspections.

Do I need City approval before the county building permit? For commercial projects requiring City site plan approval, yes — Mecklenburg County cannot issue the building permit until the City approves the site plan and releases any City holds, requested through CLT Development Center Customer Service at 704-336-6692. Some residential projects (new construction, additions, pools, ADUs) also need the City's Individual Residential Lot Review approved first.

How much does a building permit cost in Charlotte, and can I look up permits by address? Fees are set by the Mecklenburg County LUESA Fee Ordinance and are generally based on the project. Verify current amounts on the county's official fee schedule before budgeting; dollar figures are not published here because they must be confirmed against the current ordinance. For permit history, search the county's construction permit records by address, and use the City's Accela Citizen Access system for zoning and land development records.

Charlotte Guides for Nearby Tasks

If you are setting up a Charlotte address — before or after the permit — these TownManual guides cover the other utilities and service questions new residents run into:

Sources

  1. Mecklenburg County Code Enforcement — Permitting
  2. Mecklenburg County Code Enforcement — AccelaMeck Customer Portal
  3. Mecklenburg County Code Enforcement — Homeowner Internet Permitting (HIP)
  4. Mecklenburg County Code Enforcement — Inspections
  5. Mecklenburg County LUESA Fee Ordinance
  6. Mecklenburg County GIS Address Management
  7. AccelaMeck Portal
  8. City of Charlotte — Getting Started on Your Project
  9. City of Charlotte — Commercial Plan Review: Building Permits
  10. City of Charlotte — Planning, Design and Development

Verify Before You Act

Portal migration is still in progress: Homeowner Internet Permitting and Live Remote Inspections were moving into AccelaMeck at the last check. Fee amounts, inspection scheduling cutoff times, and permit review or issuance turnaround times are not published on the pages reviewed here. Treat this page as a starting point, not the official record.

Verify by address before you act. Confirm the permit path for your specific address and scope with Mecklenburg County Code Enforcement at 980-314-CODE (2633), and confirm zoning and City hold status with the CLT Development Center at 704-336-6692. Do not start work until the permit is issued and any City holds are released.

Last checked: September 9, 2026.