Tile Flooring Installation Cost: 2026 Guide by Tile Type
Tile flooring installation costs $7-$25 per square foot installed. See pricing by ceramic, porcelain, natural stone, and when DIY saves the most.
Tile flooring installation costs $7-$25 per square foot installed, including tile, thinset, grout, and labor. A standard bathroom floor (40 sq ft) runs $280-$1,000. A kitchen floor (120 sq ft) runs $840-$3,000. Porcelain runs mid-range; natural stone like marble can push $30+/sq ft installed.
Frequently Asked Questions
What's the difference in cost between ceramic and porcelain tile?
Ceramic tile costs $1.50-$5 per sq ft; porcelain costs $3-$10 per sq ft. Porcelain is denser, harder, more water-resistant, and suitable for outdoor/freeze zones. For most bathrooms and kitchens, porcelain's extra $2-$3/sq ft is worth it — it's more durable and holds value better. Ceramic is fine for walls and low-traffic areas.
How much does tile labor cost per square foot?
Tile installation labor runs $4-$12 per sq ft depending on tile size, pattern complexity, and subfloor prep. Standard 12×24 porcelain in a straight pattern: $5-$7. Mosaic or hex tile with complex layouts: $10-$15. Stone with uneven thickness (slate, travertine): $8-$14. Labor costs exceed material costs on most tile jobs.
Is it cheaper to install tile yourself?
DIY tile saves the $4-$12/sq ft labor but requires renting a wet saw ($50-$80/day), a tile leveling system ($30-$60), and committing to a 2-3 day project per room. DIY tile for floors is advanced-level — the subfloor prep, lippage control, and grout technique take practice. Small bathroom floors are doable; large living room floors are not where you want to learn.
Do I need to remove old flooring before tile?
Usually yes. Tile can go over concrete slab with skim coat or over a properly prepped plywood subfloor. You cannot tile over vinyl, laminate, carpet, or existing tile without removing and prepping. Old tile removal adds $2-$5/sq ft. Going over existing tile is possible with a crack-isolation membrane but rarely recommended — the floor height rise causes door and transition issues.
What's the best underlayment for tile floors?
For most bathrooms: 1/4-inch cement board (Durock or HardieBacker) screwed to the subfloor with thinset between. For basements over concrete: apply a crack-isolation/uncoupling membrane like Ditra. For heated floors: Schluter Ditra Heat integrates subfloor prep, heating element channels, and uncoupling in one product.
Tile flooring is the durable, water-resistant choice for bathrooms, kitchens, entryways, and increasingly main living areas. It also happens to be the most labor-intensive flooring to install — which is why labor cost often exceeds material cost. This guide breaks down tile pricing by material, the hidden subfloor costs that surprise homeowners, and when DIY tile actually saves money.
Tile installation cost at a glance
| Area | Size (sq ft) | Low-end | Mid-range | High-end |
|---|---|---|---|---|
| Powder room | 20 | $140 | $280 | $500 |
| Standard bathroom | 40 | $280 | $560 | $1,000 |
| Master bathroom | 70 | $490 | $980 | $1,750 |
| Kitchen | 120 | $840 | $1,680 | $3,000 |
| Entryway + mudroom | 80 | $560 | $1,120 | $2,000 |
| Living room | 300 | $2,100 | $4,200 | $7,500 |
| Whole-floor 1,200 sq ft | 1,200 | $8,400 | $16,800 | $30,000 |
All-in typical range: $7-$25 per square foot installed for ceramic/porcelain; natural stone and designer tile push $30+/sq ft.
Cost per square foot by tile type
| Tile type | Material cost/sq ft | Pros | Cons |
|---|---|---|---|
| Ceramic | $1.50 – $5.00 | Cheap, easy to cut, many colors | Less durable, porous if chipped |
| Porcelain | $3.00 – $10.00 | Dense, frost-proof, water-resistant | Harder to cut, heavier |
| Glazed porcelain | $4.00 – $12.00 | Glossy or matte finish options | Shows scratches on dark glossy |
| Natural marble | $10.00 – $30.00 | Luxury appearance, unique | Stains, etches, needs sealing |
| Travertine | $5.00 – $15.00 | Warm natural color | Needs fill + seal, softer than porcelain |
| Slate | $5.00 – $15.00 | Textured, slip-resistant | Irregular thickness = pricier labor |
| Granite tile | $7.00 – $20.00 | Extremely hard, durable | Heavy, can be cold and slippery |
| Mosaic (glass/stone) | $8.00 – $25.00 | Accent pieces, detail work | Very labor intensive |
| Luxury vinyl tile (LVT) | $2.00 – $6.00 | Waterproof, soft underfoot, DIY | Not “real” tile; different category |
For most homes: porcelain at $4-$7/sq ft material + $6-$8/sq ft labor = $10-$15/sq ft installed hits the sweet spot for durability and value.
Labor cost by tile size and pattern
Labor is the bigger line item on most tile jobs:
| Tile scenario | Labor per sq ft |
|---|---|
| Standard 12×12 or 12×24 in straight pattern | $4 – $7 |
| Large format (24×48, 32×32) | $7 – $12 |
| 6×6 or smaller | $6 – $10 |
| Mosaic sheets | $8 – $15 |
| Herringbone or basketweave | $10 – $14 |
| Diagonal pattern | +$2/sq ft over straight |
| Natural stone with uneven thickness | $8 – $14 |
| Tile on stairs | $20 – $40 per step |
Add-ons that drive labor up:
- Subfloor prep: $1-$5/sq ft (cement board install, skim coat, leveling compound).
- Old floor removal: $2-$5/sq ft (tile) or $1-$3/sq ft (vinyl/laminate).
- Transitions and thresholds: $25-$75 each.
- Bullnose cuts for edges: $15-$40 per linear foot if not sold pre-bullnosed.
- Pattern design / herringbone layout: 20-40% labor premium.
What’s included in a fair quote
A proper tile installation quote should itemize:
- Tile material: style number, square footage ordered (including 10-15% waste).
- Thinset mortar: type and quantity (unmodified for porcelain + uncoupling membrane, modified for most others).
- Grout: cement-based, epoxy, or urethane. Color included.
- Backer board / underlayment: 1/4-inch cement board or uncoupling membrane.
- Labor: broken out by prep, installation, and grouting.
- Transitions: thresholds, schluter edge strips, or reducer strips.
- Waste removal: old flooring + construction debris haul-off.
- Sealing: stone sealer (for natural stone), grout sealer (standard).
Watch for quotes that say “materials” without specifying thinset/grout/backer board separately — installers sometimes use the cheapest supplies and call it included.
Subfloor prep: the hidden cost
Tile only succeeds with a proper substrate. Most tile failures (cracked tiles, grout cracks, lippage) trace back to subfloor prep that was skipped.
Required subfloor prep
Over wood subfloor: Install 1/4-inch or 1/2-inch cement backer board with thinset underneath, screwed every 8 inches, seams taped and mudded. Cost: $1.50-$2.50/sq ft DIY, $3-$5/sq ft hired.
Over concrete slab: Apply a crack-isolation/uncoupling membrane (Schluter Ditra is the industry standard). Prevents slab cracks from telegraphing through tile. Cost: $2-$4/sq ft.
Over existing tile: Usually requires full removal ($2-$5/sq ft). Going over existing tile is possible with a membrane but rarely recommended — floor height rises 1/2 inch or more, creating transition issues at every doorway.
Over vinyl or laminate: Must be removed. Cannot reliably bond tile to vinyl or laminate.
Leveling compound: If the subfloor varies more than 1/8 inch in 10 feet, self-leveling compound is required. $2-$5/sq ft depending on depth.
Heated floor prep
Electric heated floor systems add $6-$15/sq ft installed including the mesh mat, thermostat, and labor. Installs under thinset in the same mortar bed. The Schluter Ditra Heat system integrates uncoupling and heating in one product and is DIY-friendly.
Tile-by-room cost breakdown
Bathroom floor (40 sq ft)
Mid-range porcelain with proper prep:
| Line item | Cost |
|---|---|
| 44 sq ft porcelain @ $5 | $220 |
| Cement board + screws + thinset | $100 |
| Thinset for tile + grout | $60 |
| Labor @ $7/sq ft | $280 |
| Old vinyl removal | $80 |
| Transitions (1) + schluter edge | $40 |
| Total | $780 |
Kitchen floor (120 sq ft)
Mid-range porcelain:
| Line item | Cost |
|---|---|
| 132 sq ft porcelain @ $5 | $660 |
| Cement board + thinset | $280 |
| Tile thinset + grout | $150 |
| Labor @ $7/sq ft | $840 |
| Old flooring removal | $240 |
| Thresholds + transitions (3) | $120 |
| Total | $2,290 |
Entryway with marble (60 sq ft)
Polished marble upgrade:
| Line item | Cost |
|---|---|
| 66 sq ft marble @ $15 | $990 |
| Schluter Ditra membrane | $180 |
| Unmodified thinset + epoxy grout | $200 |
| Labor @ $10/sq ft | $600 |
| Stone sealer + grout sealer | $80 |
| Total | $2,050 |
Large format porcelain (living + kitchen 450 sq ft)
24×48 porcelain in straight pattern:
| Line item | Cost |
|---|---|
| 495 sq ft 24×48 porcelain @ $7 | $3,465 |
| Uncoupling membrane | $900 |
| Leveling system + supplies | $240 |
| Large-format labor @ $10/sq ft | $4,500 |
| Old flooring removal | $900 |
| Transitions + edge trim | $300 |
| Total | $10,305 |
Regional and complexity multipliers
- High-cost metro areas (NYC, SF, LA, Seattle, Boston, DC): add 20-40% to all labor.
- Older homes with uneven subfloors: budget extra $2-$4/sq ft for leveling.
- Curved walls or angles: +15-25% labor for cuts.
- Natural stone with varying thickness: +$2-$4/sq ft labor.
- Patterns requiring layout planning (diagonals, herringbone, pinwheel): +20-30% labor.
DIY tile installation: the honest breakdown
Tile is the most DIY-advanced of the common flooring types. Not impossible, but not where you want to learn basic skills.
DIY tool investment
- Wet tile saw: $80-$300 buy, $50-$80/day rent
- Tile leveling system: $30-$80
- Notched trowels (multiple sizes): $15-$40
- Rubber grout float: $10-$20
- Grout sponges + bucket: $15-$30
- Tile spacers: $10-$20
- Manual tile cutter (for small jobs): $30-$80
- Knee pads: $20-$40
Total tool investment: $250-$450 owned, $150-$200 rented.
DIY savings
Skilled DIY tile saves $4-$12/sq ft in labor. A 120 sq ft kitchen: $480-$1,440 savings. But factor in:
- Time: 2-3 days per room (tear-out + prep + set + grout).
- Learning curve: First tile job will have visible imperfections.
- Rework cost: If you mess up, replacement materials cost real money.
- Tool investment: First job’s tool cost eats into savings.
When DIY makes sense
- Small powder rooms or mudrooms (under 50 sq ft)
- Straight-pattern 12×12 or 12×24 porcelain on flat, prepped subfloors
- Backsplashes and accent walls — small areas, easier recovery from mistakes
- You already own the tools from previous projects
When to hire a pro
- Large-format tile (24×24 or larger) — lippage is brutal
- Natural stone with varying thickness
- Herringbone, chevron, or complex patterns
- Radiant heated floors in finished rooms
- Projects where grout lines will be scrutinized (bathrooms, kitchens, entryways)
Common upsells to push back on
- “Designer grout:” Epoxy grout has its place (showers, high-stain zones) but costs 3-5× cement grout. Standard cement grout + good sealer works fine for most floors.
- “Premium” membranes: Schluter Ditra is proven; off-brand uncoupling membranes often fail. Don’t let an installer pitch a different brand at higher cost.
- “Sealer maintenance contracts:” Most grout sealer reapplication is a 30-minute DIY job every 2-3 years. You don’t need a contract.
- Bullnose tiles at 3× markup: Schluter metal edge profiles ($8-$15/linear ft) look cleaner and cost less than many bullnose options.
- “Mudset” vs. “thinset:” True mud-bed installation (1-2 inches of mortar bed) is rarely needed on modern subfloors. If an installer insists on it without a structural reason, get another quote.
Timeline and disruption
Typical installation schedule:
- Day 1: Demo + subfloor prep + membrane/backer board
- Day 2: Tile installation
- Day 3: Grout (cement) or cure (24-48 hours after setting)
- Day 4-5: Sealing + transitions + punch-list
Room is unusable during this window. Plan bathroom tile during times you have another bathroom available.
Related Reading
- How to Install Tile Backsplash
- Carpet Installation Cost
- How to Install Hardwood Flooring
- Hardwood Floor Refinishing Cost — often cheaper than re-tiling if you still have wood underneath
- Bathroom Remodel Cost
- Kitchen Remodel Cost
- How to Regrout Tile
Bottom line
Tile installation runs $7-$25 per square foot installed, with most porcelain bathroom and kitchen projects landing at $12-$18/sq ft. Labor typically exceeds material cost. Budget an extra $2-$5/sq ft for proper subfloor prep — this is where failed installs get their start. DIY works for small, simple rooms; whole-home tile projects should go to certified installers with portfolios you can verify.
- Measure and order tile
Measure length × width in feet, multiply for square footage. Add 10% for cuts and waste, 15% for diagonal patterns or mosaics. Order from a single lot number to avoid shade variation.
- Prep the subfloor
Subfloor must be rigid and level. Install 1/4-inch cement backer board screwed to plywood subfloor with thinset between. Tape and mud seams. Check level; grind high spots or use self-leveling compound for low spots.
- Dry-lay the pattern
Before mixing thinset, lay out full rows without adhesive starting from room center. Verify cut tiles will be at least a half tile. Adjust starting point to minimize narrow cuts near walls.
- Spread thinset and lay tiles
Mix thinset per manufacturer directions. Spread with appropriate-size notched trowel (1/4-inch notch for 12×12, 1/2-inch for 12×24 or larger). Set tiles with a slight twisting motion to collapse ridges. Use spacers between tiles.
- Use a tile leveling system for large format
For tiles 12×24 or larger, use tile leveling clips and wedges to prevent lippage (uneven edges). Push clips under edges, insert wedges, cinch tight. Remove after 24 hours.
- Grout after thinset cures
Wait 24-48 hours after setting tiles. Mix grout, work diagonally across tiles with a rubber float. Wait 15-30 minutes, then wipe with damp sponge. Haze-clean the next day with a soft cloth.
- Seal grout and stone
For cement-based grout, seal with a penetrating grout sealer 48-72 hours after grouting. Natural stone tiles (travertine, marble, slate) also need a stone sealer applied before grouting to prevent grout staining.
Free: 10-Point Home Maintenance Checklist
Prevent costly repairs with this seasonal checklist. Save hundreds every year by catching problems early.
Your checklist is ready!
Open Checklist →Something went wrong. View the checklist here.