The short answer

  • A leak is minor when it comes from one isolated, accessible failure (a pipe boot, a cracked tile, a single flashing joint) on a roof with years of life left, the wet area is small and contained, and no decking or framing is involved. In San Diego that’s usually a $250 to $900 fix.
  • A leak is major when water reaches multiple spots, the deck or rafters are soft, the underlayment has failed across a slope, or the roof is past its expected age. That’s $1,500 to $9,000-plus, and sometimes a sign the whole roof is due.
  • The stain on your ceiling does not tell you which one you have. Water travels along framing before it drips, so a quarter-sized spot can sit under a two-foot area of soaked decking.
  • The fastest honest test: how many separate spots, how old is the roof, and is the wood firm or spongy. Two of those three pointing the wrong way means it’s major.

A small brown ring on the ceiling can be a $300 afternoon or the first visible sign of a $9,000 problem. The hard part is that both look identical from inside the house. Below is the framework a San Diego roofer actually uses to sort one from the other, with local pricing, the four signs that quietly turn a minor leak major, and what to check before you call anyone.

What separates a minor leak from a major one

Most cost guides define severity by the size of the patch. That’s backwards. A leak’s severity is set by three things: how many failure points there are, whether water has reached the structure, and how much roof life is left. The visible wet spot is the least reliable signal of all.

Here’s the breakdown we use on San Diego homes.

FactorMinor leakMajor leak
Failure pointsOne isolated spot (boot, tile, single flashing joint)Multiple spots, or one large failed area
Decking / framingDry, firm woodSoft, spongy, sagging, or visible rot
Roof ageWell within expected lifePast or near end of expected life
UnderlaymentIntact, localized issueFailed across a slope (common on old tile)
Water spreadSmall, contained, stops when rain stopsSpreads, returns, or shows in several rooms
Typical SD cost$250–$900$1,500–$9,000+
Usual fixTargeted repairSection repair, partial reroof, or full replacement

If everything in your situation lands in the left column, you almost certainly have a minor leak and a same-week repair. If two or more land in the right column, treat it as major and get it inspected before the next rain. For the full repair-versus-replace math once severity is known, see our roof repair vs replacement guide.

The four signs that quietly turn a minor leak major

A leak rarely starts major. It starts small and gets ignored, usually because San Diego goes months without rain and the stain dries up between storms. These are the four things that move a cheap fix into expensive territory.

Soft or spongy decking. Press the ceiling near the stain, or have a roofer press the deck from the attic. Firm wood means the water is recent and surface-level. Spongy wood means it’s been wet through more than one season, and the decking may need replacement before any new roofing goes down. This is the single biggest cost multiplier.

More than one wet spot. One drip is a failure point. Two or three drips in different parts of the house usually means the underlayment is at end of life, not that you have three separate punctures. On San Diego’s many concrete and clay tile roofs, the tile lasts 50 years but the felt underneath only lasts 20 to 25, so an old tile roof can leak in several places at once even though the tile looks perfect. That pattern points to a lift-and-relay or replacement, not a patch.

A leak that keeps coming back. If the same spot reappears after a previous repair, the real entry point was never found. Water can enter near a chimney and surface ten feet away down a rafter. A returning leak is a diagnostic failure, not a minor one, and it usually means a more thorough inspection is overdue.

Roof age past the threshold. A leak on a 9-year-old shingle roof is an event. The same leak on a 24-year-old roof is a symptom. Once a roof is past its expected life, fixing one spot just moves the next leak somewhere else. If you’re not sure where your roof stands, our piece on whether a 20-year-old roof is too old walks through the call.

San Diego specifics that change the picture

The cost guides that rank for this query are written for the whole country, so they miss the things that actually matter here.

Rain comes in bursts, so leaks hide. Most of San Diego’s rain falls in a handful of winter storms. A minor leak can sit dry and invisible for eight months, then soak the deck across three back-to-back atmospheric rivers. By the time you see the stain, a leak that was minor in November can be major by February. The dry season is not your friend here. It’s why a stain you noticed last winter and forgot about deserves a look now.

Coastal salt air degrades flashing faster. From the coast through Encinitas, Carlsbad, and Point Loma, salt air corrodes metal flashing and fasteners faster than inland. A flashing leak that would be a clean minor repair in El Cajon can come with rusted, failing metal near the water, which turns it into a larger job.

Tile is everywhere, and it lies about its condition. Spanish-style and tract tile roofs dominate neighborhoods like Carmel Valley, Rancho Bernardo, and Scripps Ranch. Intact-looking tile over failed underlayment is the most common “looks minor, is major” leak we see. Don’t judge a tile roof by the tile.

Permits and HOAs. A true minor repair (one boot, a few tiles) generally needs no permit. A major repair that touches structure, or any reroof, needs a San Diego permit, and many master-planned communities add HOA material and color rules. Factor that into timeline and cost the moment a leak reads as major. Our San Diego roof permit walkthrough covers what triggers one.

What a minor leak actually costs to fix here

These are current San Diego repair ranges by cause, which is more useful than a single “minor vs major” number because the cause is what sets the price.

Leak sourceSeverityTypical SD cost
Pipe boot replacementMinor$250–$500
Cracked or slipped tile (a few)Minor$300–$700
Single flashing joint resealMinor$300–$800
Skylight reseal or new flashingMinor–moderate$400–$1,200
Valley or step flashing sectionModerate$900–$2,500
Decking replacement (per soft area)Major$1,500–$4,000
Tile underlayment lift-and-relay (slope)Major$4,000–$9,000+
Full replacement (old or multi-leak roof)Major$12,000–$30,000+

The honest read: anything in the top half is a minor leak with a same-week repair. The bottom half means water already reached the structure or the roof is at end of life. For a deeper cost breakdown, see our roof leak repair cost guide, and if the leak is dripping right now, our active roof leak first-60-minutes guide covers containment.

How to check it yourself before calling anyone

You can sort minor from major in about fifteen minutes without getting on the roof, which is never worth the risk.

From inside, count the wet spots and note whether they’re in one room or several. Press the ceiling edge of the stain. Firm is good, soft is not. In the attic with a flashlight on a dry day, look for water tracks, dark streaks down the rafters, and damp or crumbling decking. Daylight coming through the deck is an automatic major. From the ground with binoculars, look for missing or slipped tiles, lifted shingles, or rust around flashing. If you see one clear cause, one wet spot, firm wood, and a roof that isn’t old, you very likely have a minor leak. Anything else, get eyes on it before the next storm. Our how to find a roof leak guide goes step by step, and a professional roof leak repair visit confirms it.

Frequently asked questions

Can a minor roof leak become major on its own? Yes, and in San Diego it’s common. A small leak that dries out between winter storms keeps soaking the same wood each rain. Over a season or two that rots the decking, and a $400 fix becomes a $3,000 one. The leak doesn’t grow, but the damage behind it does.

Does the size of the ceiling stain tell me how bad the leak is? No. Water tracks along rafters and decking before it drips, so a small stain can sit under a wide area of wet wood, and a large stain can come from one slow drip that spread sideways. Judge severity by the number of spots, the firmness of the wood, and the roof’s age, not by stain size.

Is a leak around one flashing point minor or major? Usually minor, if the metal is sound and it’s one joint. It moves toward major when coastal salt air has corroded the flashing and fasteners, or when water has been entering for several seasons and reached the deck. A roofer can tell in one visit by checking the metal and the wood behind it.

Why does my tile roof leak in several places when the tiles look fine? Because tile outlives its underlayment. San Diego tile lasts 40 to 50 years, but the felt beneath it fails at 20 to 25. Once that happens, water gets past intact tile in multiple spots at once. That’s a major leak pattern that usually calls for a lift-and-relay, not a patch.

Should I wait until the rainy season to fix a minor leak? No. San Diego’s dry months are the best time to repair, because the roof is dry, crews are available, and you fix it before the storms that turn minor into major. Waiting only gives the next atmospheric river a head start.

When is a leak an emergency versus something that can wait a few days? Active dripping during a storm, water near electrical, a sagging ceiling, or daylight through the deck are emergencies. A dried, single, old stain on a newer roof can wait for a scheduled inspection. When in doubt, treat structure or electrical involvement as urgent.

The bottom line

Don’t let the calm appearance of a small stain decide this for you. Count the spots, press the wood, check the roof’s age. If it’s one isolated, accessible failure on a roof with life left, you have a minor leak and a quick repair. If water has reached the structure, shows in more than one place, or the roof is old, it’s major, and the cheapest move is to confirm it before the next storm rather than after.

If you want a straight answer on which one you’re dealing with, call Top Pro Roofing SD at (858) 925-5546 for a free inspection across San Diego County. We’ll tell you whether it’s a $400 fix or something bigger, and we’ll show you what we found.