www.networx.com Open in urlscan Pro
34.196.125.178  Public Scan

URL: https://www.networx.com/roofers?hohttpner
Submission: On January 25 via api from US — Scanned from DE

Form analysis 4 forms found in the DOM

Name: frmRequestQuotePOST /lead_process.php?submit

<form action="/lead_process.php?submit" target="_parent" class="form-stages swiper-wrapper service-quote-flow-form safe_submit ng-pristine ng-valid" method="POST" name="frmRequestQuote" data-ss-value="Getting Quotes..." novalidate="novalidate">
  <input type="hidden" name="preference_to" id="preference_to" value="">
  <input type="hidden" name="service" id="service" value="123">
  <input type="hidden" name="cmdSubmitRequest" id="cmdSubmitRequest" value="1">
  <input type="hidden" name="source_id" class="source_id" id="source_id" value="22">
  <input type="hidden" name="tcpa_compliance_text" id="tcpa_compliance_text"
    value="By submitting this form, you are giving your consent to receive phone calls and text messages from Networx Systems, Inc., its <a href='https://www.networx.com/terms-use#third-party' target='_blank' style='color: inherit'>partners</a>, and other service professionals at the phone number you inputted (including wireless number if provided). Contacting you is for the purpose of confirming and scheduling your home improvement project request and multiple contractor bids. You understand that automated phone technology, by voice or text messages, may be used to reach you. Please note that providing consent does not obligate you to purchase or use any product or service.">
  <input type="hidden" name="recaptcha_token" id="recaptcha_token" value="">
  <div class="question-stage swiper-slide first-stage">
    <div class="question-stage-inner animated">
      <h1>Find Trusted Roofers &amp; Get Free Quotes</h1>
      <h2>What is the project location?</h2>
      <div class="zip-form">
        <div class="zip-form-container">
          <input value="" placeholder="Zip Code" maxlength="5" type="tel" class="zip zipcodeUS required main-zip numbers-only" title="Please enter a valid zip code" id="main_zip" name="zip" autocomplete="postal-code">
          <button type="button" class="track-next-question track-next-question-zip track btn blue large check-form btn-next-question first-question btn-disabled" disabled="disabled">Next</button>
        </div>
        <div class="zip-form-footer">
          <span class="bbb-logo"></span>
        </div>
      </div>
    </div>
  </div>
  <!-- ngRepeat: question in questions | orderBy: 'display_order.data_value' -->
  <div ng-repeat="question in questions | orderBy: 'display_order.data_value'" class="question-stage swiper-slide service-needed ng-scope st-first-question" ng-class="{'st-first-question':$first, 'st-last-question':$last}" data-stage="0">
    <div class="question-stage-inner">
      <h3 id="question[342]" class="title-selenium ng-binding" value="342">What is the nature of this project?</h3>
      <div class="answers-wrapper">
        <!-- ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_2223" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_2223" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="2223" data-index="0">
            <span class="outer fl"><span class="inner"></span></span>Completely replace or install new roof </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_2225" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_2225" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="2225" data-index="1">
            <span class="outer fl"><span class="inner"></span></span>Repair existing roof </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_2227" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_2227" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="2227" data-index="2">
            <span class="outer fl"><span class="inner"></span></span>Siding - Install or Repair </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_2229" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_2229" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="2229" data-index="3">
            <span class="outer fl"><span class="inner"></span></span>Gutters </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_2231" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_2231" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="2231" data-index="4">
            <span class="outer fl"><span class="inner"></span></span>Skylights </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_3447" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_3447" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="3447" data-index="5">
            <span class="outer fl"><span class="inner"></span></span>Roof Cleaning </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="342_3449" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_3449" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="3449" data-index="6">
            <span class="outer fl"><span class="inner"></span></span>Roof Snow &amp; Ice Dam Removal </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope last-answer" ng-class="{'last-answer':$last}">
          <label for="342_3451" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="342_3451" name="question[342]" data-question-id="342" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="3451" data-index="7">
            <span class="outer fl"><span class="inner"></span></span>Unsure / Other </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
      </div>
      <div class="stage-footer">
        <button type="button" class="track-prev-question btn-prev-question btn clear selenium-prev-question">Previous</button>
        <button type="button" class="track-next-question btn-next-question btn blue large selenium-next-question" disabled="disabled">Next</button>
      </div>
    </div>
  </div><!-- end ngRepeat: question in questions | orderBy: 'display_order.data_value' -->
  <div ng-repeat="question in questions | orderBy: 'display_order.data_value'" class="question-stage swiper-slide service-needed ng-scope st-last-question" ng-class="{'st-first-question':$first, 'st-last-question':$last}" data-stage="0">
    <div class="question-stage-inner">
      <h3 id="question[581]" class="title-selenium ng-binding" value="581">What kind of location is this?</h3>
      <div class="answers-wrapper">
        <!-- ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope" ng-class="{'last-answer':$last}">
          <label for="581_4285" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="581_4285" name="question[581]" data-question-id="581" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="4285" data-index="0">
            <span class="outer fl"><span class="inner"></span></span>Home / Residence </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
        <div ng-repeat="answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value" class="answer-item ng-scope last-answer" ng-class="{'last-answer':$last}">
          <label for="581_4287" class="nx-radiobox ng-binding">
            <input type="radio" class="lead_question ng-pristine ng-untouched ng-valid" id="581_4287" name="question[581]" data-question-id="581" ng-change="updateQuestions(question, data[question.id.data_value])"
              ng-model="data[question.id.data_value]" value="4287" data-index="1">
            <span class="outer fl"><span class="inner"></span></span>Business </label>
        </div><!-- end ngRepeat: answer in question.answers.data_value | orderBy: 'priority.data_value' track by answer.id.data_value -->
      </div>
      <div class="stage-footer">
        <button type="button" class="track-prev-question btn-prev-question btn clear selenium-prev-question">Previous</button>
        <button type="button" class="track-next-question btn-next-question btn blue large selenium-next-question" disabled="disabled">Next</button>
      </div>
    </div>
  </div><!-- end ngRepeat: question in questions | orderBy: 'display_order.data_value' -->
  <div class="question-stage swiper-slide has-tcpa">
    <div class="question-stage-inner">
      <div class="wrapper">
        <h3>Add details for more exact quotes</h3>
        <textarea name="add_info" id="add_info" placeholder="Type here" cols="30" rows="10"></textarea>
      </div>
      <div class="stage-footer">
        <button type="button" class="track-prev-question btn-prev-question btn clear">Previous</button>
        <button type="button" class="track-next-question track-next-question-text btn-next-question btn blue large selenium-add-info-next-question"> Next </button>
      </div>
    </div>
  </div>
  <div class="question-stage swiper-slide has-tcpa details-stage">
    <div class="question-stage-inner">
      <div class="wrapper">
        <h3 class="heading_subtitle"> Almost Done! </h3>
        <hr>
        <ul class="form-ui-list">
          <li>
            <span class="check_icon"></span><span class="x_icon"></span>
            <div class="dataBlock">
              <input type="text" class="required" placeholder="Full Name" autocomplete="name" maxlength="150" name="f_name" id="f_name" value="">
            </div>
          </li>
          <li class="requiredField" id="quote_more_info">
            <span class="check_icon"></span><span class="x_icon"></span>
            <div class="dataBlock">
              <input type="text" name="more_info" id="more_info">
            </div>
          </li>
          <li class="requiredField"><span class="check_icon"></span><span class="x_icon"></span>
            <div class="dataBlock">
              <input type="tel" class="required phone_mask phone_including_toll_free numbers-only" placeholder="Phone" name="n_phone" id="n_phone" autocomplete="tel-national" value="">
            </div>
          </li>
          <li class="requiredField"><span class="check_icon"></span><span class="x_icon"></span>
            <div class="dataBlock">
              <input type="email" placeholder="Email" class="required email" name="email" id="email" maxlength="150" autocomplete="email">
            </div>
          </li>
          <li>
            <span class="check_icon"></span><span class="x_icon"></span>
            <div class="dataBlock">
              <input type="text" placeholder="Address" id="address" name="address" maxlength="100" autocomplete="address-line1" value="">
            </div>
          </li>
        </ul>
      </div>
      <div class="stage-footer">
        <input type="submit" class="track-next-question track-next-question-info btn blue large" value="Get Free Quotes">
      </div>
      <div class="tcpa-compliance">
        <p>By clicking 'Get Free Quotes' You agree to our <a target="_blank" rel="nofollow" href="https://www.networx.com/privacy">Terms of Use</a> and our <a id="tcpa-consent">TCPA Consent.</a>
          <br>We respect your privacy.
        </p>
        <p id="tcpa-text" style="display: none;"><br>By submitting this form, you are giving your consent to receive phone calls and text messages from Networx Systems, Inc., its
          <a href="https://www.networx.com/terms-use#third-party" target="_blank" style="color: inherit">partners</a>, and other service professionals at the phone number you inputted (including wireless number if provided). Contacting you is for the
          purpose of confirming and scheduling your home improvement project request and multiple contractor bids. You understand that automated phone technology, by voice or text messages, may be used to reach you. Please note that providing consent
          does not obligate you to purchase or use any product or service.</p>
      </div>
    </div>
  </div>
  <input type="hidden" name="xxTrustedFormToken" id="xxTrustedFormToken_0" value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormCertUrl" id="xxTrustedFormCertUrl_0"
    value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormPingUrl" id="xxTrustedFormPingUrl_0"
    value="https://ping.trustedform.com/0.w7P0u6Es5wnIqL20nHKx1EZ9iyC9Y-rq-xqTZkms-XQZUmdWzEkCO1gZoEDi702yW2NFKvmg.rr7xLkjKxugEkbEQLMwcJA.eBUOAHtezElP2s3WF3aHsA">
</form>

Name: frmRequestQuoteGET javascript:void(0)

<form action="javascript:void(0)" method="GET" name="frmRequestQuote" id="" class="get-quote-banner-form get-quote-form disable-safe-submit ng-pristine ng-valid" novalidate="novalidate">
  <input type="hidden" name="source_id" class="source_id" id="source_id" value="22">
  <div class="top-title">Where do you need the Roofer?</div>
  <div class="pos_rel">
    <input type="hidden" name="service" class="service" value="123">
    <input type="hidden" class="service-uri" value="roofers">
  </div>
  <div class="inputs-wrapper">
    <div class="pos_rel">
      <input type="tel" style="width: 100px;" placeholder="Zip Code" name="zip" size="10" maxlength="5" value="" class="float-label main-zip required zipcodeUS" autocomplete="postal-code">
    </div>
    <input type="submit" class="blue-button track-submit-go" value="Find Pros">
  </div>
  <input type="hidden" name="xxTrustedFormToken" id="xxTrustedFormToken_1" value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormCertUrl" id="xxTrustedFormCertUrl_1"
    value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormPingUrl" id="xxTrustedFormPingUrl_1"
    value="https://ping.trustedform.com/0.w7P0u6Es5wnIqL20nHKx1EZ9iyC9Y-rq-xqTZkms-XQZUmdWzEkCO1gZoEDi702yW2NFKvmg.rr7xLkjKxugEkbEQLMwcJA.eBUOAHtezElP2s3WF3aHsA">
</form>

Name: frmRequestQuoteGET javascript:void(0)

<form action="javascript:void(0)" method="GET" name="frmRequestQuote" class="get-quote-form company-form disable-safe-submit ng-pristine ng-valid" novalidate="novalidate">
  <div class="top-title">Get Free Quotes</div>
  <input type="hidden" name="source_id" class="source_id" id="source_id" value="22">
  <div class="estimates-content">
    <ul>
      <select name="service" id="service" style="display:none;">
        <option class="service" value="123" selected="" data-service-uri="roofers"></option>
      </select>
      <li class="requiredField btn-field">
        <input type="tel" style="width: 100px;" name="zip" size="10" maxlength="5" value="" id="zip_code" class="float-label main-zip required zipcodeUS" autocomplete="postal-code">
        <div id="zip_label" class="label zip_code_t" for="zip1">Zip Code</div>
        <input type="submit" class="blue-button track-submit-go" value="Go">
      </li>
    </ul>
    <div class="faded-text">Get quotes from qualified local contractors</div>
  </div>
  <div style="clear:both;"></div>
  <input type="hidden" name="xxTrustedFormToken" id="xxTrustedFormToken_2" value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormCertUrl" id="xxTrustedFormCertUrl_2"
    value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormPingUrl" id="xxTrustedFormPingUrl_2"
    value="https://ping.trustedform.com/0.w7P0u6Es5wnIqL20nHKx1EZ9iyC9Y-rq-xqTZkms-XQZUmdWzEkCO1gZoEDi702yW2NFKvmg.rr7xLkjKxugEkbEQLMwcJA.eBUOAHtezElP2s3WF3aHsA">
</form>

POST #

<form class="acsb-form" data-acsb-search="form" enctype="multipart/form-data" action="#" method="POST"> <input type="text" tabindex="0" name="acsb_search" autocomplete="off" placeholder="Unclear content? Search in dictionary..."
    aria-label="Unclear content? Search in dictionary..."> <i class="acsbi-search"></i> <i class="acsbi-chevron_down"></i> <input type="hidden" name="xxTrustedFormToken" id="xxTrustedFormToken_3"
    value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input type="hidden" name="xxTrustedFormCertUrl" id="xxTrustedFormCertUrl_3" value="https://cert.trustedform.com/747c4b67a477faf4f0d26dec361216732408a273"><input
    type="hidden" name="xxTrustedFormPingUrl" id="xxTrustedFormPingUrl_3" value="https://ping.trustedform.com/0.w7P0u6Es5wnIqL20nHKx1EZ9iyC9Y-rq-xqTZkms-XQZUmdWzEkCO1gZoEDi702yW2NFKvmg.rr7xLkjKxugEkbEQLMwcJA.eBUOAHtezElP2s3WF3aHsA"></form>

Text Content

Use Website In a Screen-Reader Mode
Skip to Content
↵ENTER
Skip to Menu
↵ENTER
Skip to Footer
↵ENTER


Networx
 * Find a Pro
    * Air Conditioning
    * Carpentry
    * Cleaning
    * Concrete
    * Drywall
    * Electrician
    * Fencing
   
    * Flooring
    * Garage Door Installation
    * Garage Door Repair
    * Handyman
    * Heating & Furnace
    * HVAC Contractors
    * Landscaping
   
    * Painting
    * Pest Control
    * Plumbing
    * Remodeling
    * Roofing
    * Tile
   
   
 * Blog
 * Cost Guide
 * Experiences
 * Login
    * Pros Login
    * Homeowner Login
   
   
 * Join as a Pro

0%


FIND TRUSTED ROOFERS & GET FREE QUOTES


WHAT IS THE PROJECT LOCATION?

Next



WHAT IS THE NATURE OF THIS PROJECT?

Completely replace or install new roof
Repair existing roof
Siding - Install or Repair
Gutters
Skylights
Roof Cleaning
Roof Snow & Ice Dam Removal
Unsure / Other
Previous Next


WHAT KIND OF LOCATION IS THIS?

Home / Residence
Business
Previous Next


ADD DETAILS FOR MORE EXACT QUOTES

Previous Next


ALMOST DONE!

--------------------------------------------------------------------------------

 * 
 * 
 * 
 * 
 * 



By clicking 'Get Free Quotes' You agree to our Terms of Use and our TCPA
Consent.
We respect your privacy.


By submitting this form, you are giving your consent to receive phone calls and
text messages from Networx Systems, Inc., its partners, and other service
professionals at the phone number you inputted (including wireless number if
provided). Contacting you is for the purpose of confirming and scheduling your
home improvement project request and multiple contractor bids. You understand
that automated phone technology, by voice or text messages, may be used to reach
you. Please note that providing consent does not obligate you to purchase or use
any product or service.

Where do you need the Roofer?




 * FIND ROOFERS NEAR ME
   
   Enter your zip code and compare qualified licensed local roofers


 * LICENSED ROOFING PROS
   
   Reliable roofers that are reviewed by homeowners and follow our quality code


 * GET FREE ROOFING QUOTES
   
   The roofers nearby will give you free estimates on your roofing job.


FREQUENTLY ASKED QUESTIONS

How Much Does it Cost to Hire a Roofer?



When you're looking to hire a roofer, expect to pay an average of $4500 - $8600
for a roof replacement or about $310 - $1000 for roof repair.

Cost will vary according to factors like:

● Size of your roof and number of roofing squares (1 square = 100² ft) needed to
cover

● Number of stories

● Roof type and pitch

● Roofing material to be used

● Whether the existing roof needs to be removed for a roof replacement (if it's
badly waterlogged or damaged, made of certain materials, or 2 layers thick)

Complexity of the roof installation or repair



What are some common types of roofing jobs that roofers typically perform?



-Replace or install a new roof 

-Existing roof repair 

-Repair or install siding 

-Gutter installation or repair 

-Skylights 

-Roof cleaning 

-Snow & ice dam removal



Can roofers provide a service that would improve a home’s property value?



Yes! Your roof can either decrease or increase home value, depending on its
condition. Missing or cracked roof shingles scare potential buyers. Home buyers
are extremely wary of having to make expensive repairs. It is best to have a
professional roofer assess the condition of your roof. New shingles will change
the look of your house, and there are many shingle styles to choose from.
Although a new roof is a big-ticket item, you can expect to recoup 63% of the
cost. Your roof is an investment that you cannot ignore.



Would you be responsible for providing equipment/materials for this roofers
contractor?



Some roofers will prefer to use their own materials. Usually, the cost to hire a
roofer includes all supplies and equipment.



Can you perform roofing yourself?



If you need to perform a minor repair, like fixing a leak or replacing a few
shingles, you may be able to DIY.  However, this is only advised if you’re
comfortable spending time on the roof and can do so safely.

However, for major repairs that are beyond your expertise or complicated
procedures that require spending long periods of time on the roof, it’s best to
hire an experienced professional from local roofing companies. Additionally, a
roofer should and has the ability to inspect your roof periodically for damage
caused by the elements.



How to find an expert roofer?



The best way to start is by asking around. Get recommendations from family,
friends, and neighbors. Was the price fair? Were they pleased with the results?
Did the contractor guarantee his work, and for how long?

If you need more options, check out reviews online.



What are some recommended questions to ask the roofing contractor before I hire?



Asking these important questions will help you find a top roofing pro in your
area with the right experience and business practices for your needs.

-Are you licensed and insured?

-What kind of work do you do most?

-Will you provide references (for past jobs similar to mine)?

-What does your estimate include?

-What will you guarantee/warranty?




ARTICLES AND TIPS


ICICLES ON YOUR ROOF ARE BAD. HERE’S WHY

Icicles on the roof were a highlight of my childhood winters. The neighborhood
kids thought they were... Read More


HOW TO GET HELP WITH YOUR HOUSE WHILE YOU’RE SOCIAL DISTANCING

Imagine: You’re social distancing and working from home (and coping pretty well
with the chaos)... Read More


HOW TO IMPROVE DOWNSPOUT DRAINAGE

One inch of rainfall drops 623 gallons of water onto the roof of a
1,000-square-foot home -- and through... Read More


WHY CHOOSE A NETWORX ROOFER FOR YOUR UPCOMING ROOFING PROJECT?

It's our mission to provide a superb experience for you by helping you quickly
and easily connect with local professional roofing contractors so that you can
make the best choice for your roofing needs. Whether you need commercial or
residential roofing services, rest assured we will find the right local
contractor for you. 
Every roofer on our site has been screened by us to ensure they are certified
and licensed to perform roofing services with top of the line workmanship,
including roof replacement and roof installation. In order to be listed with us,
our roofing contractors are required to maintain a high level of professionalism
and provide excellent customer service - if we receive any valid negative
feedback about any of our roofers, we will promptly remove them from our site.
If you find yourself asking, “where are local roofing companies near me?”, you
are in luck as we service in the following cities and states!


ROOFING - TOP STATES

Alabama | Arizona | Arkansas | California | Colorado | Connecticut | Delaware
| District Of Columbia | Florida | Georgia | Hawaii | Idaho | Illinois | Indiana
| Iowa | Kansas | Kentucky | Louisiana | Maine | Maryland | Massachusetts
| Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada
| New Hampshire | New Jersey | New Mexico | New York | North Carolina | Ohio
| Oklahoma | Oregon | Pennsylvania | Rhode Island | South Carolina | South
Dakota | Tennessee | Texas | Utah | Vermont | Virginia | Washington | West
Virginia | Wisconsin | Wyoming


ROOFING - TOP CITIES

Austin | Boston | Charlotte | Chicago | Columbus | Dallas | Denver | Detroit
| El Paso | Fort Worth | Houston | Indianapolis | Jacksonville | Los Angeles
| Memphis | Nashville | New York | Philadelphia | Phoenix | Portland | San
Antonio | San Diego | San Francisco | San Jose | Seattle | Washington
Get Free Quotes
   
 * Zip Code

Get quotes from qualified local contractors



 * Affiliate Program
 * How It Works
 * Write a Review
 * Networx Pros Blog
 * Careers
 * About Us
 * Contact us


AS ADVERTISED ON

 * 
 * 
 * 
 * 
 * 
 * 

Are you a pro?

Join us or Sign in

Join us on
 * 
 * 

 * Terms & Conditions |Privacy Policy|Do Not Sell My Info|Accessibility Tools
 * © Copyright 2023 Networx Systems, Inc. All Rights Reserved





English
Accessibility Adjustments
Reset Settings Statement Hide Interface

Choose the right accessibility profile for you
OFF ON
Seizure Safe Profile Clear flashes & reduces color
This profile enables epileptic and seizure prone users to browse safely by
eliminating the risk of seizures that result from flashing or blinking
animations and risky color combinations.
OFF ON
Vision Impaired Profile Enhances website's visuals
This profile adjusts the website, so that it is accessible to the majority of
visual impairments such as Degrading Eyesight, Tunnel Vision, Cataract,
Glaucoma, and others.
OFF ON
ADHD Friendly Profile More focus & fewer distractions
This profile significantly reduces distractions, to help people with ADHD and
Neurodevelopmental disorders browse, read, and focus on the essential elements
of the website more easily.
OFF ON
Cognitive Disability Profile Assists with reading & focusing
This profile provides various assistive features to help users with cognitive
disabilities such as Autism, Dyslexia, CVA, and others, to focus on the
essential elements of the website more easily.
OFF ON
Keyboard Navigation (Motor) Use website with the keyboard
This profile enables motor-impaired persons to operate the website using the
keyboard Tab, Shift+Tab, and the Enter keys. Users can also use shortcuts such
as “M” (menus), “H” (headings), “F” (forms), “B” (buttons), and “G” (graphics)
to jump to specific elements.

Note: This profile prompts automatically for keyboard users.
OFF ON
Blind Users (Screen Reader) Optimize website for screen-readers
This profile adjusts the website to be compatible with screen-readers such as
JAWS, NVDA, VoiceOver, and TalkBack. A screen-reader is software that is
installed on the blind user’s computer and smartphone, and websites should
ensure compatibility with it.

Note: This profile prompts automatically to screen-readers.
Content Adjustments
Content Scaling
Default

Readable Font
Highlight Titles
Highlight Links
Text Magnifier
Adjust Font Sizing
Default

Align Center
Adjust Line Height
Default

Align Left
Adjust Letter Spacing
Default

Align Right
Color Adjustments
Dark Contrast
Light Contrast
High Contrast
High Saturation
Adjust Text Colors
Cancel
Monochrome
Adjust Title Colors
Cancel
Low Saturation
Adjust Background Colors
Cancel
Orientation Adjustments
Mute Sounds
Hide Images
Read Mode
Reading Guide
Useful Links
Select an option Home Header Footer Main Content
Stop Animations
Reading Mask
Highlight Hover
Highlight Focus
Big Black Cursor
Big White Cursor
HIDDEN_ADJUSTMENTS
Keyboard Navigation
Accessible Mode
Screen Reader Adjustments
Read Mode
Web Accessibility By
Learn More
Choose the Interface Language
English
Español
Deutsch
Português
Français
Italiano
עברית
繁體中文
Pусский
عربى
عربى
Nederlands
繁體中文
日本語
Polski
Türk
Accessibility StatementCompliance status

We firmly believe that the internet should be available and accessible to anyone
and are committed to providing a website that is accessible to the broadest
possible audience, regardless of ability.

To fulfill this, we aim to adhere as strictly as possible to the World Wide Web
Consortium’s (W3C) Web Content Accessibility Guidelines 2.1 (WCAG 2.1) at the AA
level. These guidelines explain how to make web content accessible to people
with a wide array of disabilities. Complying with those guidelines helps us
ensure that the website is accessible to blind people, people with motor
impairments, visual impairment, cognitive disabilities, and more.

This website utilizes various technologies that are meant to make it as
accessible as possible at all times. We utilize an accessibility interface that
allows persons with specific disabilities to adjust the website’s UI (user
interface) and design it to their personal needs.

Additionally, the website utilizes an AI-based application that runs in the
background and optimizes its accessibility level constantly. This application
remediates the website’s HTML, adapts its functionality and behavior for
screen-readers used by blind users, and for keyboard functions used by
individuals with motor impairments.

If you wish to contact the website’s owner please use the website's form

Screen-reader and keyboard navigation

Our website implements the ARIA attributes (Accessible Rich Internet
Applications) technique, alongside various behavioral changes, to ensure blind
users visiting with screen-readers can read, comprehend, and enjoy the website’s
functions. As soon as a user with a screen-reader enters your site, they
immediately receive a prompt to enter the Screen-Reader Profile so they can
browse and operate your site effectively. Here’s how our website covers some of
the most important screen-reader requirements:

 1. Screen-reader optimization: we run a process that learns the website’s
    components from top to bottom, to ensure ongoing compliance even when
    updating the website. In this process, we provide screen-readers with
    meaningful data using the ARIA set of attributes. For example, we provide
    accurate form labels; descriptions for actionable icons (social media icons,
    search icons, cart icons, etc.); validation guidance for form inputs;
    element roles such as buttons, menus, modal dialogues (popups), and others. 
    
    Additionally, the background process scans all of the website’s images. It
    provides an accurate and meaningful image-object-recognition-based
    description as an ALT (alternate text) tag for images that are not
    described. It will also extract texts embedded within the image using an OCR
    (optical character recognition) technology. To turn on screen-reader
    adjustments at any time, users need only to press the Alt+1 keyboard
    combination. Screen-reader users also get automatic announcements to turn
    the Screen-reader mode on as soon as they enter the website.
    
    These adjustments are compatible with popular screen readers such as JAWS,
    NVDA, VoiceOver, and TalkBack.
    
    
 2. Keyboard navigation optimization: The background process also adjusts the
    website’s HTML and adds various behaviors using JavaScript code to make the
    website operable by the keyboard. This includes the ability to navigate the
    website using the Tab and Shift+Tab keys, operate dropdowns with the arrow
    keys, close them with Esc, trigger buttons and links using the Enter key,
    navigate between radio and checkbox elements using the arrow keys, and fill
    them in with the Spacebar or Enter key.
    
    Additionally, keyboard users will find content-skip menus available at any
    time by clicking Alt+2, or as the first element of the site while navigating
    with the keyboard. The background process also handles triggered popups by
    moving the keyboard focus towards them as soon as they appear, not allowing
    the focus to drift outside.
    
    Users can also use shortcuts such as “M” (menus), “H” (headings), “F”
    (forms), “B” (buttons), and “G” (graphics) to jump to specific elements.

Disability profiles supported on our website
 * Epilepsy Safe Profile: this profile enables people with epilepsy to safely
   use the website by eliminating the risk of seizures resulting from flashing
   or blinking animations and risky color combinations.
 * Vision Impaired Profile: this profile adjusts the website so that it is
   accessible to the majority of visual impairments such as Degrading Eyesight,
   Tunnel Vision, Cataract, Glaucoma, and others.
 * Cognitive Disability Profile: this profile provides various assistive
   features to help users with cognitive disabilities such as Autism, Dyslexia,
   CVA, and others, to focus on the essential elements more easily.
 * ADHD Friendly Profile: this profile significantly reduces distractions and
   noise to help people with ADHD, and Neurodevelopmental disorders browse,
   read, and focus on the essential elements more easily.
 * Blind Users Profile (Screen-readers): this profile adjusts the website to be
   compatible with screen-readers such as JAWS, NVDA, VoiceOver, and TalkBack. A
   screen-reader is installed on the blind user’s computer, and this site is
   compatible with it.
 * Keyboard Navigation Profile (Motor-Impaired): this profile enables
   motor-impaired persons to operate the website using the keyboard Tab,
   Shift+Tab, and the Enter keys. Users can also use shortcuts such as “M”
   (menus), “H” (headings), “F” (forms), “B” (buttons), and “G” (graphics) to
   jump to specific elements.

Additional UI, design, and readability adjustments
 1. Font adjustments – users can increase and decrease its size, change its
    family (type), adjust the spacing, alignment, line height, and more.
 2. Color adjustments – users can select various color contrast profiles such as
    light, dark, inverted, and monochrome. Additionally, users can swap color
    schemes of titles, texts, and backgrounds with over seven different coloring
    options.
 3. Animations – epileptic users can stop all running animations with the click
    of a button. Animations controlled by the interface include videos, GIFs,
    and CSS flashing transitions.
 4. Content highlighting – users can choose to emphasize essential elements such
    as links and titles. They can also choose to highlight focused or hovered
    elements only.
 5. Audio muting – users with hearing devices may experience headaches or other
    issues due to automatic audio playing. This option lets users mute the
    entire website instantly.
 6. Cognitive disorders – we utilize a search engine linked to Wikipedia and
    Wiktionary, allowing people with cognitive disorders to decipher meanings of
    phrases, initials, slang, and others.
 7. Additional functions – we allow users to change cursor color and size, use a
    printing mode, enable a virtual keyboard, and many other functions.

Assistive technology and browser compatibility

We aim to support as many browsers and assistive technologies as possible, so
our users can choose the best fitting tools for them, with as few limitations as
possible. Therefore, we have worked very hard to be able to support all major
systems that comprise over 95% of the user market share, including Google
Chrome, Mozilla Firefox, Apple Safari, Opera and Microsoft Edge, JAWS, and NVDA
(screen readers), both for Windows and MAC users.

Notes, comments, and feedback

Despite our very best efforts to allow anybody to adjust the website to their
needs, there may still be pages or sections that are not fully accessible, are
in the process of becoming accessible, or are lacking an adequate technological
solution to make them accessible. Still, we are continually improving our
accessibility, adding, updating, improving its options and features, and
developing and adopting new technologies. All this is meant to reach the optimal
level of accessibility following technological advancements. If you wish to
contact the website’s owner, please use the website's form

Hide Accessibility Interface? Please note: If you choose to hide the
accessibility interface, you won't be able to see it anymore, unless you clear
your browsing history and data. Are you sure that you wish to hide the
interface?
Accept Cancel

Continue



Processing the data, please give it a few seconds...
Press Alt+1 for screen-reader mode