How to Fix a Leaking P-Trap: Step-by-Step Guide
A leaking P-trap under your sink can cause cabinet water damage fast — this guide shows you how to diagnose, tighten, reseat, or replace a P-trap in under an hour.
The P-trap — that curved section of pipe under your sink — does two important jobs: it carries wastewater to the drain and holds a small pool of water that blocks sewer gases from entering your home.
The P-trap — that curved section of pipe under your sink — does two important jobs: it carries wastewater to the drain and holds a small pool of water that blocks sewer gases from entering your home. When it leaks, water drips into the cabinet below and can rot the cabinet floor, warp shelving, and create mold if ignored for more than a few days. The good news is that a P-trap leak is one of the easiest plumbing repairs a homeowner can tackle. No soldering, no special tools, and no plumber required.
This guide covers diagnosing which P-trap joint is leaking, tightening or reseating the connection if the fitting is still good, and doing a full replacement if the trap body is cracked or deteriorated.
What You Need
Most P-trap repairs need only basic supplies:
- PVC P-trap replacement kit (1-1/4 or 1-1/2 inch) — includes trap arm, curved trap, and all slip-joint nuts and washers; typically $8–$15
- Slip-joint washers assortment — if you only need to replace the washers, not the full trap; $5–$8
- Adjustable pliers or channel-lock pliers — for stubborn slip-joint nuts; $15–$25
- Bucket or small container — to catch water when you remove the trap
- Dry paper towels — for the leak isolation test
- Flashlight — the under-sink cabinet is dark
Estimated total cost: $5–$15 for washer-only repairs; $10–$20 for a full trap replacement.
Step 1: Identify the Leak Location
Before you remove anything, confirm exactly which joint is leaking. Place dry paper towels directly below each slip-joint connection — there are typically two to three connections in a standard P-trap assembly: the drain tailpiece-to-trap nut, the trap-to-trap-arm nut, and the trap arm-to-wall stub-out nut.
Run a full basin of water and watch as it drains. Check each paper towel immediately after the drain empties. The wet towel identifies your leaking joint. If multiple towels are damp, plan to replace the entire trap assembly.
Also look at the trap body itself under a flashlight. White residue or a greenish-white crust around a joint indicates slow chronic leaking. A visible crack in the plastic means the trap section must be replaced outright — tightening won’t fix a crack.
Step 2: Place a Bucket and Remove Water from the Trap
You do not need to turn off the water supply under the sink — the P-trap carries drain water, not pressurized water. Just keep the faucet off while you work.
Place a bucket or container directly below the trap’s curved section. The trap holds a small amount of standing water (that is the whole point — it seals out sewer gas). When you loosen the slip-joint nuts, that water will drain into your bucket.
Step 3: Try Tightening the Slip-Joint Nuts First
If the leak is at a slip-joint connection and the nut feels loose, try hand-tightening it first. Turn clockwise. Slip-joint nuts on PVC P-traps should be hand-tight — overtightening with pliers can crack the nut. After hand-tightening, run a full basin of water and recheck the paper towel test. Many P-trap leaks are nothing more than a nut that has vibrated loose over time.
If the nut is already snug but still leaking, the problem is the compression washer inside the nut, not the tightness. You need to replace the washer.
Step 4: Replace the Slip-Joint Washers
Unscrew the leaking slip-joint nut by hand (counterclockwise). If it won’t budge, use channel-lock pliers — but grip the nut body only, not the pipe, and use just enough force to break it loose.
Once the nut is off, slide it off the pipe and look inside it. You’ll find a rubber or nylon compression washer. Pull it out — it may be flattened, cracked, or hard from age.
Take the old washer to the hardware store to match the size, or use a slip-joint washer assortment kit to find the correct fit. The new washer goes back into the nut tapered-side facing the nut’s opening (toward the fitting, not toward the pipe). Slide the nut back onto the pipe and thread it back onto the fitting by hand until snug. Run a full drain test.
Step 5: Replace the Full P-Trap Assembly
If the trap body is cracked, the plastic is brittle and yellowed, or multiple joints are leaking, replace the whole assembly. A new PVC trap kit costs less than $15 and takes less than 30 minutes to install.
Remove the old trap: With your bucket in place, unscrew all slip-joint nuts by hand. The trap assembly will come off in two to three pieces: the curved trap section and the trap arm (the horizontal pipe going into the wall). Note how they were assembled — take a photo before removing if it helps.
Check the drain tailpiece and wall stub-out: Inspect the plastic tailpiece coming down from the sink drain basket and the stub-out in the wall. If either has a crack or corroded threads, replace those too before installing the new trap. You cannot seal a leak at a fitting if the fitting itself is damaged.
Assemble the new trap: Slide the slip-joint nut onto the tailpiece first, threaded end down. Slide a new compression washer into the nut. Connect the curved trap body to the tailpiece nut. Then attach the trap arm to the other end of the trap, running it horizontally to the wall stub-out.
Critical alignment: The trap arm must slope very slightly downward from the trap toward the wall — a drop of about 1/4 inch over the length of the arm prevents water from sitting in the arm and causing slow drains or odors.
Hand-tighten all slip-joint nuts until snug. Do not use pliers unless a nut is still loose after firm hand pressure — overtightening cracks PVC fittings.
Run a full test: Fill the sink basin completely and release it all at once. Watch all three joints as the water drains. Dry, no drip — you are done.
What to Expect Long-Term
A new PVC P-trap should last 10 to 20 years under normal use. Chrome brass traps last longer but are less forgiving of overtightening. Inspect the trap annually — look for white mineral buildup at joints, which signals a slow weep before it becomes a visible drip. Replacing washers promptly at the first sign of a leak keeps your cabinet dry and prevents the more expensive consequence: a rotted cabinet floor.
Related Reading
- How to Unclog a Sink Drain — the next step if slow drainage persists after the trap is repaired
- How to Fix a Leaky Faucet — address the source plumbing while you have the cabinet open
- How to Fix a Garbage Disposal — kitchen sink repair often pairs with P-trap work
- Identify the Leak Location
Before you remove anything, confirm exactly which joint is leaking. Place dry paper towels directly below each slip-joint connection — there are typically two to three connections in a standard P-trap assembly: the drain tailpiece-to-trap nut, the tr...
- Place a Bucket and Remove Water from the Trap
You do not need to turn off the water supply under the sink — the P-trap carries drain water, not pressurized water. Just keep the faucet off while you work.
- Try Tightening the Slip-Joint Nuts First
If the leak is at a slip-joint connection and the nut feels loose, try hand-tightening it first. Turn clockwise. Slip-joint nuts on PVC P-traps should be hand-tight — overtightening with pliers can crack the nut.
- Replace the Slip-Joint Washers
Unscrew the leaking slip-joint nut by hand (counterclockwise). If it won't budge, use channel-lock pliers — but grip the nut body only, not the pipe, and use just enough force to break it loose.
- Replace the Full P-Trap Assembly
If the trap body is cracked, the plastic is brittle and yellowed, or multiple joints are leaking, replace the whole assembly. A new PVC trap kit costs less than $15 and takes less than 30 minutes to install.
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.