The curtain lifts at dusk in an El Cajon ranch, and the air at the sash is cold. That is a draft: air moving through a gap. A stain on the sill after rain is water, and fog between the panes is a failed insulated-glass seal. Mixing those three symptoms is how people buy the wrong fix.

Cold air at the sash is not water on the sill

A drafty window is an air leak around the window. You feel it as a thin stream of outdoor air at the meeting rail, the lock, the sash corners, or the interior stool. On a still night inland, that stream is the bedroom going cold after 10 p.m. On a west wall in Ocean Beach or Point Loma, it is the marine layer pushing through tired tracks.

Water leaves a mark. After a storm, look at the sill, the drywall return, and the stucco under the head. Dark staining, bubbling paint, or a wet track is a rain path. That job lives on our window leaking around the frame page. Air and water can share a gap. The repair still starts with the right symptom.

Fog or beads between two panes is a failed insulated unit. The house is not leaking there. The seal between the lites is. That is a glass problem. We cover it as condensation inside the glass.

Single-pane aluminum sliders from the 1960s and 1970s show up in El Cajon ranch tracts, Clairemont boxes, and coastal bungalows. Aluminum conducts heat, so the frame itself feels cold on the fingers. That chill on the metal is conduction. A true draft moves. Hold still. If air is crossing your skin, you have a gap. If the frame is simply cold and the room is still, you are feeling the metal.

The glass can feel cold without leaking. Dual-pane glass slows that conduction. It does not close a sash gap. Diagnose the moving air first, then talk about glass.

Patio sliders in the same wall follow the same split. Cold at the lock stile is air. A wet track after rain is water. Treat them as two calls.

Failed weatherstrip, warped sliders, and empty weep paths

Most drafty sliding windows in San Diego fail at three places: the weatherstrip, the meeting rail, and a frame that no longer sits square.

Pile weatherstrip and vinyl fins crush, flatten, and go hard in this climate. UV on a west wall in Mission Valley or a south wall in Chula Vista cooks the plastic. Once the fin no longer springs back, you can see daylight at the lock. The sash still closes. It just does not seal. Corners go first. That is where the strip was cut, stretched, or left short at install.

Warped sliders are the other local pattern. Aluminum frames heat in afternoon sun, then drop at night. Over years the interlock at the meeting rail opens a hairline slot. That slot is windows letting in cold air even with the latch thrown. If the sash also binds, that is a track and roller issue. Do not force it. The stuck sliding window write-up covers operation. For drafts, ask whether the meeting rail still overlaps and whether the weatherstrip still fills the remaining space.

Locks and keepers matter. A slider that latches but does not pull the interlock tight leaves a vertical slot from sill to head. You will feel it with a bare hand at night. New keepers and fresh weatherstrip often close that slot when the frame is still true.

Weep paths sit at the bottom of the frame. They exist to let rain leave the track. They are not room vents. When they clog with grit, salt, and stucco dust, water sits in the track. Some owners then caulk the weeps shut. That traps water and can still leave the sash gap open to wind. Keep weeps open and clear. They are not the draft. The draft is usually the sash, the lock, or a failed exterior joint.

Stationary joints are a different material. The joint between the frame and the stucco, or the interior stool and the drywall, is a caulk and sealant job. Operable sashes need weatherstrip that can compress and recover. Using the wrong material on the wrong joint is a common miss. Our window caulking and sealant guide stays on the stationary side. This page stays on air at the sash.

Wood double-hungs in older coastal cottages fail at the meeting rail and the side channels. The same hand test applies. If you can see light at the lock, weatherstrip and hardware are the first look. If the jamb itself has pulled, you are past parts.

Marine layer push on the coast versus inland night drop

San Diego County is not one climate. The same failed weatherstrip feels different in Encinitas than it does in Ramona.

From Ocean Beach through Pacific Beach, La Jolla, Del Mar, and Encinitas, the marine layer is a slow push. Late spring and early summer, onshore flow sits against west and northwest walls for hours. Tired aluminum sliders on those walls leak a cool, damp air that never quite becomes rain. You notice it as a moving curtain, a cold strip along the stool, or a bedroom that will not hold the temperature the rest of the house holds. Salt air also ages the fins and pile faster than inland sun alone. Tracks fill with grit. The sash still rolls, then it does not seal.

Inland bedrooms in El Cajon, Santee, Lakeside, and Ramona tell the other story. Days run hot. After sunset the temperature drops hard in the valleys and on the granite. The house dumps heat through every gap. Windows letting in cold air at 11 p.m. are often the same sliders that felt fine at 4 p.m. There is no fog bank. There is a night drop and a sash that no longer seals. Ranch plans with long west walls and a living-room slider stack that leak across a lot of glass line.

Santa Ana periods reverse the pressure. Dry offshore wind finds the same meeting-rail slot and blows dust into the track. That is still an air leak. It just arrives from the east.

East County stucco and older aluminum frames also go out of square as slabs move. A hairline at the head can be an air path even when the sash weatherstrip looks new. Coastal wood bungalows get the opposite: swollen sills in May gray, then gaps when the wood dries in October.

Stand at the window that actually bothers you, on the evening it bothers you. Note the wall direction, the hour, and whether the air is damp or dry. That note is what a licensed glazing pro needs.

What you can check before a pro visits

You can map the leak without tools.

Wait for a time the room already feels off. Evening inland, or a marine-layer morning on the coast. Close the sash and throw the lock. Hold the back of your hand at the meeting rail, then the lock, then each corner, then the stool. Moving air is the draft. Cold glass without movement is conduction.

Look for daylight. From inside, with the room dim and the exterior bright, a bright line at the interlock is a gap. On sliders, that line is often vertical at the lock stile.

Press the weatherstrip. It should spring back. If it stays flat, or if pieces are missing at the corners, that is a parts job for window repair when the frame is still square.

Check that weep holes at the sill are open. A cotton swab or a thin plastic tie clears grit. Leave them open.

Read the exterior joint. Cracked or missing sealant at the stucco return is a stationary leak. That is caulk, not weatherstrip. Do not pile interior caulk onto an operable sash. You will glue it shut.

Temporary covers help comfort. They do not close the gap. Close-woven drapes or a cellular shade at night cut the cold you feel off the glass, which is room-side convection. Clear interior film kits tape to the interior frame and add a still-air layer for a season. They also block operation and can trap moisture against old wood. Use them as a winter comfort layer. Interior acrylic inserts that press into the opening do the same job in a more reusable form. None of those close a failed interlock, a rotten sill, or a frame that has pulled off the flashing.

If you are tempted to spray expanding foam behind interior trim, stop. High-expansion foam can bow jambs so the sash will not slide. Air sealing at the rough opening is installer work, and the product has to be a low-expansion formula made for windows. The building department, not a blog, sets whether that opening needs new flashing or can keep the existing retrofit flange. Ask that question before anyone cuts stucco.

Skip a candle as a draft tester. It is a fire risk near drapes. Use your hand.

Write down which openings leak, which direction they face, and whether the sash still locks square. That list is the start of a repair-versus-replace call.

How you stop cold air through the sash is the same sequence in July or January: find the path, restore the weatherstrip and lock, then seal only the stationary joints. Film and drapes are the last layer, for the glass, after the sash actually closes.

Repair, retrofit, or full-frame: how the leak decides

The leak decides the scope. The catalog does not.

Start with parts when the frame is true, the glass is clear, and the only failure is pile, fins, rollers, or a keeper that no longer pulls the interlock tight. A licensed glazing contractor can replace weatherstrip and hardware without opening the wall. California Code of Regulations title 16, section 832.17 covers selecting, cutting, assembling, and installing glass, sashes, and frames. California requires a contractor license when the aggregate contract price for labor, materials, and all other items is $1,000 or more (Business and Professions Code section 7048). Confirm any pro on the CSLB license check.

Move to a retrofit insert when the existing frame and the water-resistive barrier around it are sound, the opening is square, and the sash and insulated glass are the worn parts. The new unit sits in the old frame. Published retrofit ranges on this site run $500 to $950 per window. That path fails if the old frame is the leak: racked aluminum, a rotten wood sill, or a flange that has pulled.

Go to full-frame replacement when the leak is the opening, not only the sash. Rot at the sill, stucco cracks that line up with the head, a frame out of square, or a history of rain in the wall means the old frame comes out. Published full-frame ranges on this site run $900 to $1,600 per opening. The retrofit versus full-frame comparison is the longer version of that fork.

In the City of San Diego, a building permit is required for window replacement. Same-size, same-type replacement can use a No-Plan Building Permit under Development Services Information Bulletin 203, which is a permit without plan review, not a skip. The doors or windows must be the same size and type, with no change to the existing opening. Parcels with a designated historic resource, parcels in an adopted historic district, and buildings 45 years or older have extra historic-review rules. Confirm current process with City of San Diego Development Services. Other cities in the county, and the unincorporated county, set their own permit rules. Ask that jurisdiction what it requires for your address.

If the job is a replacement, California’s 2025 Building Energy Efficiency Standards took effect January 1, 2026. San Diego County sits in Climate Zones 7 and 10. The prescriptive maximum fenestration U-factor there is 0.30. The mandatory maximum U-factor is 0.40 in all climate zones. California Energy Code section 150.2(b), wording read from the 2022 edition, lets replacement of vertical fenestration no greater than 75 square feet use a U-factor no greater than 0.40, with a SHGC no greater than 0.35 in Climate Zones 2, 4, and 6 through 15. Confirm the current edition with the building department. Larger jobs meet the prescriptive numbers. Product listings live on ENERGY STAR’s windows page and in the California Energy Commission standards. Ask the installer which path your square footage uses.

Flashing and retrofit-flange details are not a single county recipe. Ask the building department and the installer whether the new unit keeps the existing flange, needs new flashing, and whether the opening size stays the same. That is the question that keeps a draft fix from turning into a wall leak.

When to call us

Call when the sash still leaks after you have found daylight at the lock, when weatherstrip is gone, or when the frame itself has moved. Window Pro SD is a referral service. We match you with licensed, independent local window replacement professionals. Call us at (858) 400-6418 and we’ll connect you with a licensed local window contractor.