Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 5719

Deprecated: Return type of GF_Field::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 84

Deprecated: Return type of GF_Field::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 90

Deprecated: Return type of GF_Field::offsetSet($offset, $data) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 99

Deprecated: Return type of GF_Field::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 108

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the acf domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/serviceheroes/public_html/melbourne/wp-includes/functions.php on line 6260

Deprecated: Creation of dynamic property ACF::$fields is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/fields.php on line 138

Deprecated: Creation of dynamic property acf_loop::$loops is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 28

Deprecated: Creation of dynamic property ACF::$loop is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 269

Deprecated: Creation of dynamic property ACF::$revisions is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/revisions.php on line 397

Deprecated: Creation of dynamic property acf_validation::$errors is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 28

Deprecated: Creation of dynamic property ACF::$validation is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 214

Deprecated: Creation of dynamic property acf_form_customizer::$preview_values is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 28

Deprecated: Creation of dynamic property acf_form_customizer::$preview_fields is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 29

Deprecated: Creation of dynamic property acf_form_customizer::$preview_errors is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 30

Deprecated: Creation of dynamic property ACF::$form_front is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-front.php on line 598

Deprecated: Creation of dynamic property acf_form_widget::$preview_values is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 34

Deprecated: Creation of dynamic property acf_form_widget::$preview_reference is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 35

Deprecated: Creation of dynamic property acf_form_widget::$preview_errors is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 36

Deprecated: dirname(): Passing null to parameter #1 ($path) of type string is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 6057

Deprecated: dirname(): Passing null to parameter #1 ($path) of type string is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 6059

Deprecated: Creation of dynamic property acf_field_oembed::$width is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 31

Deprecated: Creation of dynamic property acf_field_oembed::$height is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 32

Deprecated: Creation of dynamic property acf_field_google_map::$default_values is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-google-map.php on line 33

Deprecated: Creation of dynamic property acf_field__group::$have_rows is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-group.php on line 31

Deprecated: Creation of dynamic property acf_field_clone::$cloning is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 34

Deprecated: Creation of dynamic property acf_field_clone::$have_rows is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 35

Deprecated: Return type of ActionScheduler_DateTime::setTimezone($timezone) should either be compatible with DateTime::setTimezone(DateTimeZone $timezone): DateTime, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/wp-mail-smtp-pro/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php on line 60

Deprecated: Return type of ActionScheduler_DateTime::getOffset() should either be compatible with DateTime::getOffset(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/wp-mail-smtp-pro/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php on line 48

Deprecated: Return type of ActionScheduler_DateTime::getTimestamp() should either be compatible with DateTime::getTimestamp(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/serviceheroes/public_html/melbourne/wp-content/plugins/wp-mail-smtp-pro/vendor/woocommerce/action-scheduler/classes/ActionScheduler_DateTime.php on line 27

Deprecated: dirname(): Passing null to parameter #1 ($path) of type string is deprecated in /home/serviceheroes/public_html/melbourne/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 6092
Why Is My Roof Leaking? | Service Heroes

Why Is My Roof Leaking?

Why Is My Roof Leaking?

Leaky roofs are probably one of the more unpleasant things that a homeowner will have to deal with; especially if they live in a rain heavy part of the country. While it is very easy to tell when you have roof leaking (it is hard to miss the big water marks on the ceiling after all), it is not as easy to identify exactly why a roof is leaking. There are numerous explanations for why a roof might be leaking; so, in order to help people understand why their roof is leaking, we are going to go through some of the more common causes of leaky roofs. These reasons will likely be obvious to contractors or anyone who is experienced in home repair, but for those of you who have no experience with roofing, this will likely be of great use. If your roof is leaking, it is important you call a roof expert right away (we offer roofing services and there are likely many other qualified roofers in your area).

Wear and tear

Probably one of the bigger causes of leaky roofs is Father Time. Over time the materials on a roof will begin to degrade. As the materials degrade, leaks become more common, as the materials are unable to effectively keep out water. There is no guaranteed shelf life when it comes to roofs, some take longer to degrade, some take less time to degrade. Generally a new roof should last for around two decades before it starts to seriously degrade, but it varies on a case by case basis. Roofs that are regularly exposed to harsh weather will degrade faster. Roofs exposed to constant, direct sunlight will likely degrade faster due to the heat wearing away at the tar that keeps the shingles on the roof.

A rusted roof valley

A “roof valley” is that area where two parts of a roof meet, which creates a “v” shape. Metal channels are put in these roof valleys. Roof valleys tend to be very prone to leaking. Because of the slope and location of these roof valleys, a large amount of water tends to run down the metal channels. Naturally this leads to rusting, which then leads to holes and leaks. The situation is made even worse by the fact that leaves and other debris can get stuck in these roof valleys, meaning water can pool in these valleys, which leads to rust developing even faster. Thankfully, this problem is relatively common, and a roofer should be able to get them replaced relatively quickly and easily. In the future, make sure you keep these roof valleys as clean as possible (for example, whenever you clean your gutters, take a moment and clean out the roof valleys if you are able to). Much like roofs, roof valleys have a lifespan of around 2 decades before they need to be replaced.

Damaged tiles or shingles

Roof tiles and shingles are not exactly the most durable thing in the world, and it is very possible that a roof tile or shingle could have been damaged or removed completely. For example, if people are walking around on your roof (say during a routine inspection or because they are doing maintenance work), it is possible that someone may damage a roof tile and not even notice it. Likewise, during a particularly violent wind or rain storm, it is possible that wind can rip loose shingles and tiles completely off. If your roof is leaking, it might be worth grabbing a ladder and seeing if there are any tiles or shingles missing or damaged. Much like rusted roof valleys, damaged shingles and tiles are very common roof issues, so any roofer will be able to fix the problem without much hassle.

Improperly placed gutter or blocked gutter

It is not uncommon to see a house where the top gutter drains onto a lower roof, as you can imagine, this water soaks into the roof, and eventually this will lead to leaks. The solution is pretty simple, get a professional to lower the downspout, so that the water from the gutters is draining into the ground or into another gutter, instead of draining directly onto a lower roof.

Blocked gutters are also another issue that can lead to a leaky roof. A lot of people ignore their gutters, and allow them to be clogged with leaves and other debris. Gutters that are clogged with debris cannot drain effectively, meaning they overflow. This overflowing water can soak into your roof and leak through. The solution here is to just make a habit of cleaning out your gutters, you can also buy gutter guards to prevent debris from clogging your gutters.

Skylights and chimneys

Anytime you get something installed on your roof (like say a skylight or chimney) you are making a leak more likely for a couple of reasons. First off, no matter how well you think the skylight or chimney is installed, there is always the possibility that the seal will fail, allowing water to leak in. With skylights, the main issue is that they do not have the same shelf life as a roof, meaning if you have gotten skylights installed, you need to get them replaced or repaired long before you get your roof serviced. Now, this is not to say that you should avoid having chimneys or skylights installed, rather it is just to warn you that if you do have skylights or chimneys installed, take extra precautions against leaking.

Improperly installed flashings

This applies to both roofs and chimneys. It is very easy for a roofer to mess up when installing the flashings on either a roof or a chimney. If the flashings on your roof or chimney are not properly installed, then it is very likely that you will be experiencing a leak in the near future. Unfortunately, there is nothing the average person can do, you need someone experienced in roofing in order to properly install flashings.