All tax rates are current for September 2026. Last updated: September 1, 2026.

How West Virginia Vehicle Property Levies Work by City and County: Complete Guide

Rates sourced from the West Virginia State Tax Department and county sheriffs and updated in real time

West Virginia’s notable local vehicle tax in these official rates is the property-tax levy expressed in mills — city versus unincorporated county. Charleston in Kanawha County is not unincorporated Kanawha. Huntington’s Cabell slice is not its Wayne slice. This guide compares live total mills using the official long location labels and shows dollars on assessed value. Right now the highest total levy in mills is 348.6% in Barboursville in Cabell County, and the lowest is 123.72% in Unincorporated Tucker County. Charleston in Kanawha County (Kanawha) is 321.8%; Huntington – Wayne in Wayne County (Wayne) is 327.64%. If you live in Charleston in Kanawha County (Kanawha) rather than Huntington – Wayne in Wayne County (Wayne), the gap is 5.84 mills, or $87.60 on $15,000 of assessed value in a simplified mills × value ÷ 1,000 illustration. This guide compares 289 localities across 55 counties. Rates are sourced from the West Virginia State Tax Department and county sheriffs and update in real time so a levy change cannot leave a stale percentage in the prose.

Why the locality on the title changes the bill

Situs follows where the vehicle is kept. Annexation or living just outside city limits is the whole game. The official rates duplicates some cities by county; the live rates uses county plus the full location text.

Charleston in Kanawha County (Kanawha) sits at 321.8% while Morgantown in Monongalia County (Monongalia) sits at 263.68%. If you live in Charleston in Kanawha County (Kanawha) instead of Morgantown in Monongalia County (Monongalia), that is 58.12 mills — $871.80 on $15,000 of assessed value in a simplified mills × value ÷ 1,000 illustration. People move this gap around without meaning to: a dealer in a cheaper jurisdiction does not rewrite the sourcing rules. The live comparisons below use the same total property levy (mills) field the calculator uses.

References:

  • West Virginia Code Chapter 11 — taxation; levies
  • West Virginia State Tax Department — property tax; personal property
  • County sheriff tax offices (Kanawha, Cabell, Monongalia, Berkeley, Wood)
  • West Virginia DMV — title and registration (separate from millage)

How this state taxes (or fees) a vehicle

W.Va. Code Chapter 11 provides for ad valorem property tax, including Class III/IV personal property such as motor vehicles in many counties. Levies are set in mills by counties, boards of education, and municipalities. The sheriff collects; DMV registration is a separate privilege tax discussion historically (West Virginia has reworked privilege vs property treatment — this guide is the millage export). This article’s live figures use total mills.

Pay personal-property tax to the county sheriff as billed. Keep receipts; some offices want them at registration. Moving from city to unincorporated changes mills.

Important: Location names look like “Charleston in Kanawha County” and “Huntington – Cabell in Cabell County.” Those exact strings are what the lookup needs. A mill is $1 per $1,000 of assessed value.

Highest and lowest rates right now

Among localities currently loaded for West Virginia, the maximum total levy in mills is 348.6% (Barboursville in Cabell County) and the minimum is 123.72% (Unincorporated Tucker County). Those names are live. If a district overtakes the leader next quarter, the sentence updates automatically. On a $25,000 assessed value, the high row is $8,715.00 and the low row is $3,093.00.

Treat a raw maximum with care when official tables include special districts, CID parcels, or vehicle types other than a passenger car. The regional sections below prefer ordinary cities and counties you would actually put on a title. The appendix remains the complete searchable list.

Kanawha Valley

This cluster is where many readers actually live. Charleston in Kanawha County (Kanawha) is 321.8% in the current official rates. The comparisons that follow keep names in the sentence and live amounts in the same sentence.

If the vehicle is taxed in Charleston in Kanawha County (Kanawha) rather than South Charleston in Kanawha County (Kanawha), millage is 321.8% versus 326.96% — a gap of 5.16 mills. On $15,000 of assessed value that is $77.40 a year in this simplified illustration.

Named in this section: Charleston in Kanawha County (Kanawha), South Charleston in Kanawha County (Kanawha). Other rows that belong to the same counties still live in the appendix table.

Example 1: Charleston in Kanawha County (Kanawha) versus South Charleston in Kanawha County (Kanawha)

Scenario: Illustrate $15,000 of assessed value in Charleston in Kanawha County (Kanawha) versus South Charleston in Kanawha County (Kanawha). Your county’s assessment fraction may be lower than sale price; this isolates millage.

Assessed amount (illustration): $15,000
Charleston in Kanawha County (Kanawha) millage 321.8% → $4,827.00
South Charleston in Kanawha County (Kanawha) millage 326.96% → $4,904.40
Gap: $77.40

A mill is $1 per $1,000 assessed. Doubling millage doubles this illustration; it does not double statewide sales tax.

Example 2: A cheaper vehicle and a dearer one

Scenario: Same millage, higher assessed value ($25,000) — still Charleston in Kanawha County (Kanawha) versus South Charleston in Kanawha County (Kanawha).

Charleston in Kanawha County (Kanawha) on $25,000 assessed: $8,045.00
South Charleston in Kanawha County (Kanawha) on $25,000 assessed: $8,174.00
Gap: $129.00

City versus unincorporated millage is why two neighbors on opposite sides of a sign can post different bills.

Huntington, Parkersburg, and the Ohio River

This cluster is where many readers actually live. Huntington – Wayne in Wayne County (Wayne) is 327.64% in the current official rates. The comparisons that follow keep names in the sentence and live amounts in the same sentence.

A move from Parkersburg in Wood County (Wood) to Huntington – Wayne in Wayne County (Wayne) changes the levy from 312.312% to 327.64%. That 15.328 mills millage swing is $229.92 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Vienna in Wood County (Wood) levies 309.4%; Weirton – Brooke in Brooke County (Brooke) levies 313.16%. The millage gap is 3.76 mills. At $15,000 assessed, the dollar gap is $56.40 (mills × assessed ÷ 1,000).

From one end of this cluster to the other — Huntington – Wayne in Wayne County (Wayne) versus Wheeling – Ohio in Ohio County (Ohio) — the total levy in mills runs 327.64% against 298.12%, a gap of 29.52 mills or $738.00 on $25,000.

Named in this section: Huntington – Wayne in Wayne County (Wayne), Parkersburg in Wood County (Wood), Vienna in Wood County (Wood), Weirton – Brooke in Brooke County (Brooke), Wheeling – Ohio in Ohio County (Ohio). Other rows that belong to the same counties still live in the appendix table.

Example 1: Huntington – Wayne in Wayne County (Wayne) versus Parkersburg in Wood County (Wood)

Scenario: Illustrate $15,000 of assessed value in Huntington – Wayne in Wayne County (Wayne) versus Parkersburg in Wood County (Wood). Your county’s assessment fraction may be lower than sale price; this isolates millage.

Assessed amount (illustration): $15,000
Huntington – Wayne in Wayne County (Wayne) millage 327.64% → $4,914.60
Parkersburg in Wood County (Wood) millage 312.312% → $4,684.68
Gap: $229.92

A mill is $1 per $1,000 assessed. Doubling millage doubles this illustration; it does not double statewide sales tax.

Example 2: A cheaper vehicle and a dearer one

Scenario: Same millage, higher assessed value ($25,000) — still Huntington – Wayne in Wayne County (Wayne) versus Parkersburg in Wood County (Wood).

Huntington – Wayne in Wayne County (Wayne) on $25,000 assessed: $8,191.00
Parkersburg in Wood County (Wood) on $25,000 assessed: $7,807.80
Gap: $383.20

City versus unincorporated millage is why two neighbors on opposite sides of a sign can post different bills.

North-central and the Eastern Panhandle

This cluster is where many readers actually live. Morgantown in Monongalia County (Monongalia) is 263.68% in the current official rates. The comparisons that follow keep names in the sentence and live amounts in the same sentence.

City limits matter here: Morgantown in Monongalia County (Monongalia) is 263.68% while Fairmont in Marion County (Marion) is 298.48%. If you live in Morgantown in Monongalia County (Monongalia), the illustrated tax on $15,000 assessed is $3,955.20 versus $4,477.20 in Fairmont in Marion County (Marion).

If the vehicle is taxed in Clarksburg in Harrison County (Harrison) rather than Bridgeport in Harrison County (Harrison), millage is 308% versus 304.68% — a gap of 3.32 mills. On $15,000 of assessed value that is $49.80 a year in this simplified illustration.

From one end of this cluster to the other — Morgantown in Monongalia County (Monongalia) versus Martinsburg in Berkeley County (Berkeley) — the total levy in mills runs 263.68% against 311.6%, a gap of 47.92 mills or $1,198.00 on $25,000.

Named in this section: Bridgeport in Harrison County (Harrison), Clarksburg in Harrison County (Harrison), Fairmont in Marion County (Marion), Martinsburg in Berkeley County (Berkeley), Morgantown in Monongalia County (Monongalia). Other rows that belong to the same counties still live in the appendix table.

Example 1: Morgantown in Monongalia County (Monongalia) versus Fairmont in Marion County (Marion)

Scenario: Illustrate $15,000 of assessed value in Morgantown in Monongalia County (Monongalia) versus Fairmont in Marion County (Marion). Your county’s assessment fraction may be lower than sale price; this isolates millage.

Assessed amount (illustration): $15,000
Morgantown in Monongalia County (Monongalia) millage 263.68% → $3,955.20
Fairmont in Marion County (Marion) millage 298.48% → $4,477.20
Gap: $522.00

A mill is $1 per $1,000 assessed. Doubling millage doubles this illustration; it does not double statewide sales tax.

Example 2: A cheaper vehicle and a dearer one

Scenario: Same millage, higher assessed value ($25,000) — still Morgantown in Monongalia County (Monongalia) versus Fairmont in Marion County (Marion).

Morgantown in Monongalia County (Monongalia) on $25,000 assessed: $6,592.00
Fairmont in Marion County (Marion) on $25,000 assessed: $7,462.00
Gap: $870.00

City versus unincorporated millage is why two neighbors on opposite sides of a sign can post different bills.

Counties and localities covered here

Current official data covers 55 distinct county/parish labels and 289 total rows. Names, as printed:

Barbour, Berkeley, Boone, Braxton, Brooke, Cabell, Calhoun, Clay, Doddridge, Fayette, Gilmer, Grant, Greenbrier, Hampshire, Hancock, Hardy, Harrison, Jackson, Jefferson, Kanawha, Lewis, Lincoln, Logan, Marion, Marshall, Mason, Mcdowell, Mercer, Mineral, Mingo, Monongalia, Monroe, Morgan, Nicholas, Ohio, Pendleton, Pleasants, Pocahontas, Preston, Putnam, Raleigh, Randolph, Ritchie, Roane, Summers, Taylor, Tucker, Tyler, Upshur, Wayne, Webster, Wetzel, Wirt, Wood, Wyoming.

If a name is long, truncated, or includes a district tag, that is how the official locality is labeled. Look it up in the appendix rather than shortening the official name.

More named comparisons

The regional sections cannot quote every locality. These additional pairs still use live rates and real place names, so you can see how neighbors diverge without scrolling the appendix yet.

A move from Huntington – Wayne in Wayne County (Wayne) to Charleston in Kanawha County (Kanawha) changes the levy from 327.64% to 321.8%. That 5.84 mills millage swing is $146.00 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Morgantown in Monongalia County (Monongalia) levies 263.68%; Wheeling – Ohio in Ohio County (Ohio) levies 298.12%. The millage gap is 34.44 mills. At $25,000 assessed, the dollar gap is $861.00 (mills × assessed ÷ 1,000).

A move from Martinsburg in Berkeley County (Berkeley) to Parkersburg in Wood County (Wood) changes the levy from 311.6% to 312.312%. That 0.712 mills millage swing is $17.80 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Beckley in Raleigh County (Raleigh) levies 291.6%; Fairmont in Marion County (Marion) levies 298.48%. The millage gap is 6.88 mills. At $25,000 assessed, the dollar gap is $172.00 (mills × assessed ÷ 1,000).

A move from Weirton – Brooke in Brooke County (Brooke) to Clarksburg in Harrison County (Harrison) changes the levy from 313.16% to 308%. That 5.16 mills millage swing is $129.00 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

South Charleston in Kanawha County (Kanawha) levies 326.96%; Vienna in Wood County (Wood) levies 309.4%. The millage gap is 17.56 mills. At $25,000 assessed, the dollar gap is $439.00 (mills × assessed ÷ 1,000).

A move from Unincorporated (Barbour) to Bridgeport in Harrison County (Harrison) changes the levy from 131.84% to 304.68%. That 172.84 mills millage swing is $4,321.00 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Belington in Barbour County (Barbour) levies 180.92%; Junior in Barbour County (Barbour) levies 165.4%. The millage gap is 15.52 mills. At $25,000 assessed, the dollar gap is $388.00 (mills × assessed ÷ 1,000).

A move from Unincorporated (Berkeley) to Philippi in Barbour County (Barbour) changes the levy from 243.16% to 180%. That 63.16 mills millage swing is $1,579.00 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Hedgesville in Berkeley County (Berkeley) levies 267.12%; Unincorporated (Boone) levies 250.48%. The millage gap is 16.64 mills. At $25,000 assessed, the dollar gap is $416.00 (mills × assessed ÷ 1,000).

A move from Madison in Boone County (Boone) to Danville in Boone County (Boone) changes the levy from 325.48% to 322.32%. That 3.16 mills millage swing is $79.00 on $25,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Sylvester in Boone County (Boone) levies 298%; Whitesville in Boone County (Boone) levies 300.48%. The millage gap is 2.48 mills. At $25,000 assessed, the dollar gap is $62.00 (mills × assessed ÷ 1,000).

A longer tour of named places

One more pass across named places, still in comparison sentences, still live:

Unincorporated (Barbour) levies 131.84%; Belington in Barbour County (Barbour) levies 180.92%. The millage gap is 49.08 mills. At $15,000 assessed, the dollar gap is $736.20 (mills × assessed ÷ 1,000).

A move from Philippi in Barbour County (Barbour) to Junior in Barbour County (Barbour) changes the levy from 180% to 165.4%. That 14.6 mills millage swing is $219.00 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Unincorporated (Berkeley) levies 243.16%; Hedgesville in Berkeley County (Berkeley) levies 267.12%. The millage gap is 23.96 mills. At $15,000 assessed, the dollar gap is $359.40 (mills × assessed ÷ 1,000).

A move from Unincorporated (Boone) to Martinsburg in Berkeley County (Berkeley) changes the levy from 250.48% to 311.6%. That 61.12 mills millage swing is $916.80 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Danville in Boone County (Boone) levies 322.32%; Madison in Boone County (Boone) levies 325.48%. The millage gap is 3.16 mills. At $15,000 assessed, the dollar gap is $47.40 (mills × assessed ÷ 1,000).

A move from Whitesville in Boone County (Boone) to Sylvester in Boone County (Boone) changes the levy from 300.48% to 298%. That 2.48 mills millage swing is $37.20 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Unincorporated (Braxton) levies 153.8%; Burnsville in Braxton County (Braxton) levies 203.8%. The millage gap is 50 mills. At $15,000 assessed, the dollar gap is $750.00 (mills × assessed ÷ 1,000).

A move from Gassaway in Braxton County (Braxton) to Flatwoods in Braxton County (Braxton) changes the levy from 203.8% to 203.8%. That 0 mills millage swing is $0.00 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Sutton in Braxton County (Braxton) levies 203.8%; Unincorporated (Brooke) levies 263.16%. The millage gap is 59.36 mills. At $15,000 assessed, the dollar gap is $890.40 (mills × assessed ÷ 1,000).

A move from Bethany in Brooke County (Brooke) to Beech Bottom in Brooke County (Brooke) changes the levy from 313.16% to 312%. That 1.16 mills millage swing is $17.40 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Follansbee in Brooke County (Brooke) levies 313.16%; Weirton – Brooke in Brooke County (Brooke) levies 313.16%. The millage gap is 0 mills. At $15,000 assessed, the dollar gap is $0.00 (mills × assessed ÷ 1,000).

A move from Windsor Heights in Brooke County (Brooke) to Wellsburg in Brooke County (Brooke) changes the levy from 312.84% to 313.16%. That 0.32 mills millage swing is $4.80 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Unincorporated (Cabell) levies 273.6%; Barboursville in Cabell County (Cabell) levies 348.6%. The millage gap is 75 mills. At $15,000 assessed, the dollar gap is $1,125.00 (mills × assessed ÷ 1,000).

A move from Milton in Cabell County (Cabell) to Huntington – Cabell in Cabell County (Cabell) changes the levy from 323.6% to 337.6%. That 14 mills millage swing is $210.00 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Unincorporated (Calhoun) levies 184.176%; Grantsville in Calhoun County (Calhoun) levies 234.176%. The millage gap is 50 mills. At $15,000 assessed, the dollar gap is $750.00 (mills × assessed ÷ 1,000).

A move from Clay in Clay County (Clay) to Unincorporated (Clay) changes the levy from 231.76% to 191.56%. That 40.2 mills millage swing is $603.00 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Unincorporated (Doddridge) levies 236.6%; West Union in Doddridge County (Doddridge) levies 285.64%. The millage gap is 49.04 mills. At $15,000 assessed, the dollar gap is $735.60 (mills × assessed ÷ 1,000).

A move from Ansted in Fayette County (Fayette) to Unincorporated (Fayette) changes the levy from 297% to 247%. That 50 mills millage swing is $750.00 on $15,000 assessed — before any homestead or vehicle-schedule fraction your county applies.

Further comparisons (set 2)

Same places, different pairings, still using live rates:

If the vehicle is taxed in Belington in Barbour County (Barbour) rather than Junior in Barbour County (Barbour), millage is 180.92% versus 165.4% — a gap of 15.52 mills. On $25,000 of assessed value that is $388.00 a year in this simplified illustration.

City limits matter here: Philippi in Barbour County (Barbour) is 180% while Unincorporated (Berkeley) is 243.16%. If you live in Philippi in Barbour County (Barbour), the illustrated tax on $25,000 assessed is $4,500.00 versus $6,079.00 in Unincorporated (Berkeley).

If the vehicle is taxed in Hedgesville in Berkeley County (Berkeley) rather than Martinsburg in Berkeley County (Berkeley), millage is 267.12% versus 311.6% — a gap of 44.48 mills. On $25,000 of assessed value that is $1,112.00 a year in this simplified illustration.

City limits matter here: Unincorporated (Boone) is 250.48% while Danville in Boone County (Boone) is 322.32%. If you live in Unincorporated (Boone), the illustrated tax on $25,000 assessed is $6,262.00 versus $8,058.00 in Danville in Boone County (Boone).

If the vehicle is taxed in Madison in Boone County (Boone) rather than Sylvester in Boone County (Boone), millage is 325.48% versus 298% — a gap of 27.48 mills. On $25,000 of assessed value that is $687.00 a year in this simplified illustration.

City limits matter here: Whitesville in Boone County (Boone) is 300.48% while Unincorporated (Braxton) is 153.8%. If you live in Whitesville in Boone County (Boone), the illustrated tax on $25,000 assessed is $7,512.00 versus $3,845.00 in Unincorporated (Braxton).

If the vehicle is taxed in Burnsville in Braxton County (Braxton) rather than Flatwoods in Braxton County (Braxton), millage is 203.8% versus 203.8% — a gap of 0 mills. On $25,000 of assessed value that is $0.00 a year in this simplified illustration.

City limits matter here: Gassaway in Braxton County (Braxton) is 203.8% while Sutton in Braxton County (Braxton) is 203.8%. If you live in Gassaway in Braxton County (Braxton), the illustrated tax on $25,000 assessed is $5,095.00 versus $5,095.00 in Sutton in Braxton County (Braxton).

If the vehicle is taxed in Unincorporated (Brooke) rather than Beech Bottom in Brooke County (Brooke), millage is 263.16% versus 312% — a gap of 48.84 mills. On $25,000 of assessed value that is $1,221.00 a year in this simplified illustration.

City limits matter here: Bethany in Brooke County (Brooke) is 313.16% while Follansbee in Brooke County (Brooke) is 313.16%. If you live in Bethany in Brooke County (Brooke), the illustrated tax on $25,000 assessed is $7,829.00 versus $7,829.00 in Follansbee in Brooke County (Brooke).

If the vehicle is taxed in Weirton – Brooke in Brooke County (Brooke) rather than Wellsburg in Brooke County (Brooke), millage is 313.16% versus 313.16% — a gap of 0 mills. On $25,000 of assessed value that is $0.00 a year in this simplified illustration.

City limits matter here: Windsor Heights in Brooke County (Brooke) is 312.84% while Unincorporated (Cabell) is 273.6%. If you live in Windsor Heights in Brooke County (Brooke), the illustrated tax on $25,000 assessed is $7,821.00 versus $6,840.00 in Unincorporated (Cabell).

Two complete examples

These two walk-throughs use the same live rate as the regional boxes. They are not a substitute for a clerk’s calculator, but they show the arithmetic behind the live dollar figures.

Complete example A: $15,000 in Charleston in Kanawha County (Kanawha)

Scenario: Taxable or assessed amount $15,000 in Charleston in Kanawha County (Kanawha).

Amount: $15,000
Total levy in mills 321.8%
Result: $4,827.00
Same amount in Huntington – Wayne in Wayne County (Wayne) (327.64%): $4,914.60
Gap: $87.60

This is the local (or combined) rate line only.

Complete example B: $25,000 in Huntington – Wayne in Wayne County (Wayne)

Scenario: Step the amount to $25,000 and keep the same two places.

Huntington – Wayne in Wayne County (Wayne): $8,191.00
Charleston in Kanawha County (Kanawha): $8,045.00
Gap: $146.00

Percentage and millage gaps scale with the base. Flat-fee states in this series do not.

What these rates do not include

DMV title fees, sales tax on the purchase (statewide), and any remaining privilege-tax remnants are not the millage rates compared here.

References:

  • West Virginia Code Chapter 11 — taxation; levies
  • West Virginia State Tax Department — property tax; personal property
  • County sheriff tax offices (Kanawha, Cabell, Monongalia, Berkeley, Wood)
  • West Virginia DMV — title and registration (separate from millage)

Common questions

Huntington is in two counties. Which row? Cabell vs Wayne — use the county your address sits in. The location label includes the county.

Is this sales tax at the dealer? No. Dealer sales tax is statewide. This official rates is property levy mills.

Can I trust a screenshot of this article in six months? Trust the live rates on this page, not a PDF. Highest and lowest names update when official rates change.

What if a rate shows as unavailable? The locality name may not match official spelling. Search the appendix and use the official city or county label.

Does a dealer in the cheap locality save me money? Almost never, if sourcing follows residence or first use. Charleston in Kanawha County (Kanawha) still pays 321.8% when that is where the vehicle belongs.

How these rates stay current

Every rate and dollar amount in this article is pulled live from current official data used by the West Virginia State Tax Department and county sheriffs. When an official levy changes, the figures on this page update in real time. Highest and lowest locality names also update automatically.

This is an educational estimator, not a clerk’s receipt. Effective dates, exemptions, trade-in rules, and assessment fractions can be more precise than a single combined rate. When you title, the state’s collecting office is the authority.

Appendix: searchable rate table

Use this as a search box, not as a substitute for the comparisons above. Filter by city, county, or location name.

LocationCountyTotal levy (mills)
Unincorporated Barbour CountyBarbour131.84 mills
Belington in Barbour CountyBarbour180.92 mills
Junior in Barbour CountyBarbour165.4 mills
Philippi in Barbour CountyBarbour180 mills
Unincorporated Berkeley CountyBerkeley243.16 mills
Hedgesville in Berkeley CountyBerkeley267.12 mills
Martinsburg in Berkeley CountyBerkeley311.6 mills
Unincorporated Boone CountyBoone250.48 mills
Danville in Boone CountyBoone322.32 mills
Madison in Boone CountyBoone325.48 mills
Sylvester in Boone CountyBoone298 mills
Whitesville in Boone CountyBoone300.48 mills
Unincorporated Braxton CountyBraxton153.8 mills
Burnsville in Braxton CountyBraxton203.8 mills
Flatwoods in Braxton CountyBraxton203.8 mills
Gassaway in Braxton CountyBraxton203.8 mills
Sutton in Braxton CountyBraxton203.8 mills
Unincorporated Brooke CountyBrooke263.16 mills
Beech Bottom in Brooke CountyBrooke312 mills
Bethany in Brooke CountyBrooke313.16 mills
Follansbee in Brooke CountyBrooke313.16 mills
Weirton - Brooke in Brooke CountyBrooke313.16 mills
Wellsburg in Brooke CountyBrooke313.16 mills
Windsor Heights in Brooke CountyBrooke312.84 mills
Unincorporated Cabell CountyCabell273.6 mills
Barboursville in Cabell CountyCabell348.6 mills
Huntington - Cabell in Cabell CountyCabell337.6 mills
Milton in Cabell CountyCabell323.6 mills
Unincorporated Calhoun CountyCalhoun184.176 mills
Grantsville in Calhoun CountyCalhoun234.176 mills
Unincorporated Clay CountyClay191.56 mills
Clay in Clay CountyClay231.76 mills
Unincorporated Doddridge CountyDoddridge236.6 mills
West Union in Doddridge CountyDoddridge285.64 mills
Unincorporated Fayette CountyFayette247 mills
Ansted in Fayette CountyFayette297 mills
Fayetteville in Fayette CountyFayette316.88 mills
Gauley Bridge in Fayette CountyFayette297 mills
Meadow Bridge in Fayette CountyFayette296.16 mills
Montgomery - Fayette in Fayette CountyFayette322 mills
Mount Hope in Fayette CountyFayette322 mills
Oak Hill in Fayette CountyFayette296.56 mills
Pax in Fayette CountyFayette296.76 mills
Smithers - Fayette in Fayette CountyFayette321 mills
Thurmond in Fayette CountyFayette297 mills
Unincorporated Gilmer CountyGilmer185.84 mills
Glenville in Gilmer CountyGilmer260.84 mills
Sand Fork in Gilmer CountyGilmer231 mills
Unincorporated Grant CountyGrant155.6 mills
Bayard in Grant CountyGrant205.6 mills
Petersburg in Grant CountyGrant223.56 mills
Unincorporated Greenbrier CountyGreenbrier185.4 mills
Alderson - Greenbrier in Greenbrier CountyGreenbrier260.16 mills
Falling Springs in Greenbrier CountyGreenbrier235.4 mills
Lewisburg in Greenbrier CountyGreenbrier260.32 mills
Quinwood in Greenbrier CountyGreenbrier235.28 mills
Rainelle in Greenbrier CountyGreenbrier235.4 mills
Ronceverte in Greenbrier CountyGreenbrier260.4 mills
Rupert in Greenbrier CountyGreenbrier235.4 mills
White Sulphur Springs in Greenbrier CountyGreenbrier235.4 mills
Unincorporated Hampshire CountyHampshire169.48 mills
Capon Bridge in Hampshire CountyHampshire217.76 mills
Romney in Hampshire CountyHampshire219.48 mills
Unincorporated Hancock CountyHancock267.6 mills
Chester in Hancock CountyHancock317.6 mills
New Cumberland in Hancock CountyHancock342.6 mills
Weirton - Hancock in Hancock CountyHancock317.6 mills
Unincorporated Hardy CountyHardy153.84 mills
Moorefield in Hardy CountyHardy228.84 mills
Wardensville in Hardy CountyHardy202.44 mills
Unincorporated Harrison CountyHarrison233 mills
Anmoore in Harrison CountyHarrison283 mills
Bridgeport in Harrison CountyHarrison304.68 mills
Clarksburg in Harrison CountyHarrison308 mills
Lost Creek in Harrison CountyHarrison283 mills
Lumberport in Harrison CountyHarrison281.4 mills
Nutter Fort in Harrison CountyHarrison308 mills
Salem in Harrison CountyHarrison283 mills
Shinnston in Harrison CountyHarrison308 mills
Stonewood in Harrison CountyHarrison308 mills
West Milford in Harrison CountyHarrison283 mills
Unincorporated Jackson CountyJackson249.24 mills
Ravenswood in Jackson CountyJackson299.24 mills
Ripley in Jackson CountyJackson299.24 mills
Unincorporated Jefferson CountyJefferson232.4 mills
Bolivar in Jefferson CountyJefferson258.24 mills
Charles Town in Jefferson CountyJefferson277.76 mills
Harpers Ferry in Jefferson CountyJefferson256.36 mills
Ranson in Jefferson CountyJefferson279.96 mills
Shepherdstown in Jefferson CountyJefferson267 mills
Unincorporated Kanawha CountyKanawha251.96 mills
Belle in Kanawha CountyKanawha301.96 mills
Cedar Grove in Kanawha CountyKanawha301.96 mills
Charleston in Kanawha CountyKanawha321.8 mills
Chesapeake in Kanawha CountyKanawha301.96 mills
Clendenin in Kanawha CountyKanawha301.96 mills
Dunbar in Kanawha CountyKanawha326.96 mills
East Bank in Kanawha CountyKanawha301.96 mills
Glasgow in Kanawha CountyKanawha301.96 mills
Handley in Kanawha CountyKanawha301.96 mills
Marmet in Kanawha CountyKanawha301.96 mills
Montgomery - Kanawha in Kanawha CountyKanawha326.96 mills
Nitro - Kanawha in Kanawha CountyKanawha316.32 mills
Pratt in Kanawha CountyKanawha301.96 mills
Saint Albans in Kanawha CountyKanawha326.96 mills
Smithers - Kanawha in Kanawha CountyKanawha325.96 mills
South Charleston in Kanawha CountyKanawha326.96 mills
Unincorporated Lewis CountyLewis189.8 mills
Jane Lew in Lewis CountyLewis239.72 mills
Weston in Lewis CountyLewis239.8 mills
Unincorporated Lincoln CountyLincoln246.2 mills
Hamlin in Lincoln CountyLincoln296.2 mills
West Hamlin in Lincoln CountyLincoln283.8 mills
Unincorporated Logan CountyLogan231.2 mills
Chapmanville in Logan CountyLogan281.2 mills
Logan in Logan CountyLogan281.2 mills
Man in Logan CountyLogan277.8 mills
Mitchell Heights in Logan CountyLogan281.2 mills
West Logan in Logan CountyLogan280.88 mills
Unincorporated Marion CountyMarion248.48 mills
Barrackville in Marion CountyMarion297.2 mills
Fairmont in Marion CountyMarion298.48 mills
Fairview in Marion CountyMarion298.48 mills
Farmington in Marion CountyMarion288.28 mills
Grant Town in Marion CountyMarion298.48 mills
Mannington in Marion CountyMarion295.8 mills
Monongah in Marion CountyMarion298.48 mills
Pleasant Valley in Marion CountyMarion262.24 mills
Rivesville in Marion CountyMarion298.48 mills
White Hall in Marion CountyMarion272.48 mills
Worthington in Marion CountyMarion295.68 mills
Unincorporated Marshall CountyMarshall198.36 mills
Benwood in Marshall CountyMarshall264.9 mills
Cameron in Marshall CountyMarshall246.8 mills
Glen Dale in Marshall CountyMarshall248.36 mills
Mc Mechen in Marshall CountyMarshall268.24 mills
Moundsville in Marshall CountyMarshall248.16 mills
Wheeling - Marshall in Marshall CountyMarshall264.68 mills
Unincorporated Mason CountyMason236.6 mills
Hartford in Mason CountyMason285.08 mills
Leon in Mason CountyMason286.08 mills
Mason in Mason CountyMason279.6 mills
New Haven in Mason CountyMason284.76 mills
Point Pleasant in Mason CountyMason286 mills
Unincorporated Mcdowell CountyMcdowell227.6 mills
Anawalt in Mcdowell CountyMcdowell273.44 mills
Bradshaw in Mcdowell CountyMcdowell277.6 mills
Davy in Mcdowell CountyMcdowell252.12 mills
Gary in Mcdowell CountyMcdowell277.6 mills
Iaeger in Mcdowell CountyMcdowell277.6 mills
Keystone in Mcdowell CountyMcdowell264.16 mills
Kimball in Mcdowell CountyMcdowell277.6 mills
Northfork in Mcdowell CountyMcdowell277.6 mills
War in Mcdowell CountyMcdowell277.6 mills
Welch in Mcdowell CountyMcdowell302.6 mills
Unincorporated Mercer CountyMercer226.64 mills
Athens in Mercer CountyMercer276.64 mills
Bluefield in Mercer CountyMercer276.64 mills
Bramwell in Mercer CountyMercer272.08 mills
Oakvale in Mercer CountyMercer276.64 mills
Princeton in Mercer CountyMercer274.76 mills
Unincorporated Mineral CountyMineral238.76 mills
Carpendale in Mineral CountyMineral288.76 mills
Elk Garden in Mineral CountyMineral288.76 mills
Keyser in Mineral CountyMineral313.76 mills
Piedmont in Mineral CountyMineral313.76 mills
Ridgeley in Mineral CountyMineral288.76 mills
Unincorporated Mingo CountyMingo227.6 mills
Delbarton in Mingo CountyMingo273.6 mills
Gilbert in Mingo CountyMingo277.6 mills
Kermit in Mingo CountyMingo277.6 mills
Matewan in Mingo CountyMingo277.6 mills
Williamson in Mingo CountyMingo297.6 mills
Unincorporated Monongalia CountyMonongalia213.68 mills
Blacksville in Monongalia CountyMonongalia263.68 mills
Granville in Monongalia CountyMonongalia263.68 mills
Morgantown in Monongalia CountyMonongalia263.68 mills
Star City in Monongalia CountyMonongalia263.68 mills
Westover in Monongalia CountyMonongalia263.68 mills
Unincorporated Monroe CountyMonroe211.56 mills
Alderson - Monroe in Monroe CountyMonroe286.32 mills
Peterstown in Monroe CountyMonroe261.56 mills
Union in Monroe CountyMonroe261.56 mills
Unincorporated Morgan CountyMorgan198.84 mills
Bath in Morgan CountyMorgan248.84 mills
Paw Paw in Morgan CountyMorgan248.28 mills
Unincorporated Nicholas CountyNicholas196.36 mills
Richwood in Nicholas CountyNicholas271.36 mills
Summersville in Nicholas CountyNicholas246.36 mills
Unincorporated Ohio CountyOhio231.8 mills
Bethlehem in Ohio CountyOhio298.04 mills
Clearview in Ohio CountyOhio281.8 mills
Triadelphia in Ohio CountyOhio281.8 mills
Valley Grove in Ohio CountyOhio281.8 mills
West Liberty in Ohio CountyOhio267.32 mills
Wheeling - Ohio in Ohio CountyOhio298.12 mills
Unincorporated Pendleton CountyPendleton135.8 mills
Franklin in Pendleton CountyPendleton185.8 mills
Unincorporated Pleasants CountyPleasants241.08 mills
Belmont in Pleasants CountyPleasants291.08 mills
St. Marys in Pleasants CountyPleasants310.68 mills
Unincorporated Pocahontas CountyPocahontas126 mills
Durbin in Pocahontas CountyPocahontas176 mills
Hillsboro in Pocahontas CountyPocahontas175.12 mills
Marlinton in Pocahontas CountyPocahontas173.44 mills
Unincorporated Preston CountyPreston154.2 mills
Albright in Preston CountyPreston179.8 mills
Brandonville in Preston CountyPreston192.96 mills
Bruceton Mills in Preston CountyPreston204.2 mills
Kingwood in Preston CountyPreston229.2 mills
Masontown in Preston CountyPreston204.2 mills
Newburg in Preston CountyPreston204.2 mills
Reedsville in Preston CountyPreston204.2 mills
Rowlesburg in Preston CountyPreston204.2 mills
Tunnelton in Preston CountyPreston204.2 mills
Unincorporated Putnam CountyPutnam252.84 mills
Bancroft in Putnam CountyPutnam302.76 mills
Buffalo in Putnam CountyPutnam302.84 mills
Eleanor in Putnam CountyPutnam302.72 mills
Hurricane in Putnam CountyPutnam327.84 mills
Nitro - Putnam in Putnam CountyPutnam317.2 mills
Poca in Putnam CountyPutnam302.28 mills
Winfield in Putnam CountyPutnam299.16 mills
Unincorporated Raleigh CountyRaleigh241.6 mills
Beckley in Raleigh CountyRaleigh291.6 mills
Lester in Raleigh CountyRaleigh288.8 mills
Mabscott in Raleigh CountyRaleigh291.2 mills
Sophia in Raleigh CountyRaleigh291.6 mills
Unincorporated Randolph CountyRandolph135.8 mills
Beverly in Randolph CountyRandolph173.12 mills
Elkins in Randolph CountyRandolph185.8 mills
Harman in Randolph CountyRandolph185.8 mills
Huttonsville in Randolph CountyRandolph185.8 mills
Mill Creek in Randolph CountyRandolph185.28 mills
Montrose in Randolph CountyRandolph185.8 mills
Womelsdorff in Randolph CountyRandolph185.8 mills
Unincorporated Ritchie CountyRitchie222.88 mills
Auburn in Ritchie CountyRitchie272.88 mills
Cairo in Ritchie CountyRitchie295.12 mills
Ellenboro in Ritchie CountyRitchie272.88 mills
Harrisville in Ritchie CountyRitchie297.88 mills
Pennsboro in Ritchie CountyRitchie297.88 mills
Pullman in Ritchie CountyRitchie272.68 mills
Unincorporated Roane CountyRoane175.76 mills
Reedy in Roane CountyRoane225.76 mills
Spencer in Roane CountyRoane225.76 mills
Unincorporated Summers CountySummers135.8 mills
Hinton in Summers CountySummers209.52 mills
Unincorporated Taylor CountyTaylor218.06 mills
Flemington in Taylor CountyTaylor268.06 mills
Grafton in Taylor CountyTaylor276.7 mills
Unincorporated Tucker CountyTucker123.72 mills
Davis in Tucker CountyTucker158 mills
Hambleton in Tucker CountyTucker164.12 mills
Hendricks in Tucker CountyTucker167.32 mills
Parsons in Tucker CountyTucker165.6 mills
Thomas in Tucker CountyTucker158.36 mills
Unincorporated Tyler CountyTyler219.04 mills
Friendly in Tyler CountyTyler269.04 mills
Middlebourne in Tyler CountyTyler272.8 mills
Paden City - Tyler in Tyler CountyTyler269.04 mills
Sistersville in Tyler CountyTyler294.04 mills
Unincorporated Upshur CountyUpshur135.8 mills
Buckhannon in Upshur CountyUpshur191.52 mills
Unincorporated Wayne CountyWayne263.64 mills
Ceredo in Wayne CountyWayne338.64 mills
Fort Gay in Wayne CountyWayne313.64 mills
Huntington - Wayne in Wayne CountyWayne327.64 mills
Kenova in Wayne CountyWayne338.64 mills
Wayne in Wayne CountyWayne313.64 mills
Unincorporated Webster CountyWebster135.8 mills
Cowen in Webster CountyWebster185.8 mills
Webster Springs in Webster CountyWebster185.8 mills
Unincorporated Wetzel CountyWetzel229.44 mills
Hundred in Wetzel CountyWetzel279.44 mills
New Martinsville in Wetzel CountyWetzel279.44 mills
Paden City - Wetzel in Wetzel CountyWetzel279.44 mills
Pine Grove in Wetzel CountyWetzel279.44 mills
Unincorporated Wirt CountyWirt243.04 mills
Elizabeth in Wirt CountyWirt293.04 mills
Unincorporated Wood CountyWood237.32 mills
North Hills in Wood CountyWood286.04 mills
Parkersburg in Wood CountyWood312.312 mills
Vienna in Wood CountyWood309.4 mills
Williamstown in Wood CountyWood287.32 mills
Unincorporated Wyoming CountyWyoming248.4 mills
Mullens in Wyoming CountyWyoming300.24 mills
Oceana in Wyoming CountyWyoming319.36 mills
Pineville in Wyoming CountyWyoming320.6 mills

Showing 289 locations. Rates refresh from the published sheet (12-hour cache).

Conclusion

West Virginia does not have one vehicle-tax number. Charleston in Kanawha County (Kanawha) is 321.8%; Huntington – Wayne in Wayne County (Wayne) is 327.64%; the live high is 348.6% and the live low is 123.72%. If you live in the high place, you feel it on $15,000 of assessed value in a simplified mills × value ÷ 1,000 illustration; if you live in the low place, you still owe whatever statewide tax or fee the statutes below impose. Walk the region that matches your address, then confirm the live row in the appendix before you sign.

References:

  • Complete reference list
  • West Virginia Code Chapter 11 — taxation; levies
  • West Virginia State Tax Department — property tax; personal property
  • County sheriff tax offices (Kanawha, Cabell, Monongalia, Berkeley, Wood)
  • West Virginia DMV — title and registration (separate from millage)

This guide is an educational estimator. It is not legal, tax, or DMV advice. Figures shown inline are sourced from the West Virginia State Tax Department and county sheriffs and related official rate data, update in real time, and can change when a locality’s levy changes. Confirm amounts with the collecting agency cited above before you pay.