Squeaky floors are one of those things that start as a minor annoyance and somehow end up being the loudest thing in your house at 2 a.m. You step over the same spot every night on your way to the bathroom. Your dog figures out the creak pattern and uses it against you. Sound familiar?

Here’s the good news: most squeaky floors are genuinely fixable, and a lot of them are fixable in an afternoon without calling anyone. The bad news is that a lot of homeowners either try the wrong fix for their specific situation or they get lucky and silence it temporarily, only to have it come back two months later. I want to help you avoid both of those outcomes.

Let me explain what’s actually happening first, because the fix depends entirely on the cause.

Why Floors Squeak (and Why It Matters Which Reason Applies to You)

Squeak LocationAccess TypePrimary CauseRecommended Fix
Subfloor to joistBelow (basement/crawlspace)Gap between subfloor and joistDrive 1.25"-1.5" construction screws up through joist into subfloor
Subfloor to joistBelow (basement/crawlspace)Lateral subfloor movementApply construction adhesive (PL Premium) along joist top
Under carpetFrom topSubfloor-to-joist separationUse Squeeeeek No More kit (~$25) to drive breakaway screw
Hardwood boardsFrom topTongue-and-groove frictionPowdered graphite or WD-40 Specialist Dry Lube in joint
Hardwood boardsFrom topPrefinished surfaceO’Berry Enterprises Counter-Snap kit
Under tileEitherSubfloor flexFix subfloor from below; avoid top-down work to prevent cracking
Bridging areaBelowLoose wood bridgingPowdered graphite in joint (temporary); structural reinforcement needed

A squeak is friction. Two pieces of wood rubbing against each other, or a nail working against wood grain, or a subfloor panel moving against a joist. That’s it. But where and why that friction is happening changes your approach completely.

The most common culprits, in my experience:

  • Nail movement: Over time, the nails holding your subfloor to the joists can work loose. Every time you step on that spot, the subfloor lifts slightly and drops back down, and the nail drags against the wood. This is extremely common in houses built before the mid-1990s, when pneumatic nailers weren’t universal and ring-shank nails weren’t as widely used.
  • Subfloor panel gaps: Engineered wood subfloor panels (OSB or plywood) expand and contract with humidity changes. If they were installed too tight together, or if the floor system has some flex in it, adjacent panels can rub at the seams.
  • Joist bridging: In some older homes, the bridging between joists (those diagonal pieces of wood or metal X-braces) can loosen and start rubbing against the joists themselves. This one tends to produce squeaks that feel more “whole room” and less localized.
  • Finished flooring movement: Hardwood strips rubbing against each other at the tongue-and-groove joints. This is more common in older solid hardwood and in rooms with big humidity swings.

You might be wondering how you figure out which one you’re dealing with. The honest answer is: access. If you have an unfinished basement or crawlspace below the squeaky area, you can see the structure and diagnose it directly. If you’ve got a slab or a finished ceiling below, you’re working from the top, and it’s a little more trial and error.

Fixing It from Below (the Right Way When You Have Access)

If you can get under the floor, this is the best scenario. You have options that are cleaner, more permanent, and less likely to damage your finished floor.

Start by having someone walk the floor above while you’re in the basement or crawlspace. Mark the squeaky spots by location relative to the joists. What you’re looking for: is the subfloor lifting away from the joist slightly when weight is applied? You can often see it or feel it with your hand pressed against the subfloor while your helper walks.

If there’s a gap between the subfloor and the top of the joist, the fix is to drive construction screws up through the joist into the subfloor. Use 1-1/4" or 1-1/2" drywall screws for a subfloor that’s 3/4" thick. Do not use longer screws. I’ve seen this done with 2-1/2" screws and they punched right through the hardwood above, which is an extremely bad day.

If the subfloor is in solid contact with the joist but still squeaking, the problem is likely the subfloor moving laterally. A bead of construction adhesive (Loctite PL Premium is what I reach for) along the top of the joist on both sides helps here. Squeeze it into any gap you can find, wipe off the excess, and give it 24 hours.

For a wood-to-wood rub you can identify at the bridging or at a subfloor seam, squirting some powdered graphite or even plain talcum powder into the joint can stop the noise temporarily, though this isn’t a permanent fix. It buys you time while you figure out a more structural solution.

Fixing It from the Top

No basement. Carpet above, or tile, or hardwood you’re not willing to pull up. This is where most homeowners find themselves, and the solutions require a little more care.

Through carpet: Squeeeeek No More makes a specialized kit (around $25 at most hardware stores or online) specifically for this situation. The tool lets you drive a break-away screw through carpet and pad, through the subfloor, and into the joist, then snap the head off below the surface so it doesn’t poke up through the carpet. It works. I’ve used it dozens of times. The trick is finding the joist, which you do with a stud finder or by probing with a finish nail until you hit something solid.

Through hardwood: This is where I’d tell most people to be careful. You can drive finish nails at an angle through the hardwood and into the subfloor, then set the heads and fill with a color-matched wood filler. But if your hardwood is prefinished with a hard aluminum oxide coating (most of it today is), you’re fighting a very tough surface, and you risk splitting boards. The O’Berry Enterprises Counter-Snap kit is worth looking at if you’re going this route.

One approach that works surprisingly well on hardwood with a gap between boards: squeeze powdered graphite or a dry lubricant like WD-40 Specialist Dry Lube into the joint over the squeak. Lay a cloth over it, step on it to work it in. For surface-level tongue-and-groove friction, this sometimes solves it entirely.

Under tile: I’ll be honest with you. If you’ve got a squeak under tile, your best path is usually to fix the subfloor flex causing it (from below if possible), because working through tile risks cracking it. If the tile itself is loose and rocking, that’s a re-tile job.

The One Fix Most People Skip (That’s Often the Real Problem)

Here’s something I think is undersold in most squeak-fixing guides: if you’ve got significant subfloor movement, the right fix isn’t a screw here and there. It’s adding blocking or sister joists.

A bouncy, flexible floor will keep squeak-producing materials moving against each other no matter how many screws you drive. If you step in your living room and you can feel the floor flex, especially in an older home with 2x8 joists spanned 14 or 16 feet, you may be dealing with undersized or over-spanned framing. A row of solid blocking between joists (2x lumber cut to fit snugly between them, nailed and glued in place) can make a dramatic difference in floor stiffness and silence multiple squeaks at once.

This job takes a few hours in a weekend if you have reasonable basement access and can swing a hammer overhead, which is everyone’s least favorite carpentry position. A contractor doing the same work runs $300 to $700 depending on how much blocking is needed and how accessible your basement is. Worth it if the floor has been driving you crazy for years.

When to Call a Pro and What It’ll Cost

Sources

Most squeak repairs, done from below or through carpet, are DIY-friendly. I’d say confidently: if you have basement access and basic tools, try it yourself before spending any money on a contractor.

Where I’d call someone: if the subfloor itself is soft or spongy (which can indicate moisture damage or rot), if you suspect a joist is compromised, or if you’re dealing with a second-story floor over a finished ceiling and you want the fix to be clean and permanent without opening up drywall.

A handyman fixing a localized squeak from above typically runs $75 to $200. A carpenter tackling subfloor issues with blocking or subflooring repairs from below is more in the $250 to $800 range. If a contractor is telling you they need to pull up significant flooring for a squeak repair without a very clear explanation of why, get a second opinion.


Photo: Mike van Schoonderwalt via Pexels