epichottubs.com Open in urlscan Pro
34.148.152.154  Public Scan

Submitted URL: https://www.hottubsspassaunas.com/
Effective URL: https://epichottubs.com/hot-tubs/
Submission: On July 23 via api from US — Scanned from CA

Form analysis 4 forms found in the DOM

POST /hot-tubs/#gf_13

<form method="post" enctype="multipart/form-data" target="gform_ajax_frame_13" id="gform_13" action="/hot-tubs/#gf_13" data-formid="13" novalidate="">
  <div class="gform-body gform_body">
    <div id="gform_page_13_1" class="gform_page " data-js="page-field-id-1">
      <div class="gform_page_fields">
        <div id="gform_fields_13" class="gform_fields top_label form_sublabel_above description_below validation_below">
          <div id="field_13_20" class="gfield gfield--type-section gfield--input-type-section gsection field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_13_20">
            <h3 class="gsection_title">What size hot tub are you looking for?</h3>
          </div>
          <fieldset id="field_13_27"
            class="gfield gfield--type-radio gfield--type-choice gfield--input-type-radio gfield--width-full field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_27">
            <legend class="gfield_label gform-field-label">Size</legend>
            <div class="ginput_container ginput_container_radio">
              <div class="gfield_radio" id="input_13_27">
                <div class="gchoice gchoice_13_27_0">
                  <input class="gfield-choice-input" name="input_27" type="radio" value="Oversized (8+ Person)" id="choice_13_27_0" onchange="gformToggleRadioOther( this )">
                  <label for="choice_13_27_0" id="label_13_27_0" class="gform-field-label gform-field-label--type-inline">Oversized (8+ Person)</label>
                </div>
                <div class="gchoice gchoice_13_27_1">
                  <input class="gfield-choice-input" name="input_27" type="radio" value="Large (6-7 Person)" id="choice_13_27_1" onchange="gformToggleRadioOther( this )">
                  <label for="choice_13_27_1" id="label_13_27_1" class="gform-field-label gform-field-label--type-inline">Large (6-7 Person)</label>
                </div>
                <div class="gchoice gchoice_13_27_2">
                  <input class="gfield-choice-input" name="input_27" type="radio" value="Standard (4-5 Person)" id="choice_13_27_2" onchange="gformToggleRadioOther( this )">
                  <label for="choice_13_27_2" id="label_13_27_2" class="gform-field-label gform-field-label--type-inline">Standard (4-5 Person)</label>
                </div>
                <div class="gchoice gchoice_13_27_3">
                  <input class="gfield-choice-input" name="input_27" type="radio" value="Small (2-3 Person)" id="choice_13_27_3" onchange="gformToggleRadioOther( this )">
                  <label for="choice_13_27_3" id="label_13_27_3" class="gform-field-label gform-field-label--type-inline">Small (2-3 Person)</label>
                </div>
                <div class="gchoice gchoice_13_27_4">
                  <input class="gfield-choice-input" name="input_27" type="radio" value="Not Sure" id="choice_13_27_4" onchange="gformToggleRadioOther( this )">
                  <label for="choice_13_27_4" id="label_13_27_4" class="gform-field-label gform-field-label--type-inline">Not Sure</label>
                </div>
              </div>
            </div>
          </fieldset>
        </div>
      </div>
      <div class="gform_page_footer top_label">
        <input type="button" id="gform_next_button_13_17" class="gform_next_button gform-theme-button button" value="Get Quote"
          onclick="jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;2&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); "
          onkeypress="if( event.keyCode == 13 ){ jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;2&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); } ">
      </div>
    </div>
    <div id="gform_page_13_2" class="gform_page" data-js="page-field-id-17" style="display:none;">
      <div class="gform_page_fields">
        <div id="gform_fields_13_2" class="gform_fields top_label form_sublabel_above description_below validation_below">
          <div id="field_13_26" class="gfield gfield--type-section gfield--input-type-section gsection field_sublabel_above gfield--has-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_26">
            <h3 class="gsection_title">What's your Zip Code?</h3>
            <div class="gsection_description" id="gfield_description_13_26">This helps us determine shipping costs.</div>
          </div>
          <fieldset id="field_13_4"
            class="gfield gfield--type-address gfield--input-type-address gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_4">
            <legend class="gfield_label gform-field-label gfield_label_before_complex">Enter Your Zip Code<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></legend>
            <div class="ginput_complex ginput_container has_zip has_country ginput_container_address gform-grid-row" id="input_13_4">
              <input type="hidden" class="gform_hidden" name="input_4.4" id="input_13_4_4" value="North Carolina"><span class="ginput_right address_zip ginput_address_zip gform-grid-col" id="input_13_4_5_container">
                <label for="input_13_4_5" id="input_13_4_5_label" class="gform-field-label gform-field-label--type-sub ">ZIP Code</label>
                <input type="text" name="input_4.5" id="input_13_4_5" value="" aria-required="true" autocomplete="postal-code">
              </span><input type="hidden" class="gform_hidden" name="input_4.6" id="input_13_4_6" value="United States">
              <div class="gf_clear gf_clear_complex"></div>
            </div>
          </fieldset>
        </div>
      </div>
      <div class="gform_page_footer top_label">
        <input type="button" id="gform_previous_button_13_25" class="gform_previous_button gform-theme-button gform-theme-button--secondary button" value="Previous"
          onclick="jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;1&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); "
          onkeypress="if( event.keyCode == 13 ){ jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;1&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); } "> <input type="button" id="gform_next_button_13_25"
          class="gform_next_button gform-theme-button button" value="Get Quote" onclick="jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;3&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); "
          onkeypress="if( event.keyCode == 13 ){ jQuery(&quot;#gform_target_page_number_13&quot;).val(&quot;3&quot;);  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); } ">
      </div>
    </div>
    <div id="gform_page_13_3" class="gform_page" data-js="page-field-id-25" style="display:none;">
      <div class="gform_page_fields">
        <div id="gform_fields_13_3" class="gform_fields top_label form_sublabel_above description_below validation_below">
          <div id="field_13_7" class="gfield gfield--type-section gfield--input-type-section gsection field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_13_7">
            <h3 class="gsection_title">Where should we send you your estimate?</h3>
          </div>
          <fieldset id="field_13_1" class="gfield gfield--type-name gfield--input-type-name gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_1">
            <legend class="gfield_label gform-field-label gfield_label_before_complex">Your Name<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></legend>
            <div class="ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gform-grid-row" id="input_13_1">
              <span id="input_13_1_3_container" class="name_first gform-grid-col gform-grid-col--size-auto">
                <label for="input_13_1_3" class="gform-field-label gform-field-label--type-sub ">First</label>
                <input type="text" name="input_1.3" id="input_13_1_3" value="" aria-required="true" autocomplete="given-name">
              </span>
              <span id="input_13_1_6_container" class="name_last gform-grid-col gform-grid-col--size-auto">
                <label for="input_13_1_6" class="gform-field-label gform-field-label--type-sub ">Last</label>
                <input type="text" name="input_1.6" id="input_13_1_6" value="" aria-required="true" autocomplete="family-name">
              </span>
            </div>
          </fieldset>
          <div id="field_13_2" class="gfield gfield--type-email gfield--input-type-email gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_2"><label class="gfield_label gform-field-label" for="input_13_2">Your Email Address<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label>
            <div class="ginput_container ginput_container_email">
              <input name="input_2" id="input_13_2" type="email" value="" class="large" aria-required="true" aria-invalid="false">
            </div>
          </div>
          <div id="field_13_5" class="gfield gfield--type-phone gfield--input-type-phone gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible"
            data-js-reload="field_13_5"><label class="gfield_label gform-field-label" for="input_13_5">Your Phone<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label>
            <div class="ginput_container ginput_container_phone"><input name="input_5" id="input_13_5" type="tel" value="" class="large" aria-required="true" aria-invalid="false" autocomplete="tel"></div>
          </div>
          <div id="field_13_28" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_above gfield--has-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_13_28"><label
              class="gfield_label gform-field-label" for="input_13_28">Name</label>
            <div class="ginput_container"><input name="input_28" id="input_13_28" type="text" value="" autocomplete="new-password"></div>
            <div class="gfield_description" id="gfield_description_13_28">This field is for validation purposes and should be left unchanged.</div>
          </div>
        </div>
      </div>
      <div class="gform_page_footer top_label"><input type="submit" id="gform_previous_button_13" class="gform_previous_button gform-theme-button gform-theme-button--secondary button" value="Previous"
          onclick="if(window[&quot;gf_submitting_13&quot;]){return false;}  if( !jQuery(&quot;#gform_13&quot;)[0].checkValidity || jQuery(&quot;#gform_13&quot;)[0].checkValidity()){window[&quot;gf_submitting_13&quot;]=true;}  "
          onkeypress="if( event.keyCode == 13 ){ if(window[&quot;gf_submitting_13&quot;]){return false;} if( !jQuery(&quot;#gform_13&quot;)[0].checkValidity || jQuery(&quot;#gform_13&quot;)[0].checkValidity()){window[&quot;gf_submitting_13&quot;]=true;}  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); }">
        <input type="submit" id="gform_submit_button_13" class="gform_button button" value="Send My Quote"
          onclick="if(window[&quot;gf_submitting_13&quot;]){return false;}  if( !jQuery(&quot;#gform_13&quot;)[0].checkValidity || jQuery(&quot;#gform_13&quot;)[0].checkValidity()){window[&quot;gf_submitting_13&quot;]=true;}  "
          onkeypress="if( event.keyCode == 13 ){ if(window[&quot;gf_submitting_13&quot;]){return false;} if( !jQuery(&quot;#gform_13&quot;)[0].checkValidity || jQuery(&quot;#gform_13&quot;)[0].checkValidity()){window[&quot;gf_submitting_13&quot;]=true;}  jQuery(&quot;#gform_13&quot;).trigger(&quot;submit&quot;,[true]); }">
        <input type="hidden" name="gform_ajax" value="form_id=13&amp;title=1&amp;description=&amp;tabindex=0&amp;theme=gravity-theme">
        <input type="hidden" class="gform_hidden" name="is_submit_13" value="1">
        <input type="hidden" class="gform_hidden" name="gform_submit" value="13">
        <input type="hidden" class="gform_hidden" name="gform_unique_id" value="">
        <input type="hidden" class="gform_hidden" name="state_13"
          value="WyJ7XCIyN1wiOltcIjNjNjRjMDcxMWQwMDYxNmM3ZTY4ODVkNWI0ZjYwNTk3XCIsXCI1YzJjMTAxZTFjNGM5NjEzYmY0NDVjMWM0MTBiMTMxOFwiLFwiMTVlNWZlNjA0ZWU1YWRhYTY1NDY1ODdhNjVjOTdmMGRcIixcImQ5YTEzYWU4NTVkZTZlYjYxMzNjZjlhZDE3YTkxZjk2XCIsXCIxNDQ4NDMzOWEzNTBjN2NmNDQxZWM0OGU2OTQwNDcwMVwiXX0iLCI5OTg3YjY0YTg0OTQzMWQ2NjQ2MjMyOTUwZTc3MzMzOSJd">
        <input type="hidden" class="gform_hidden" name="gform_target_page_number_13" id="gform_target_page_number_13" value="2">
        <input type="hidden" class="gform_hidden" name="gform_source_page_number_13" id="gform_source_page_number_13" value="1">
        <input type="hidden" name="gform_field_values" value="">
      </div>
    </div>
  </div>
</form>

POST /hot-tubs/#gf_1

<form method="post" enctype="multipart/form-data" target="gform_ajax_frame_1" id="gform_1" action="/hot-tubs/#gf_1" data-formid="1" novalidate="">
  <div class="gform-body gform_body">
    <div id="gform_fields_1" class="gform_fields top_label form_sublabel_below description_above validation_below">
      <fieldset id="field_1_8" class="gfield gfield--type-name gfield_contains_required field_sublabel_below gfield--no-description field_description_above field_validation_below gfield_visibility_visible" data-js-reload="field_1_8">
        <legend class="gfield_label gform-field-label gfield_label_before_complex">Your Name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></legend>
        <div class="ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gform-grid-row" id="input_1_8">
          <span id="input_1_8_3_container" class="name_first gform-grid-col gform-grid-col--size-auto">
            <input type="text" name="input_8.3" id="input_1_8_3" value="" aria-required="true">
            <label for="input_1_8_3" class="gform-field-label gform-field-label--type-sub ">First Name</label>
          </span>
          <span id="input_1_8_6_container" class="name_last gform-grid-col gform-grid-col--size-auto">
            <input type="text" name="input_8.6" id="input_1_8_6" value="" aria-required="true">
            <label for="input_1_8_6" class="gform-field-label gform-field-label--type-sub ">Last Name</label>
          </span>
        </div>
      </fieldset>
      <div id="field_1_4" class="gfield gfield--type-email gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_1_4">
        <label class="gfield_label gform-field-label" for="input_1_4">Email Address<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label>
        <div class="ginput_container ginput_container_email">
          <input name="input_4" id="input_1_4" type="email" value="" class="large" aria-required="true" aria-invalid="false">
        </div>
      </div>
      <div id="field_1_1" class="gfield gfield--type-text gfield--width-half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_1_1"><label
          class="gfield_label gform-field-label" for="input_1_1">Phone Number</label>
        <div class="ginput_container ginput_container_text"><input name="input_1" id="input_1_1" type="text" value="" class="large" aria-invalid="false"> </div>
      </div>
      <div id="field_1_2" class="gfield gfield--type-textarea field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_1_2"><label
          class="gfield_label gform-field-label" for="input_1_2">Message</label>
        <div class="ginput_container ginput_container_textarea"><textarea name="input_2" id="input_1_2" class="textarea medium" aria-invalid="false" rows="10" cols="50"></textarea></div>
      </div>
      <div id="field_1_9" class="gfield gfield--type-html fs-6 text-center gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_above field_validation_below gfield_visibility_visible"
        data-js-reload="field_1_9">By submitting this form, you are consenting to our <a href="/privacy-policy/">privacy policy</a>.</div>
      <div id="field_1_5" class="gfield gfield--type-hidden gform_hidden field_sublabel_below gfield--no-description field_description_above field_validation_below gfield_visibility_visible" data-js-reload="field_1_5">
        <div class="ginput_container ginput_container_text"><input name="input_5" id="input_1_5" type="hidden" class="gform_hidden" aria-invalid="false" value="https://epichottubs.com/hot-tubs/"></div>
      </div>
      <div id="field_1_6" class="gfield gfield--type-hidden gform_hidden field_sublabel_below gfield--no-description field_description_above field_validation_below gfield_visibility_visible" data-js-reload="field_1_6">
        <div class="ginput_container ginput_container_text"><input name="input_6" id="input_1_6" type="hidden" class="gform_hidden" aria-invalid="false" value=""></div>
      </div>
      <div id="field_1_10" class="gfield gfield--type-hidden gform_hidden field_sublabel_below gfield--no-description field_description_above field_validation_below gfield_visibility_visible" data-js-reload="field_1_10">
        <div class="ginput_container ginput_container_text"><input name="input_10" id="input_1_10" type="hidden" class="gform_hidden" aria-invalid="false" value=""></div>
      </div>
      <div id="field_1_11" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_above field_validation_below gfield_visibility_visible" data-js-reload="field_1_11"><label
          class="gfield_label gform-field-label" for="input_1_11">Comments</label>
        <div class="gfield_description" id="gfield_description_1_11">This field is for validation purposes and should be left unchanged.</div>
        <div class="ginput_container"><input name="input_11" id="input_1_11" type="text" value="" autocomplete="new-password"></div>
      </div>
    </div>
  </div>
  <div class="gform_footer top_label"> <input type="submit" id="gform_submit_button_1" class="gform_button button" value="Submit"
      onclick="if(window[&quot;gf_submitting_1&quot;]){return false;}  if( !jQuery(&quot;#gform_1&quot;)[0].checkValidity || jQuery(&quot;#gform_1&quot;)[0].checkValidity()){window[&quot;gf_submitting_1&quot;]=true;}  "
      onkeypress="if( event.keyCode == 13 ){ if(window[&quot;gf_submitting_1&quot;]){return false;} if( !jQuery(&quot;#gform_1&quot;)[0].checkValidity || jQuery(&quot;#gform_1&quot;)[0].checkValidity()){window[&quot;gf_submitting_1&quot;]=true;}  jQuery(&quot;#gform_1&quot;).trigger(&quot;submit&quot;,[true]); }">
    <input type="hidden" name="gform_ajax" value="form_id=1&amp;title=&amp;description=&amp;tabindex=0&amp;theme=gravity-theme">
    <input type="hidden" class="gform_hidden" name="is_submit_1" value="1">
    <input type="hidden" class="gform_hidden" name="gform_submit" value="1">
    <input type="hidden" class="gform_hidden" name="gform_unique_id" value="">
    <input type="hidden" class="gform_hidden" name="state_1" value="WyJbXSIsImU3M2FkMzUzZDQzMTZlNDk4MTAyNjJmMmMwMDYxZWU3Il0=">
    <input type="hidden" class="gform_hidden" name="gform_target_page_number_1" id="gform_target_page_number_1" value="0">
    <input type="hidden" class="gform_hidden" name="gform_source_page_number_1" id="gform_source_page_number_1" value="1">
    <input type="hidden" name="gform_field_values" value="">
  </div>
</form>

GET /

<form class="relative w-full max-w-md mb-[calc(100vh_/_2)]" action="/" method="get">
  <input class="!border-white focus:outline-blue outline-offset-0" type="text" name="s" id="search-field" placeholder="Search…" value="">
  <input type="hidden" name="post_type" value="product">
  <button class="absolute top-1/2 right-6 -translate-y-1/2" type="submit"><i class="fa-solid fa-magnifying-glass"></i></button>
</form>

POST /hot-tubs/#gf_16

<form method="post" enctype="multipart/form-data" target="gform_ajax_frame_16" id="gform_16" action="/hot-tubs/#gf_16" data-formid="16" novalidate="">
  <div class="gform-body gform_body">
    <div id="gform_fields_16" class="gform_fields top_label form_sublabel_below description_below validation_below">
      <div id="field_16_1" class="gfield gfield--type-text gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_16_1"><label
          class="gfield_label gform-field-label" for="input_16_1">Name<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label>
        <div class="ginput_container ginput_container_text"><input name="input_1" id="input_16_1" type="text" value="" class="large" aria-required="true" aria-invalid="false"> </div>
      </div>
      <div id="field_16_3" class="gfield gfield--type-email gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_16_3"><label
          class="gfield_label gform-field-label" for="input_16_3">Email<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label>
        <div class="ginput_container ginput_container_email">
          <input name="input_3" id="input_16_3" type="email" value="" class="large" aria-required="true" aria-invalid="false">
        </div>
      </div>
      <div id="field_16_4" class="gfield gfield--type-phone field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_16_4"><label
          class="gfield_label gform-field-label" for="input_16_4">Phone</label>
        <div class="ginput_container ginput_container_phone"><input name="input_4" id="input_16_4" type="tel" value="" class="large" aria-invalid="false"></div>
      </div>
      <div id="field_16_5" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below field_validation_below gfield_visibility_visible" data-js-reload="field_16_5"><label
          class="gfield_label gform-field-label" for="input_16_5">Name</label>
        <div class="ginput_container"><input name="input_5" id="input_16_5" type="text" value="" autocomplete="new-password"></div>
        <div class="gfield_description" id="gfield_description_16_5">This field is for validation purposes and should be left unchanged.</div>
      </div>
    </div>
  </div>
  <div class="gform_footer top_label"> <input type="submit" id="gform_submit_button_16" class="gform_button button" value="I Want Discounts!"
      onclick="if(window[&quot;gf_submitting_16&quot;]){return false;}  if( !jQuery(&quot;#gform_16&quot;)[0].checkValidity || jQuery(&quot;#gform_16&quot;)[0].checkValidity()){window[&quot;gf_submitting_16&quot;]=true;}  "
      onkeypress="if( event.keyCode == 13 ){ if(window[&quot;gf_submitting_16&quot;]){return false;} if( !jQuery(&quot;#gform_16&quot;)[0].checkValidity || jQuery(&quot;#gform_16&quot;)[0].checkValidity()){window[&quot;gf_submitting_16&quot;]=true;}  jQuery(&quot;#gform_16&quot;).trigger(&quot;submit&quot;,[true]); }">
    <input type="hidden" name="gform_ajax" value="form_id=16&amp;title=&amp;description=&amp;tabindex=0&amp;theme=gravity-theme">
    <input type="hidden" class="gform_hidden" name="is_submit_16" value="1">
    <input type="hidden" class="gform_hidden" name="gform_submit" value="16">
    <input type="hidden" class="gform_hidden" name="gform_unique_id" value="">
    <input type="hidden" class="gform_hidden" name="state_16" value="WyJbXSIsImU3M2FkMzUzZDQzMTZlNDk4MTAyNjJmMmMwMDYxZWU3Il0=">
    <input type="hidden" class="gform_hidden" name="gform_target_page_number_16" id="gform_target_page_number_16" value="0">
    <input type="hidden" class="gform_hidden" name="gform_source_page_number_16" id="gform_source_page_number_16" value="1">
    <input type="hidden" name="gform_field_values" value="">
  </div>
</form>

Text Content

Epic Hot Tubs & Swim Spas
Hot Tubs + Swim Spas + Saunas in North Carolina
 * Hot Tubs
 * Swim Spas
 * Spa Repair
 * Spa Chemicals
 * Spa Covers
 * Spa Enclosures
 * Concrete Patios
 * Contact
 * 
 * 
 * 

 * Home
 * About
 * Careers
 * Blog
 * Financing
 * Get Started
 * Shop
 * Search
 * Log In

We have hot tubs and swim spas in stock. Local delivery available in a few days.
Raleigh Store
Durham Showroom
Charlotte Store

Hot Tubs In Stock


HOT TUB DEALER IN NORTH CAROLINA

 * The Largest Selection of Hot Tubs in NC
 * Ask About Fast, FREE Local Delivery
 * Three Showrooms Open 7 Days Per Week
 * 0% Financing Available O.A.C

Raleigh Store Durham Store
Charlotte Store


GET A FREE HOT TUB QUOTE


WHAT SIZE HOT TUB ARE YOU LOOKING FOR?

Size
Oversized (8+ Person)
Large (6-7 Person)
Standard (4-5 Person)
Small (2-3 Person)
Not Sure



WHAT'S YOUR ZIP CODE?

This helps us determine shipping costs.
Enter Your Zip Code(Required)
ZIP Code




WHERE SHOULD WE SEND YOU YOUR ESTIMATE?

Your Name(Required)
First Last
Your Email Address(Required)

Your Phone(Required)

Name

This field is for validation purposes and should be left unchanged.

Home » Hot Tubs


BROWSE OUR INCREDIBLE HOT TUB SELECTION

 * Hot tubs in stock and ready to be delivered in just a few days.
 * Ask about free hot tub delivery in your area.


Popular

In Stock

Plug & Play

Luxurious


OUR IN-STOCK HOT TUBS. FREE LOCAL DELIVERY IN A FEW DAYS!

$3,000 OFF

In Stock
Malaga Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.1 x 7.1 x 2.9 ft
86 x 86 x 35 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lugano Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 52 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Hercules Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 914 mm
7.1 x 7.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 45 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Libra Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 914 mm
7.6 x 7.6 x 3 ft
91 x 91 x 36 in
Total Number of Jets: 60 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lima Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.2 x 7.2 x 3 ft
86 x 86 x 36 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Mont Blanc Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 914 mm
7.6 x 7.6 x 3 ft
91 x 91 x 36 in
Total Number of Jets: 78 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Milano Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 1905 x 864 mm
7.1 x 6.2 x 2.8 ft
85 x 75 x 34 in
Total Number of Jets: 36 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Kilamanjaro Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 59 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Oslo Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2022 x 1499 x 790 mm
6.6 x 4.9 x 2.6 ft
79 x 59 x 31 in
Total Number of Jets: 30 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Elbrus Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2362 x 2362 x 940 mm
7.8 x 7.8 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 61 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Mandala Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 46 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Low Inventory!
Atlas Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 43 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Hurry! Only 2 Left!
Iris C Hot Tub
Seating Capacity:
Brand: Everest Spas
Dimensions: 7.2 x 5.1 x 2.7 ft
87 x 62 x 32 in
Total Number of Jets: 77 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Hurry! Only 2 Left!
Nautique Hot Tub
Seating Capacity:
Brand: Dimension One Spas
Dimensions: 7 x 7 x 3 ft
84 x 84 x 36 in
Total Number of Jets: 41 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Hurry! Only 2 Left!
Teide Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 1600 x 2159 x 864 mm
5.2 x 7.1 x 2.8 ft
63 x 85 x 34 in
Total Number of Jets: 32 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Hurry! Only 2 Left!
The Resort Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2159 x 2159 x 914 mm
7.1 x 6.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 50 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Hurry! Only 2 Left!
Twin Palms Hot Tubs
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 1524 x 2096 x 762 mm
5 x 6.9 x 2.5 ft
60 x 82.5 x 30 in
Total Number of Jets: 50 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Hurry! Only 2 Left!
Vienna Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 62 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
2Purfikt Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2120 x 1510 x 1015 mm
7.0 x 5.0 x 3.3 ft
83.5 x 71.5 x 40 in
Total Number of Jets: 23 jets

Please, login to see pricing
or call us for details!

$3,000 OFF
Last Item in Stock!
Apex B Opulence Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2388 x 2388 x 914 mm
7.7 x 7.7 x 3.3 ft
92 X 92 X 40 in
Total Number of Jets: 65 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Last Item in Stock!
Everest Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 68 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
Family Island Oasis Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 2337 x 3353 x 991 mm
7.7 x 11 x 3.3 ft
92 x 132 x 39 in
Total Number of Jets: 63 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
Monte Rosa Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 940 mm
7.6 x 7.6 x 3 ft
91 x 91 x 37 in
Total Number of Jets: 64 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
Pleasure Cove II Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 2337 x 2337 x 991 mm
7.7 x 7.7 x 3.3 ft
92 x 92 x 39 in
Total Number of Jets: 80 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
The Epic Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2286 x 2286 x 914 mm
7.5 x 7.5 x 3 ft
90 x 90 x 36 in
Total Number of Jets: 53 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
V94L Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2388 x 2388 x 914 mm
7.8 x 7.8 x 3 ft
94 x 94 x 36 in
Total Number of Jets: 44 jets

Please, login to see pricing
or call us for details!

$4,000 OFF

Special Order
Cascade II Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 101 x 92 x 47 in
2565 x 2337 x 1194 mm
8.4 x 7.7 x 3.9 ft
Total Number of Jets: 61 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
The Spirit Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2159 x 1676 x 914 mm
7.1 x 5.5 x 3 ft
85 x 66 x 36 in
Total Number of Jets: 32 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
The Summit Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2388 x 2388 x 914 mm
7.8 x 7.8 x 3 ft
94 x 94 x 36 in
Total Number of Jets: 65 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
V94 Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2388 x 2388 x 914 mm
7.8 x 7.8 x 3 ft
94 x 94 x 36 in
Total Number of Jets: 41 jets

Please, login to see pricing
or call us for details!






EACH HOT TUB COMES WITH

Every hot tub needs accessories! We got you covered with our hot tub starter
pack!


COVER


$700+ Value


COVER LIFTER


$250+ Value


STEPS


$125+ Value


STARTER CHEMICALS


$100+ Value


HOT TUBS FOR RELAXATION AND RECREATION

The best hydrotherapy experience possible in North Carolina awaits you with a
hot tub from Epic Hot Tubs. We are your source for top-quality hot tubs that
deliver the utmost relaxation. Massaging jets and an ergonomic design make our
spas the most comfortable and relaxing ones you’ll find.

Whether you’re in the market for a two-person hot tub or a luxurious,
nine-person hot tub, you’ll find our products will help you to de-stress after a
long day or offer a spot to entertain your guests.

We make our hot tubs affordable with financing options available for all people
in North Carolina. When you choose a hot tub from Epic Hot Tubs, expect
high-quality products at extremely fair prices.


IMPROVED SLEEP

Recent studies show that relaxing in a hot tub can actually help with insomnia
and aid in more peaceful sleep.


PAIN RELIEF

The warmth of the water and jet massage help ease back pain, arthritis, and
keeps pressure off of the joints.


STRESS RELIEF

Soaking in a hot tub can bring about a release of tension that helps ease stress
and bring about stress relief.


MUSCLE RELAXATION

The higher temperatures can help with sore muscles from daily activities or
exercise.

Want to learn more? Contact Us!


SHOP HOT TUBS BY THE NUMBER OF LOUNGER


Non Lounger

Single Lounger

Dual Lounger


SINGLE LOUNGER HOT TUBS

$3,000 OFF

In Stock
Malaga Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.1 x 7.1 x 2.9 ft
86 x 86 x 35 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lugano Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 52 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Hercules Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 914 mm
7.1 x 7.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 45 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Milano Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 1905 x 864 mm
7.1 x 6.2 x 2.8 ft
85 x 75 x 34 in
Total Number of Jets: 36 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Kilamanjaro Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 59 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Low Inventory!
Atlas Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 43 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Hurry! Only 2 Left!
Teide Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 1600 x 2159 x 864 mm
5.2 x 7.1 x 2.8 ft
63 x 85 x 34 in
Total Number of Jets: 32 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
2Purfikt Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2120 x 1510 x 1015 mm
7.0 x 5.0 x 3.3 ft
83.5 x 71.5 x 40 in
Total Number of Jets: 23 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
Monte Rosa Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 940 mm
7.6 x 7.6 x 3 ft
91 x 91 x 37 in
Total Number of Jets: 64 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
The Epic Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2286 x 2286 x 914 mm
7.5 x 7.5 x 3 ft
90 x 90 x 36 in
Total Number of Jets: 53 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
V94L Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2388 x 2388 x 914 mm
7.8 x 7.8 x 3 ft
94 x 94 x 36 in
Total Number of Jets: 44 jets

Please, login to see pricing
or call us for details!

$3,000 OFF
Special Order
Apex L Opulence Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2388 x 2388 x 914 mm
7.7 x 7.7 x 3.3 ft
92 X 92 X 40 in
Total Number of Jets: 65 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
Bimini Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 1829 x 1829 x 851 mm
6 x 6 x 2.8 ft
72 x 72 x 33.5 in
Total Number of Jets: 21 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
Bimini P&P Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 1829 x 1829 x 851 mm
6 x 6 x 2.8 ft
72 x 72 x 33.5 in
Total Number of Jets: 21 jets

Please, login to see pricing
or call us for details!

$4,000 OFF
Special Order
Mirage Luxury Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 132 x 92 x 30 (47 a back) in
Total Number of Jets: 65 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
The Spirit Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2159 x 1676 x 914 mm
7.1 x 5.5 x 3 ft
85 x 66 x 36 in
Total Number of Jets: 32 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
V65L Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 1651 x 2134 x 749 mm
5.4 x 7 x 2.5 ft
65 x 84 x 29.5 in
Total Number of Jets: 22 jets

Please, login to see pricing
or call us for details!






SHOP HOT TUBS BY SEATING CAPACITY


2-4 People

5-6 People

7+ People


5-6 PERSON HOT TUBS

$3,000 OFF

In Stock
Malaga Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.1 x 7.1 x 2.9 ft
86 x 86 x 35 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lugano Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 52 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Hercules Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 914 mm
7.1 x 7.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 45 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Milano Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 1905 x 864 mm
7.1 x 6.2 x 2.8 ft
85 x 75 x 34 in
Total Number of Jets: 36 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Kilamanjaro Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 59 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Low Inventory!
Atlas Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 43 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Hurry! Only 2 Left!
The Resort Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2159 x 2159 x 914 mm
7.1 x 6.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 50 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Last Item in Stock!
Everest Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 68 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
Monte Rosa Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 940 mm
7.6 x 7.6 x 3 ft
91 x 91 x 37 in
Total Number of Jets: 64 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
Pleasure Cove II Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 2337 x 2337 x 991 mm
7.7 x 7.7 x 3.3 ft
92 x 92 x 39 in
Total Number of Jets: 80 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Last Item in Stock!
The Epic Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2286 x 2286 x 914 mm
7.5 x 7.5 x 3 ft
90 x 90 x 36 in
Total Number of Jets: 53 jets

Please, login to see pricing
or call us for details!

$3,000 OFF
Special Order
Apex L Opulence Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2388 x 2388 x 914 mm
7.7 x 7.7 x 3.3 ft
92 X 92 X 40 in
Total Number of Jets: 65 jets

Please, login to see pricing
or call us for details!

$5,000 OFF

Special Order
Element B Opulence Hot Tub
Seating Capacity:
Brand: Coast Spas
Dimensions: 2121 x 2121 x 1016 mm
7 x 7 x 3.3 ft
83.5 x 83.5 x 40 in
Total Number of Jets: 55 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
Pleasure Cove III Hot Tub
Seating Capacity:
Brand: Dynasty Spas
Dimensions: 2337 x 2337 x 991 mm
7.7 x 7.7 x 3.3 ft
92 x 92 x 39 in
Total Number of Jets: 80 jets

Please, login to see pricing
or call us for details!

$2,000 OFF
Special Order
V84 Hot Tub
Seating Capacity:
Brand: Marquis Spas
Dimensions: 2134 x 2134 x 914 mm
7 x 7 x 3 ft
84 x 84 x 36 in
Total Number of Jets: 36 jets

Please, login to see pricing
or call us for details!






COVANA AUTOMATIC COVERS

Covana automatic hot covers are the ultimate way to cover your hot tub with a
sleek design.




SHOP HOT TUBS BY BRAND


Dimension One Spas

Everest Spas

Dynasty Spas

Marquis Hot Tubs

Wellis Spa

Coast Spas


WELLIS SPA HOT TUBS

$3,000 OFF

In Stock
Malaga Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.1 x 7.1 x 2.9 ft
86 x 86 x 35 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lugano Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 52 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Hercules Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 914 mm
7.1 x 7.1 x 3 ft
85 x 85 x 36 in
Total Number of Jets: 45 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Libra Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 914 mm
7.6 x 7.6 x 3 ft
91 x 91 x 36 in
Total Number of Jets: 60 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Lima Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2184 x 2184 x 940 mm
7.2 x 7.2 x 3 ft
86 x 86 x 36 in
Total Number of Jets: 40 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Mont Blanc Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 914 mm
7.6 x 7.6 x 3 ft
91 x 91 x 36 in
Total Number of Jets: 78 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Milano Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 1905 x 864 mm
7.1 x 6.2 x 2.8 ft
85 x 75 x 34 in
Total Number of Jets: 36 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Kilamanjaro Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 59 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

In Stock
Oslo Life P&P Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2022 x 1499 x 790 mm
6.6 x 4.9 x 2.6 ft
79 x 59 x 31 in
Total Number of Jets: 30 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Elbrus Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2362 x 2362 x 940 mm
7.8 x 7.8 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 61 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

In Stock
Mandala Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 46 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Low Inventory!
Atlas Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2159 x 2159 x 864 mm
7.1 x 7.1 x 2.8 ft
85 x 85 x 34 in
Total Number of Jets: 43 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Hurry! Only 2 Left!
Olympus Life Party Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 11.6 x 7.6 x 3.3 ft
140 x 91 x 39 in
3537 x 2316 x 1006 mm
Total Number of Jets: 88 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Hurry! Only 2 Left!
Teide Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 1600 x 2159 x 864 mm
5.2 x 7.1 x 2.8 ft
63 x 85 x 34 in
Total Number of Jets: 32 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Hurry! Only 2 Left!
Vienna Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 889 mm
7.6 x 7.6 x 2.9 ft
91 x 91 x 35 in
Total Number of Jets: 62 jets

Please, login to see pricing
or call us for details!

$3,000 OFF

Last Item in Stock!
Everest Life Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2360 x 2360 x 950 mm
7.7 x 7.7 x 3.1 ft
93 x 93 x 37 in
Total Number of Jets: 68 jets

Please, login to see pricing
or call us for details!

$2,000 OFF

Last Item in Stock!
Monte Rosa Hot Tub
Seating Capacity:
Brand: Wellis Spa
Dimensions: 2311 x 2311 x 940 mm
7.6 x 7.6 x 3 ft
91 x 91 x 37 in
Total Number of Jets: 64 jets

Please, login to see pricing
or call us for details!






NEED A CONCRETE PAD OR PATIO?

Contact the team at Epic Hot Tubs to learn about getting a custom concrete patio
for your backyard. Our expert team specializes in traditional and stamped
concrete patios and can even add on to an existing pad.

Concrete patios are perfect for hot tubs, swim spas, saunas or just a space to
hang out.

Learn More About Concrete Patios


WE PROVIDE HOT TUB MAINTENANCE, REPAIR, AND WATER TESTING


HOT TUB REPAIR

If you notice something not right with your current hot tub, let us come take a
look! Our hot tub experts can fix jet pumps, heaters, plumbing issues and more.


HOT TUB MAINTENANCE

Performing hot tub maintenance has never been easier! With Epic Hot Tubs’ water
treatment & maintenance packages, you’ll never have to break a sweat. Keep your
water safe, healthy, and clean 365 days a year!


HOT TUB WATER TESTING

Bring in a sample of water to one of our stores and get a water report within
minutes. We’ll provide a report and recommendations for chemicals and balancers
to add.


TRUST EPIC FOR HIGH QUALITY HOT TUBS

Epic Hot Tubs is the leading provider of hot tubs in the NC area with showrooms
in Raleigh, Durham, and Charlotte. We have a wide selection of hot tubs that are
perfect for any backyard.

Our hot tubs are built to last, so you can enjoy them for years to come. In
addition, we offer a variety of customization options to make your hot tub truly
your own.

Request a Consultation


HOT TUBS FOR THE WHOLE FAMILY TO ENJOY!

A hot tub your whole family can enjoy!

Create a safe, fun and relaxing oasis for your family in your own backyard with
one of our hot tubs! Spend quality time with the entire family or enjoy a
romantic experience with your significant other at any time of the day or night.


REJUVENATING MASSAGE JETS!

Your hot tub should be a place where you can relax and escape the stresses of
daily life. That’s why we only use the best jet technology in our hot tubs and
spas. Our jets are easy to adjust, so you can find the perfect setting for your
needs. Whether you’re looking for a relaxing wave or a deep massage, we have a
wide variety of jets to choose from. Our therapy jets, pulse jets, and pillow
jets offer a unique hydrotherapy experience in every seat. So come and find the
perfect hot tub for you today!


AMAZING HEALTH BENEFITS

Hot tubs provide a number of health benefits for you and your family. The hot
water and jets help to relax your muscles, reduce pain, relieve stiffness and
improve circulation! As a result of continued hot tub use, you and your family
can enjoy other surprising side-effects such as better sleep quality and a
strengthened immune system.


FREQUENTLY ASKED QUESTIONS

Do I need an electrician to install my hot tub?

It depends. “Plug and Play” hot tubs run on 110 V and can simply be plugged into
a household outlet. However, 240 V tubs require an electrician for installation.

How often do the filters need to be changed?

The size of the filter impacts how often you should change your filters. Smaller
filters may need to be replaced every 3-4 months, whereas larger filters could
last more than a year.

How can a hot tub improve my lifestyle?

Using a hot tub can provide many physical benefits such as relieving muscle and
joint pain. It can also improve your mental well being by giving you time to
distress.

How much does it cost to run a hot tub on a monthly basis?

While this answer can vary depending on weather, location, size of tub and
chemical regimen, most experts say you can expect to spend on average $1 per day
on your hot tub.

Can you install add-ons like Wi-Fi controls and speakers?

Yes, we can install various add-ons to your hot tub! Speak with your hot tub
consultant to learn more about what we offer.


EPIC HOT TUBS SERVICE AREAS


RALEIGH STORE

 * Apex, NC
 * Asheboro, NC
 * Cary, NC
 * Clayton, NC
 * Emerald Isle, NC
 * Fayetteville, NC
 * Fuquay-Varina, NC
 * Garner, NC
 * Goldsboro, NC
 * Hampstead, NC
 * Holly Springs, NC
 * Jacksonville, NC
 * Lillington, NC
 * Middlesex, NC
 * Morrisville, NC

 * Pinehurst, NC
 * Pittsboro, NC
 * Rocky Point, NC
 * Sanford, NC
 * Selma, NC
 * Smithfield, NC
 * Sneads Ferry, NC
 * Southern Pines, NC
 * Topsail Island, NC
 * Wake Forest, NC
 * Wendell, NC
 * Wilmington, NC
 * Youngsville, NC
 * Zebulon, NC


DURHAM STORE

 * Burlington, NC
 * Butner, NC
 * Caldwell, NC
 * Chapel Hill, NC
 * Clarksville, VA
 * Creedmoor, NC
 * Danville, VA
 * Eden, NC
 * Graham, NC
 * Greensboro, NC
 * Henderson, NC
 * Hillsborough, NC

 * Hurdle Mills, NC
 * Hyco Lake, NC
 * Mebane, NC
 * Oxford, NC
 * Prospect Hill, NC
 * Reidsville, NC
 * Roxboro, NC
 * Rougemont, NC
 * Winston-Salem, NC
 * Whitsett, NC
 * Yanceyville, NC


CHARLOTTE STORE

 * Belmont, NC
 * Concord, NC
 * Cornelius, NC
 * Denver, NC
 * Gastonia, NC
 * Harrisburg, NC
 * Huntersville, NC
 * Kannapolis, NC
 * Lake Norman, NC

 * Lake Wylie, NC
 * Matthews, NC
 * Mooresville, NC
 * Mountain Island, NC
 * Mt Holly, NC
 * Rock Hill, NC
 * Shelby, NC
 * Tega Cay, SC
 * York, SC


HAVE A QUESTION BEFORE BUYING A HOT TUB?

Ask About Free Delivery to Raleigh, NC and Other Hot Tub Deals!

Your Name*
First Name Last Name
Email Address*

Phone Number

Message

By submitting this form, you are consenting to our privacy policy.



Comments
This field is for validation purposes and should be left unchanged.



 * Hot Tubs
 * Swim Spas
 * Spa Covers
 * Spa Enclosures
 * Spa Chemicals
 * Saunas
 * Concrete Patios


 * Hot Tubs in Stock
 * Hot Tub Repair
 * Spa Water Care
 * Financing Options
 * Return and Refund Policy
 * Affiliate Program




Visit Our Retail Locations Across North Carolina

Raleigh Spa Store
Epic Hot Tubs & Swim Spas Store
4205 Wake Forest Road
Raleigh, NC 27609
Closed. Opens at 10:00 am

Monday 10:00 am  –  6:00 pm Tuesday 10:00 am  –  6:00 pm Wednesday 10:00 am  – 
6:00 pm Thursday 10:00 am  –  6:00 pm Friday 10:00 am  –  6:00 pm Saturday 10:00
am  –  6:00 pm Sunday 12:00 pm  –  5:00 pm

919-444-8500
Google Rating
4.9

Based on 68 reviews
Shop in This Store
Durham Spa Showroom
Epic Hot Tubs & Swim Spas Showroom
5032 Guess Road
Durham, NC 27712
Closed. Opens at 10:00 am

Monday 10:00 am  –  6:00 pm Tuesday 10:00 am  –  6:00 pm Wednesday 10:00 am  – 
6:00 pm Thursday 10:00 am  –  6:00 pm Friday 10:00 am  –  6:00 pm Saturday 10:00
am  –  6:00 pm Sunday Closed

919-444-8080
Google Rating
5.0

Based on 14 reviews
Epic Hot Tubs & Swim Spas Showroom
5.0

review us onSee all reviews
×

Gary Addison
1711053768

Karen Jedrzynski
1709832363

Whenever our water is cloudy these guys can fix it!
Matthew Conner
1708466611

I have been saving up for years for a hot tub, and Devin made this an excellent
experience. He listened to what my family's needs were and directed me to a tub
that we have really enjoyed. When my electrician was having trouble getting the
permit finished, I called, and the man who answered had never met me but
remembered my name on an order and was able to immediately provide the documents
that my electrician needed. I am incredibly satisfied with all of their service.
Brandon Wyche
1699895298

We worked with Mike at the Durham store. Mike was great! He was very friendly
and informative while he answered all of our questions. We never felt rushed or
pressured.There was a good amount of stock in the store for us to check out. We
spent time climbing in and out of all the tubs and “kicking the tires” so to
speak.Mike stuck with us all the way through the delivery of our tub and helped
us to work through the logistics. He continued to answer all of our questions
after the sale. Our tub was delivered in a timely manner and was placed exactly
where we wanted.Overall, we are highly satisfied with the products and services
provided by Epic and the team! Highly recommend.
Stewart Pidaso
1696607279

Went to several hot tub stores before going to see these guys. The way Devin was
willing to work with us on making sure we had everything we needed really showed
that he was willing to go the extra mile for customer care and service. He even
sent us instructional videos to walk us through getting set up. With quality
service, fast delivery times and great deals on hot tubs, I definitely recommend
going to Epic.
Mark S.
1685583621

We couldn't be happier to bubble at our own home!We made the jump and discovered
Epic as a Wellis dealer. Devin has been great every step of the way. He's made
sure our buying experience was smooth and efficient from advice on site prep,
delivery coordination and even operation post-delivery.I'm glad we found them
for such a big purchase and I would emphatically recommend them to anyone
looking for one of the brands they carry.Bubble on, good friends!
Peter Holsapple
1683993350

We had a great experience purchasing our hot tub from Devin at Epic Hot Tubs in
Durham. He was a good salesperson, and he came over to our home once the tub was
delivered this morning to give us the information on use and maintenance of the
tub. Highly recommended!
Jordan
1683296889

Steve Carpenter
1677012459

In store was great. Delivery went very well and their tech reconnected power to
the new tub. A little disappointed that we have wait four days to get chemicals
calculated and installed but we'll see how that goes. So far it's good.
Shannon Stewart
1675186608

Devin was great! Very knowledgeable, answered all of my questions! I will be
returning to do business with him!
Chris Falcon
1675186602

Devin provided the best hot tub service I could’ve asked for. Definitely gonna
recommend to friends and family.
Steven McDaniel
1674836671

Stopped in and saw Devin and he was great and knowledgeable! I will be coming
back to buy my tub from him very soon!!
Phil Riley
1670875239

These guys are he best!
Aidil Ortiz
1666446986

Everyone here is so friendly. Promptly answer questions and as hot tub users
themselves give you all kinds of advice to support the best choice for YOU so
you are happy with your experience. Delivery was a breeze because everyone
stayed in contact to be clear about the truck's arrival even when the schedule
changed because of the storm. There isn't anyone on the team that didn't hold a
high standard of customer service and knowledge. I especially thank Manny for
going out of his way to meet me at the Durham location to show me hot tubs that
are available right now.

Shop in This Store
Charlotte Spa Store
Epic Hot Tubs & Swim Spas Store
618 N Polk Street
Pineville, NC 28134
Closed. Opens at 10:00 am

Monday 10:00 am  –  6:00 pm Tuesday 10:00 am  –  6:00 pm Wednesday 10:00 am  – 
6:00 pm Thursday 10:00 am  –  6:00 pm Friday 10:00 am  –  6:00 pm Saturday 10:00
am  –  6:00 pm Sunday 12:00 pm  –  5:00 pm

704-242-0000
Google Rating
4.7

Based on 14 reviews
Epic Hot Tubs & Swim Spas of Pineville
4.7

review us onSee all reviews
×

MATTHEW ANTONE
1719282303

Tisha went above and beyond to answer all our questions even after hours. We
enjoy our swim spa very much and would highly recommend Epic Hot Tub & Spas to
everyone.
Amanda Wyatt
1718143377

Tisha was the best!! She answered all of our questions and made sure we had
everything we needed. She followed up after delivery to make sure our experience
was what we expected. I highly recommend this place to everyone I know!
Jess Garcia
1713481637

Rude salesman. Arrogant and pushy. Will try to shove his product down your
throat.
Richard Powell
1710453240

KAitlyn came out and showed us how to treat my hot tub. She also showed us how
to set up Bluetooth and play gospel music.
Mika Sinclair
1707737426

Kaitlyn is awesome!! She was very knowledgeable about the swim spas. We had many
questions and she answered all of them. She was very patient with us while we
decided which swim spa would be the best for us. We are just waiting for the
delivery this week!! Looking forward to enjoying our new swim spa!! Thank you
fir all you did, Kaitlyn!!
Tamika Johnson
1707012367

Thank you Kaitlyn for coming out to help balance out our swim spa.You have
helped and answered all my questions related to purchasing to set-up. We can now
enjoy our swim spa!
Tom Pagani
1706836311

What a wonderful experience. I meet Kaitlyn at the Epic Showroom and she was so
professional and patient with many questions. Very educational and explained
each option. No pressure. Not salesy. Bought the Hercules the next day. Delivery
team was right on time , no damage to my yards or the tub. The crew was
professional and worked with me to get the perfect set-up. Kaitlyn has followed
up and has been quick to respond to my questions being a first-time owner. Love
my new Epic Hot Tub. Highly recommend!
Melissa
1705418679

I stopped in the other day to take a look around, and wow!! Such a nice
showroom, you definitely get to see so many options in person before you buy.
Kaitlyn showed me around and was really knowledgeable and helpful. Whether you
want a replacement or want to purchase for the first time, she really knows her
stuff and can help you with either!! :)
Tommy Sherwood
1705177594

Alexis Hall
1694266676

I spoke to the Kaitlyn about a swim spa. She went above and beyond to help me
figure out what was best for me. She walked me through some basics of chemical
maintenance too. This experience was above and beyond! Can't wait to have this
project finished 💫⭐️⭐️10/10⭐️⭐️💫
George Navarro
1694108889

Hey just wanna say I came in to epic hot tubs and I got to talk to the manager
she made me feel welcomed and very professional she was very knowledgeable and
was able to answer my questions that I had on the hot tubs even though I did not
make a purchase right now I definitely will be back thank you
Jessica Ellen
1694106169

I came in last week for my first time to get some information on hot tubs.
Kaitlyn was able to answer all of my concerns and then some. Can't wait for my
tub!
Nicole Wilson
1694106023

I stopped in and spoke with Kaitlyn, she was so friendly, knowledgeable, and
professional. Although I'm not in a position to buy at the moment I KNOW exactly
where I'm going to buy my spa when I'm able to. Thank you so much!
Jordan
1688739858


Shop in This Store
Spa Repair in NC
Click for details!
Copyright © 2024 Epic Hot Tubs & Swim Spas - All rights reserved. | Sitemap |
Privacy Policy
Web Design + Digital Marketing by TheeDigital
 * Hot Tubs
 * Swim Spas
 * Spa Covers
 * Spa Enclosures
 * Spa Chemicals
 * Spa Repair

 * About
 * Get Started
 * Career Opportunities
 * Financing
 * Warranties
 * Shop
 * My Account
 * My Cart
 * Blog
 * Contact




EPIC PRIME DAY SALES EVENT

Sale going on now!
 * Deals on Dozens of In-Stock Spas
 * Free White Glove Delivery
 * Free Steps, Cover, Cover Lifter, & Starter Chemicals

Name(Required)

Email(Required)

Phone

Name

This field is for validation purposes and should be left unchanged.