Hampton Roads contractor licences: how many are based in each city, by class and trade
Version 1.0.0 · First published 2026-10-05 · Last updated 2026-10-05 · DPOR lists as of 2026-09-29 · Reviewed by Ben Davis, BidBro
In short
As of 2026-09-29, 2,242 Virginia Board for Contractors licences have an address of record in Virginia Beach — 1,349 Class A, 343 Class B and 550 Class C — about 5.1% of the 43,598 licences based anywhere in Virginia. Across the seven Hampton Roads cities here the total is 5,750. The figures count where a licence is registered, not where the firm works.
Source and what BidBro added. Every count is arithmetic on the regulant lists the Department of Professional and Occupational Regulation publishes free of charge and refreshes every five business days. BidBro read the four Board for Contractors files, dropped the rows it could not parse (and says how many), keyed each licence by its occupation code and certificate number, and counted by the city in the address of record. No name, address, email or licence number from those lists appears here or in the downloads.
Download CSVDownload JSONWhat this does not say
Licences based in each city, by class
Class A, B and C are DPOR’s three licence classes, which set the size of contract a firm may take on; the thresholds are DPOR’s to state and are on the Board’s own page, not restated here. “Years licensed” is the median time since the licence’s certification date, for the licences that carry one.
| City | All licences | Class A | Class B | Class C | Share of Virginia | Median years licensed |
|---|---|---|---|---|---|---|
| Virginia Beach | 2,242 | 1,349 | 343 | 550 | 5.1% | 15 |
| Chesapeake | 1,293 | 786 | 235 | 272 | 3% | 15 |
| Norfolk | 659 | 389 | 122 | 148 | 1.5% | 16 |
| Newport News | 525 | 275 | 95 | 155 | 1.2% | 15 |
| Hampton | 398 | 208 | 70 | 120 | 0.9% | 15 |
| Suffolk | 375 | 225 | 65 | 85 | 0.9% | 16 |
| Portsmouth | 258 | 143 | 44 | 71 | 0.6% | 15 |
| Seven cities together | 5,750 | 3,375 | 974 | 1,401 | 13% | — |
| All of Virginia | 43,598 | 25,702 | 7,418 | 10,478 | 100% | — |
Class A includes the rows of DPOR list 2701 (occupation code 01): Virginia Beach 135, Chesapeake 95, Norfolk 62, Newport News 42, Hampton 30, Suffolk 30, Portsmouth 17. A reader who would rather count only list 2705A can subtract them; the CSV carries both figures.
Licences by classification and specialty
A licence lists one or more classifications and specialties, so a firm licensed for both residential building and HVAC appears under each, and these columns do not sum to the totals above. Codes and names are DPOR’s own, from its Contractor’s License Classifications & Specialties document (18 VAC 50-22-20 and -30). A cell under 10 reads “<10”: 105 of the 224 cells are suppressed that way, and 19 further codes never reach 10 in any of the seven cities and are left out of the table altogether.
| Code | DPOR name | Virginia Beach | Chesapeake | Norfolk | Newport News | Hampton | Suffolk | Portsmouth |
|---|---|---|---|---|---|---|---|---|
| RBC | Residential building contractors (classification) | 1,015 | 526 | 282 | 197 | 154 | 180 | 105 |
| CBC | Commercial building contractors (classification) | 733 | 376 | 212 | 138 | 117 | 127 | 68 |
| HIC | Home improvement contracting | 565 | 293 | 159 | 140 | 100 | 77 | 60 |
| CIC | Commercial improvement contracting | 272 | 157 | 94 | 63 | 51 | 43 | 40 |
| ELE | Electrical contractors (classification) | 211 | 191 | 95 | 61 | 57 | 52 | 33 |
| HVA | HVAC contractors (classification) | 199 | 180 | 87 | 60 | 57 | 37 | 44 |
| GFC | Gas fitting contracting | 169 | 129 | 70 | 39 | 44 | 32 | 26 |
| PLB | Plumbing contractors (classification) | 161 | 107 | 57 | 47 | 49 | 23 | 28 |
| PTC | Painting and wallcovering contracting | 123 | 52 | 42 | 41 | 25 | 16 | 11 |
| H/H | Highway/heavy contractors (classification) | 114 | 109 | 45 | 25 | 16 | 48 | 19 |
| CEM | Concrete contracting | 78 | 35 | 24 | <10 | <10 | 13 | <10 |
| ROC | Roofing contracting | 68 | 51 | 26 | 12 | 16 | 15 | 10 |
| LSC | Landscape service contracting | 65 | 44 | 21 | 13 | 11 | 17 | 11 |
| ESC | Electronic/communication service contracting | 53 | 36 | 15 | <10 | <10 | <10 | <10 |
| BRK | Masonry contracting | 38 | 19 | 15 | <10 | <10 | <10 | <10 |
| ISC | Landscape irrigation contracting | 26 | 16 | <10 | <10 | <10 | <10 | <10 |
| POL | Swimming pool construction contracting | 21 | 13 | <10 | <10 | <10 | <10 | <10 |
| AES | Alternative energy system contracting | 18 | <10 | 10 | <10 | <10 | <10 | <10 |
| ASB | Asbestos contracting | 17 | 11 | 10 | <10 | <10 | <10 | <10 |
| FIN | Finish carpentry contracting | 17 | <10 | <10 | <10 | <10 | <10 | <10 |
| FLR | Flooring and floor covering contracting | 16 | <10 | <10 | <10 | <10 | <10 | <10 |
| RFC | Recreational facility contracting | 16 | <10 | <10 | <10 | <10 | <10 | <10 |
| FAS | Fire alarm systems contracting | 14 | 18 | <10 | <10 | <10 | <10 | <10 |
| MCC | Marine facility contracting | 14 | <10 | <10 | <10 | <10 | <10 | <10 |
| NGF | Natural gas fitting provider contracting | 13 | <10 | <10 | <10 | <10 | <10 | <10 |
| EMC | Equipment/machinery contracting | 12 | 12 | <10 | <10 | <10 | <10 | <10 |
| BSC | Billboard/sign contracting | 11 | <10 | <10 | <10 | <10 | <10 | <10 |
| LPG | Liquefied petroleum gas contracting | 11 | <10 | <10 | <10 | <10 | <10 | <10 |
| PAV | Asphalt paving and sealcoating contracting | 11 | <10 | <10 | <10 | <10 | <10 | <10 |
| REF | Refrigeration contracting | 11 | 11 | <10 | <10 | <10 | <10 | <10 |
| FSP | Fire suppression contracting | <10 | 10 | <10 | <10 | <10 | <10 | <10 |
| SPR | Fire sprinkler contracting | <10 | 10 | <10 | <10 | <10 | <10 | <10 |
How this census was produced
- The source, and its date
- Virginia Department of Professional and Occupational Regulation (DPOR), Board for Contractors publishes four Board for Contractors list files — 2701, 2705A, 2705B and 2705C — as tab-delimited text, free of charge, refreshed every five business days, with phone numbers already left out. The files used here carry a server date of 2026-09-29 and were read on 2026-10-05. DPOR’s page states no restriction on their use; BidBro publishes aggregate counts only and credits DPOR as the source.
- What one count means
- One Board for Contractors licence, keyed by (occupation code, certificate number). A firm holding more than one licence counts once per licence. The licensee’s address of record (the CITY and STATE columns), STATE = VA. "Based in" a city means the address of record is in that city; it is not a service area.
- Why list 2701 is counted as Class A, and separately
- Class A = every row in list 2701 (occupation code 01) plus every row in list 2705A (occupation code 05). The two lists use separate certificate-number spaces: a number present in both names a different business in every case measured. Measured on these files: 480 certificate numbers appear in both list 2701 and a 2705 file, and in every one of them the two rows name different businesses, so collapsing them would have deleted real licences. In the seven cities the row count and the distinct-certificate count agree exactly, so for this region the choice of key changes nothing.
- Rows that were dropped, and why
- Rows whose column count does not match DPOR’s 20-column header, or whose class or occupation code does not match the file they sit in, are dropped and counted, never repaired. This build read 54,241 rows and counted 54,213: 24 had the wrong number of columns (an embedded tab shifts every field after it) and 4 carried a licence class that did not match the file they sat in. Duplicate keys across the four files: 0.
- The privacy floor
- A city × code cell is published only when it holds at least 10 licences. Smaller cells are shown as suppressed, never rounded up and never dropped from the table silently. City totals and class totals are far above the floor and are published in full. A licence listing several specialty codes counts once under each code, so specialty counts do not sum to the licence total.
- Reproducing this
- Download the four files from DPOR’s page, keep the rows whose STATE is VA, group by CITY and LICENSE RANK, and split LICENSE SPECIALTY on spaces. The build script that produced this page is in BidBro’s repository and prints the same integrity counts shown above. The CSV and JSON here carry every published figure with its as-of date.
What this census does not say
- Not who serves a city. The address of record is where the licence is registered. Firms based in Chesapeake, Norfolk or Suffolk work in Virginia Beach every day, and some firms registered in Virginia Beach work mostly elsewhere. Nothing here is a measure of supply, availability or capacity.
- Not a quality signal. A licence says a firm met DPOR’s entry requirements and is current. Complaints, disciplinary actions and insurance are separate records this release does not read.
- Not individual tradesmen. Electricians, plumbers, HVAC and gas-fitting tradesmen hold individual licences in a different DPOR list. This census counts Board for Contractors licences — firms and sole proprietors — only.
- Not the whole region. Seven independent cities are covered, matching BidBro’s permit source directory. Williamsburg, Poquoson, Franklin and the counties are in the DPOR files and are not counted here yet.
- Not live. DPOR refreshes the lists every five business days; this page states the date of the files it used and is refreshed on a monthly cadence, with each refresh recorded in the version history.
- BidBro is an interested party. BidBro operates a contractor bidding platform in this market. That is why the source, the method and the integrity counts are all published: a reader who does not take our word for it can reproduce every row from DPOR’s own files.
License, citation and corrections
BidBro’s analysis and presentation here — the counts, the tables and the downloadable files — are published under Creative Commons Attribution 4.0. Republish or embed them, including commercially, with attribution to BidBro and to DPOR as the source of the underlying lists. The lists themselves remain DPOR’s records and are subject to DPOR’s own terms.
Suggested citation
BidBro. “Hampton Roads contractor licences: how many are based in each city, by class and trade.” Hampton Roads Home Project Observatory, version 1.0.0, 2026-10-05, from Virginia DPOR regulant lists as of 2026-09-29. https://www.bidbro.com/observatory/hampton-roads-licensed-contractor-census
Corrections
A figure here wrong, or a reading of DPOR’s files you disagree with? Email ben.davis@bidbro.com — Ben Davis, Spokesperson, BidBro. BidBro publishes no phone number. Corrections are made and dated in the version history below; a number that changes is never quietly replaced. If DPOR asks for a different attribution or objects to this use, the release is updated or withdrawn the same day. Full media kit: bidbro.com/press.
Version history
- 1.0.0 — 2026-10-05. First publication, from DPOR lists dated 2026-09-29. Seven Hampton Roads cities, three licence classes, 32 classification and specialty codes at a floor of 10 per cell. Virginia Beach: 2,242 licences (1,349 Class A, 343 Class B, 550 Class C). CSV and JSON downloads.
Monthly refreshes and corrections are recorded here as dated entries.
Elsewhere on BidBro
- Virginia Beach contractors — contractors by trade across the city, with licence records where on file.
- Virginia Beach roofing contractors — one of the trades counted above, as the directory lists it.
- Virginia contractor licence classes A, B and C — what each class may take on, the specialty codes, and how to check a licence.
- Hampton Roads permit, inspection and zoning sources — the same seven cities, and the DPOR licence lookup every homeowner should run.
- Virginia contractors — the statewide directory this region sits inside.
- Virginia home-improvement projects — project listings by city.
- Hampton Roads Home Project Observatory — the methodology and standing rules every release follows.
