By providing your contact information, you consent to be contacted by Anytime Fitness, LLC, its affiliates, master franchisees and/or its franchisees and their authorized designees, through email, telephone, text message, or by other means, some of which may be from an automated service, as well as any other communication described in our Privacy Policy, which can be found at: https://www.anytimefitness.com/privacy/. For mobile messaging, message and data rates apply and consent is not required to become a member. Data collected will be sent outside your jurisdiction and to the United States and will be governed by our Privacy Policy, as it may be updated or amended. Full terms and conditions can be found at: www.anytimefitness.com or your local Anytime Fitness club.
`,t.innerHTML="TAKE ADVANTAGE TODAY. JOIN AT THE GYM."))):(t=document.querySelector("div.form-body h3"),e=document.querySelector("div[data-join-online-promo-plan-url], li.active[data-join-online-promo-plan-url]"),e&&(o=e.getAttribute("data-join-online-promo-plan-url"),e&&!document.querySelector(".join-online-container")&&(document.querySelector(".step3-content").innerHTML+=`\n
\n
\n
Join Online to Get Started Today
\n
Complete your membership signup in minutes—right now.
`,t.innerHTML="TAKE ADVANTAGE TODAY. JOIN AT THE GYM."))),console.log("you are in the test")})),clearInterval(window.vwoInterval1734538474))}),300);}catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_736710_453_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1736202446197"]');
el.revertContentOp().remove();
} catch(e) {console.error(e)}
try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1736202446198"]')).remove();
} catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, GL_736710_453_pre:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){try{!function(){try{var e=function(e){return Object.keys(e).find((function(e){return e.startsWith("__reactInternalInstance$")||e.startsWith("__reactFiber$")}))},n=function(e,n){if(e&&n)return e[n]},t=function(e,n,t){var i=(i=e.nodeName)&&i.toLowerCase();n.stateNode=e,n.child=null,n.tag=e.nodeType===Node.ELEMENT_NODE?5:6,n.type&&(n.type=n.elementType="vwo-"+i),n.alternate&&(n.alternate.stateNode=e),e[t]=n},i=function(e,n){var t=Date.now();!function i(){var l=Object.keys(n).find((function(e){return e.startsWith("__reactProps$")}))||"",r=Date.now();if(l&&n[l])switch(e.name){case"href":n[l].href=e.value;break;case"onClick":n[l].onClick&&delete n[l].onClick;break;case"onChange":n[l].onChange&&n[l].onChange({target:n})}l||3e3 if (window.vwoInterval1733956191) {\n clearInterval(window.vwoInterval1733956191);\n}\nwindow.vwoInterval1733956191 = setInterval(function () {\n if (vwo_$('footer').length) { // ## Or whatever element you want to check for the presence.\n /* CUSTOM CODE */\n vwo_$(document).ready(function ($) {\n vwo_$(\"main\").vwoCss({\"visibility\":\"hidden !important\"});\n // Global Step Actions\n let form = document.querySelector('section.form');\n if (form) form.style.background = \"white\";\n let firstBridge = document.querySelector('.bridge');\n if (firstBridge) firstBridge.style.background = \"#6E38D5\";\n let oldAccountSpan = document.querySelector('.step-header .text-large span');\n let cityDifferentiator = document.querySelector('.nav li:first-child a');\n if (oldAccountSpan) oldAccountSpan = oldAccountSpan.textContent;\n const oldAccountHeading = document.querySelector('.step-header');\n if (oldAccountHeading) oldAccountHeading.innerHTML = `${cityDifferentiator.textContent}
Join Now
`;\n const iconCheckElements = document.querySelectorAll(\".step-label .icon-check\");\n iconCheckElements.forEach((icon, index) => {\n icon.textContent = `${index + 1}`;\n icon.classList.remove('icon-check');\n });\n let bridgeSpans = document.querySelectorAll(\".bridge\");\n let newBridgeCheck = document.querySelector(\".new-bridge\");\n !newBridgeCheck && bridgeSpans.forEach((bridgeSpan) => {\n let newBridgeSpan = document.createElement(\"span\");\n newBridgeSpan.classList.add('bridge', 'new-bridge');\n bridgeSpan.parentNode.insertBefore(newBridgeSpan, bridgeSpan.nextSibling);\n });\n\n let currentUrl = window.location.href;\n // Disclosure\n if (currentUrl.toLowerCase().includes(\"plans\")) {\n let labelElement = document.querySelector('label[for=\"phoneNumber\"]');\n if (labelElement) labelElement.innerHTML = 'Mobile Phone Number*';\n if (vwo_$('footer.signup .disclosure').length <= 0) {\n vwo_$('footer').prepend(\n `
\n
Terms & Conditions
\n
By providing your contact information, you consent to be contacted by Anytime Fitness, LLC, its affiliates, master franchisees and/or its franchisees and their authorized designees, through email, telephone, text message, or by other means, some of which may be from an automated service, as well as any other communication described in our Privacy Policy. For mobile messaging, message and data rates apply and consent is not required to become a member. Data collected will be sent outside your jurisdiction and to the United States and will be governed by our Privacy Policy, as it may be updated or amended. Full terms and conditions can be found at: www.anytimefitness.com or your local Anytime Fitness club.\n
\n
For California Residents
\n
Please review if you are a California resident, and to comply with Section 1798.100(b) of the California Consumer Privacy Act. For information regarding the categories of personal information collected about you, and the purposes for which your information will be used, please visit Anytime Fitness, LLC’s Privacy Notice for California Residents.
`\n );\n }\n\n vwo_$('footer.signup.forms').css('padding', '0 0 4rem');\n }\n\n\n // Account\n if (currentUrl.toLowerCase().includes(\"account\")) {\n /* EDITELEMENT */\n vwo_$(\".form-headline\").html(\"Create Your Account\");\n /* REMOVE */\n vwo_$(\".btn-clear\").vwoCss({ \"display\": \"none !important\" });\n }\n\n // Address\n if (currentUrl.toLowerCase().includes(\"address\")) {\n /* EDITELEMENT */\n vwo_$(\".form-headline\").html(\"Enter Address\");\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 3 bridge spans and change their background color\n for (let i = 0; i < 3 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n if (vwo_$('.margin-bottom').length <= 0) {\n vwo_$('.form-header').append('
* Indicates a required field
');\n }\n }\n\n // Review\n if (currentUrl.toLowerCase().includes(\"review\")) {\n vwo_$(\".form-headline\").html(\"Review Your Plan\");\n let elements = document.querySelectorAll('.display-plans .item');\n vwo_$(\".display-plans .item\").vwoCss({ \"box-shadow\": \"none\", \"border\": \"1px solid #707070\", \"border-radius\": \"8px\" });\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 5 bridge spans and change their background color\n for (let i = 0; i < 5 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n document.querySelectorAll('h4 br').forEach(function (brElement) {\n brElement.remove();\n });\n document.querySelectorAll('p.disclosure').forEach(function (paragraph) {\n if (paragraph.innerHTML.trim() === 'You will have access to over 4,000 Anytime Fitness clubs worldwide! How cool is that?') {\n paragraph.textContent = paragraph.textContent.replace('4,000', '5,000');\n }\n });\n /* EDITELEMENT */\n vwo_$(\".bod > ul:nth-of-type(1) > li:nth-of-type(4)\").vwoCss({ \"border-bottom-style\": \"none !important\" });\n }\n\n // Terms\n if (currentUrl.toLowerCase().includes(\"terms\")) {\n vwo_$(\".form-headline\").html(\"Terms & Conditions\");\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 7 bridge spans and change their background color\n for (let i = 0; i < 7 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n // Select the first paragraph element\n const firstParagraph = document.querySelector('.terms-segment p');\n\n // Select the first child paragraph within the first paragraph element\n const firstChildParagraph = firstParagraph.querySelector('p');\n\n // Remove the tags from the first child paragraph\n const strongTags = firstChildParagraph.querySelectorAll('strong');\n strongTags.forEach(tag => tag.outerHTML = tag.innerHTML);\n\n // Check if you need to replace the content without the tags inside the first paragraph child\n const searchText = \"MEMBERS’ RIGHT TO CANCEL:\";\n const textContent = firstChildParagraph.textContent;\n const index = textContent.indexOf(searchText);\n\n if (index !== -1) {\n const strongText = textContent.substring(index, index + searchText.length);\n const newHTML = textContent.replace(strongText, `${strongText}`);\n\n firstChildParagraph.innerHTML = newHTML;\n }\n }\n\n // Agreement Actions on Terms and Success pages\n const download = document.querySelectorAll('span.icon.icon-cloud-download');\n if (download) download.forEach(spanElement => {\n // Create a new SVG element\n const svgElement = document.createElement('svg');\n svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgElement.setAttribute('class', 'h-5 w-5');\n svgElement.setAttribute('viewBox', '0 0 20 20');\n svgElement.setAttribute('fill', 'currentColor');\n svgElement.setAttribute('height', '20px'); // Set height to 20px\n svgElement.setAttribute('width', '20px'); // Set width to 20px\n spanElement.parentNode.innerHTML = ``;\n });\n const printer = document.querySelectorAll('span.icon.icon-print2');\n if (printer) printer.forEach(spanElement => {\n // Create a new SVG element\n const svgElement = document.createElement('svg');\n svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgElement.setAttribute('class', 'h-5 w-5');\n svgElement.setAttribute('viewBox', '0 0 20 20');\n svgElement.setAttribute('fill', 'currentColor');\n svgElement.setAttribute('height', '20px'); // Set height to 20px\n svgElement.setAttribute('width', '20px'); // Set width to 20px\n svgElement.innerHTML = `\n \n `;\n spanElement.parentNode.innerHTML = ``;\n });\n let anchorElements = document.querySelectorAll('.agreement-actions a');\n if (anchorElements) anchorElements.forEach(anchorElement => {\n anchorElement.setAttribute('href', 'javascript:;');\n });\n\n // Billing\n if (currentUrl.toLowerCase().includes(\"billing\")) {\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 9 bridge spans and change their background color\n for (let i = 0; i < 9 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n vwo_$(\".form-headline\").html(\"Payment\");\n vwo_$('.form-headline').css('text-align', 'left');\n if (vwo_$(\"#billing .secure-payment\").length <= 0) {\n vwo_$(\"#billing .icon-lock.pull-left\").append(`
Secure Payment
`);\n }\n vwo_$(\"#billing .icon-lock.pull-left\").each(function () {\n var destP = vwo_$(\"#main\"),\n dest = vwo_$(\"#abcPayPage\");\n if (dest.length)\n dest.before(this);\n else\n destP.append(this);\n });\n vwo_$(\"#billing p.text-left:not(.disclosure)\").each(function () {\n var dest = vwo_$(\"#abcPayPage\");\n if (dest.length)\n vwo_$(\"#abcPayPage\").before(this);\n this.classList.add(\"mb-0\", \"mb-lg-3\", \"pb-4\");\n });\n // Select the first element to be wrapped\n var firstElement = document.querySelector('#billing .icon-lock.pull-left');\n\n // Select the second element to be wrapped\n var secondElement = document.querySelector('#billing p.text-left:not(.disclosure)');\n\n // Create a new div element with the class \"bg-light-gray\"\n var divElement = document.createElement('div');\n divElement.className = 'bg-dark-purple mx-auto';\n if (!vwo_$('.bg-dark-purple.mx-auto').length) {\n // Insert the created div element before the first element\n firstElement.parentNode.insertBefore(divElement, firstElement);\n\n // Move the first to the newly created div\n divElement.appendChild(firstElement);\n\n // Move the second element inside the newly created div\n divElement.appendChild(secondElement);\n }\n let container = document.querySelector('.form-container.form-width-sml:nth-of-type(1)');\n\n // Select all the ` ` elements inside the container\n let brElements = container.querySelectorAll('br');\n\n // Determine the number of ` ` elements to remove\n let elementsToRemove = 3;\n\n // Remove the last three ` ` elements\n for (let i = brElements.length - 1; i >= 0 && elementsToRemove > 0; i--) {\n container.removeChild(brElements[i]);\n elementsToRemove--;\n }\n let element = document.querySelector('#billing .form-footer .btn-rounded');\n\n // Change the text content to \"Submit\"\n if (element) {\n element.textContent = \"Submit\";\n }\n }\n\n // Success\n if (currentUrl.toLowerCase().includes(\"success\")) {\n // Add font awesome links\n const linkElement = document.createElement('link');\n\n // Set attributes for the link element\n linkElement.rel = 'stylesheet';\n linkElement.href = 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css';\n\n // Append the link element to the head of the HTML document\n document.head.appendChild(linkElement);\n const heroGymElement = document.querySelector('section.hero.hero-gym');\n if (heroGymElement) heroGymElement.classList.add('bg-line-blend-aqua-5');\n const successMsg = document.querySelector('.success-msg');\n if (vwo_$('.container.bg-white.text.center').length <= 0) {\n successMsg.style.marginTop = 0;\n successMsg.innerHTML = `
\n
\n
\n
Success! Congrats on becoming a member.
\n
We sent a confirmation email which includes your membership confirmation and receipt.
\n
\n
\n
`;\n }\n vwo_$(\".whats-next > h2:nth-of-type(1) > strong:nth-of-type(1) > span:nth-of-type(1)\").html(\"Next Steps\");\n vwo_$(\"h2 strong span\").vwoCss({ \"font-size\": \"1.25rem\" });\n vwo_$(\"#success figcaption.hero-content.slim\").each(function () {\n if (vwo_$(\".success-msg .col\").length) vwo_$(\".success-msg .col\").append(this);\n });\n const whatsNextParent = document.querySelector('.whats-next');\n\n if (whatsNextParent) {\n // Create a new section element with the class 'bg-gray' and a div with the class 'container'\n const containerDiv = document.createElement('div');\n containerDiv.classList.add('container', 'my-4');\n\n const sectionElement = document.createElement('section');\n sectionElement.classList.add('bg-gray', 'py-5');\n\n // Move all children of .whats-next into the new section.bg-gray element\n Array.from(whatsNextParent.children).forEach(childElement => {\n\n // Check if the child element has the classes 'd-block', 'd-sm-flex', and 'py-4'\n if (!childElement.classList.contains('d-block') && !childElement.classList.contains('d-sm-flex') && !childElement.classList.contains('py-4')) {\n containerDiv.appendChild(childElement.cloneNode(true));\n whatsNextParent.removeChild(childElement);\n }\n });\n\n // Append the section.bg-gray element into the div.container\n sectionElement.appendChild(containerDiv);\n\n const heroElement = document.querySelector('.hero.hero-gym');\n // Append the new container with filtered elements to the body of the document\n if (heroElement) heroElement.insertAdjacentElement('afterend', sectionElement);\n }\n const leadParagraph = document.querySelector('.bg-gray p.lead');\n const phoneNumber = document.querySelector('.bg-gray a.phone').innerHTML;\n if (leadParagraph) {\n leadParagraph.classList.add('px-0', 'px-lg-5', 'px-xl-0');\n // Update the content of the paragraph with the dynamically fetched phone number\n leadParagraph.innerHTML = `Our gym staff will reach out to you to schedule a time to pick up your access passes.\n Or if you’re excited to get in here, just call us at ${phoneNumber}.`;\n }\n /* EDITELEMENT */\n vwo_$(\".mr-4 > h2:nth-of-type(1) > strong:nth-of-type(1) > span:nth-of-type(1)\").html(\"Download the AF app\");\n /* EDITELEMENT */\n vwo_$(\".my-4 > div:nth-of-type(1) > p:nth-of-type(1) > span:nth-of-type(1)\").html(\"Using the AF App, you can access the club 24/7 as well as any Anytime Fitness worldwide.\");\n if (vwo_$('.next-step-1').length <= 0) {\n const iconGpsMarkers = document.querySelector('.icon-gps-markers');\n const iconGroupEx = document.querySelector('.icon-groupex-fill');\n const iconMobilePhone = document.querySelector('.icon-mobile-phone');\n if (iconGpsMarkers) {\n // HTML content to be inserted\n const htmlContent = '
1. Get Your Access Pass
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconGpsMarkers.insertAdjacentHTML('afterend', htmlContent);\n }\n if (iconGroupEx) {\n // HTML content to be inserted\n const htmlContent = '
2. Get FREE Consultation
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconGroupEx.insertAdjacentHTML('afterend', htmlContent);\n }\n if (iconMobilePhone) {\n // HTML content to be inserted\n const htmlContent = '
3. Download the AF App
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconMobilePhone.insertAdjacentHTML('afterend', htmlContent);\n }\n }\n const elements = document.querySelectorAll('.bg-gray .container .d-flex.align-items-start');\n\n if (elements.length > 0) {\n // Create a new div element with the class 'd-flex'\n const divWrapper = document.createElement('div');\n divWrapper.classList.add('d-flex', 'next-steps', 'flex-column', 'flex-md-row', 'mt-4', 'pt-2');\n\n // Move each selected element into the new div container\n elements.forEach(element => {\n // Create a copy of the element without the 'd-flex' and 'align-items-start' classes\n const elementCopy = element.cloneNode(true);\n elementCopy.classList.remove('d-flex', 'align-items-start');\n\n // Append the updated element to the new div container\n divWrapper.appendChild(elementCopy);\n\n // Remove the element with classes 'd-flex align-items-start' from its original parent\n element.parentNode.removeChild(element);\n });\n\n const lead = document.querySelector('.bg-gray .lead');\n // Append the new container with filtered elements to the body of the document\n if (lead) lead.insertAdjacentElement('afterend', divWrapper);\n }\n const removeFlex = document.querySelectorAll('.bg-white .d-block.d-sm-flex.py-4');\n\n removeFlex.forEach(element => {\n // Check if the element has the class 'd-sm-flex'\n if (element.classList.contains('d-sm-flex')) {\n element.classList.remove('d-sm-flex'); // Remove the class 'd-sm-flex'\n }\n });\n vwo_$(\"#success .staffed-hours\").each(function () {\n if (vwo_$(\".cta\").length) {\n const cta = document.querySelector('.cta');\n if (cta) cta.insertAdjacentElement('afterend', this);\n }\n });\n // Move Facebook Inside the column\n vwo_$(\"#success section.bg-white p.text-center a\").vwoCss({ \"display\": \"none\" });\n const newAElement = document.createElement('a');\n const facebookLink = document.querySelector(\"#success section.bg-white p.text-center a\").href;\n newAElement.classList.add('cta-item');\n newAElement.href = facebookLink;\n newAElement.setAttribute('data-toggle', 'lightbox');\n newAElement.setAttribute('data-gallery', 'gym-photos');\n\n // Add the inner HTML content to the anchor element\n newAElement.innerHTML = '' +\n '
Join Facebook Page
';\n\n // Select the parent element with the class .cta and the second col-sm-4 element\n const ctaParent = document.querySelector('.cta');\n const secondCol = ctaParent.querySelector('.col-sm-4:nth-of-type(2)');\n\n if (ctaParent && secondCol) {\n // Append the new anchor element to the second col-sm-4 element\n secondCol.appendChild(newAElement);\n }\n const container = document.querySelector('.cta .row');\n\n if (container) {\n // Get the col-sm-4 elements\n const colElements = container.querySelectorAll('.col-sm-4');\n\n if (colElements.length >= 2) {\n // Swap the position of the first two col-sm-4 elements in the container\n const firstElement = colElements[0];\n const secondElement = colElements[1];\n\n // Insert the second element before the first element to switch positions\n container.insertBefore(secondElement, firstElement);\n }\n }\n const iconBinoculars = document.querySelector('.cta span.icon.icon-binoculars');\n if (iconBinoculars) {\n const newIcon = document.createElement('i');\n newIcon.classList.add('icon-binoculars2');\n iconBinoculars.parentNode.replaceChild(newIcon, iconBinoculars);\n }\n const iconPin = document.querySelector('.cta span.icon.icon-pin');\n if (iconPin) {\n const newIcon = document.createElement('i');\n newIcon.classList.add('icon-geo');\n iconPin.parentNode.replaceChild(newIcon, iconPin);\n }\n const staffedHoursHeader = document.querySelector('.staffed-hours h2');\n if (staffedHoursHeader) {\n // Capitalize only the first letter of the text content\n let textContent = staffedHoursHeader.textContent;\n staffedHoursHeader.textContent = textContent.charAt(0).toUpperCase() + textContent.slice(1).toLowerCase();\n }\n vwo_$(\".mr-4\").vwoAttr({ \"class\": { \"removedClasses\": [\"mr-4\"] } });\n vwo_$(\".d-block > div:nth-of-type(2)\").vwoAttr({ \"class\": { \"addedClasses\": [\"d-flex\", \"flex-column\", \"flex-sm-row\", \"app-links\", \"justify-content-center\", \"mt-4\", \"pt-2\"] } });\n }\n\n // Contact Us\n if (currentUrl.toLowerCase().includes(\"contactus\")) {\n let aside = document.querySelector('aside');\n if (aside) aside.style.display = 'none';\n const diffText = document.querySelector('.navbar li:nth-of-type(1) a').innerHTML;\n const formHeader = document.querySelector('.form-header');\n\n if (diffText && formHeader) {\n // Create a new h1 element with class 'step-header' containing the diffText\n const newH1 = document.createElement('h1');\n newH1.classList.add('step-header', 'text-center');\n newH1.innerHTML = diffText;\n\n // Create another h1 element with text 'Join Now'\n const joinNowH1 = document.createElement('h1');\n joinNowH1.innerHTML = 'Join Now';\n\n // Append the joinNowH1 element before the new h1 element and diffText\n newH1.append(joinNowH1);\n\n // Prepend the new h1 element with class 'step-header' to the form header\n formHeader.prepend(newH1);\n\n }\n }\n\n if (currentUrl.toLowerCase().includes(\"plans\")) {\n let modalElement = document.createElement(\"div\");\n modalElement.className = \"modal\";\n modalElement.id = \"afpModal\";\n modalElement.setAttribute(\"tabindex\", \"-1\");\n modalElement.setAttribute(\"role\", \"dialog\");\n modalElement.setAttribute(\"aria-labelledby\", \"afpModal\");\n modalElement.setAttribute(\"aria-hidden\", \"true\");\n\n let modalDialog = document.createElement(\"div\");\n modalDialog.className = \"modal-dialog\";\n modalDialog.setAttribute(\"role\", \"document\");\n\n let modalContent = document.createElement(\"div\");\n modalContent.className = \"modal-content\";\n\n let modalHeader = document.createElement(\"div\");\n modalHeader.className = \"modal-header\";\n let h5Title = document.createElement(\"h5\");\n h5Title.className = \"modal-title\";\n h5Title.id = \"afpModal\";\n h5Title.innerText = \"*APPLE FITNESS+ TERMS & CONDITIONS\";\n let closeButton = document.createElement(\"button\");\n closeButton.type = \"button\";\n closeButton.className = \"close\";\n closeButton.id = \"closeModalBtn\";\n closeButton.setAttribute(\"data-dismiss\", \"modal\");\n closeButton.setAttribute(\"aria-label\", \"Close\");\n closeButton.innerHTML = `×`;\n\n modalHeader.appendChild(h5Title);\n modalHeader.appendChild(closeButton);\n\n let modalBody = document.createElement(\"div\");\n modalBody.className = \"modal-body\";\n modalBody.innerHTML = `\n
Fitness+ Trial Offer: Offer open to new Anytime Fitness®️ customers, local residents to participating locations in the United States & Canada, only. Photo ID required. Offer valid for 1 or 7 days’ (as applicable) access to participating Anytime Fitness location plus up to 3 months access to Apple Fitness+℠ beginning on eligible device activation. Prior Fitness+ subscribers will qualify for 2 months. Fitness+ requires a subscription & Apple ID with payment card on file. After trial ends, payment card on file will be charged $9.99/month & subscription automatically renews until cancelled. Apple may change the subscription price at its discretion, other terms & Apple Privacy Policy apply; see the applicable terms. Offer requires use of the Anytime Fitness mobile. Offer limited to 1 subscription per Family Sharing group, Apple IDs already associated with a trial or subscription for Fitness+ are not eligible. Valid only for Fitness+ in the United States & Canada. Fitness+ requires iPhone 8 or later with iOS 16.1 or later, or Apple Watch Series 3 or later with watchOS 7.2 or later paired with iPhone 6s or later with iOS 14.3 or later. Fitness+ is a registered trademark of Apple Inc. Apple is not a sponsor of this promotion. No cash value, not valid with any other offer, no refunds or credits. Each Anytime Fitness location is independently owned & operated. Void where prohibited.
\n
Existing Anytime Members: Offer open to existing Anytime Fitness®️ members of participating locations in the United States & Canada, only. Offer valid for access to Apple Fitness+℠ access begins on eligible device activation & continues for 3 months. Fitness+ requires a subscription & Apple ID with payment card on file. Reactivation of the offer is required every 3 months to maintain access. If free access ends payment card on file will be charged $9.99/month & subscription automatically renews until cancelled. Apple may change the subscription price at its discretion, other terms & Apple Privacy Policy apply; see the applicable terms. Offer requires use of the Anytime Fitness mobile application. Offer limited to 1 subscription per Family Sharing group, Apple IDs already associated with a trial or subscription for Fitness+ are not eligible. Valid only for Fitness+ in the United States & Canada. Fitness+ requires iPhone 8 or later with iOS 16.1 or later, or Apple Watch Series 3 or later with watchOS 7.2 or later paired with iPhone 6s or later with iOS 14.3 or later. Fitness+ is a registered trademark of Apple Inc. Apple is not a sponsor of this promotion. No cash value, not valid with any other offer, no refunds or credits. Each Anytime Fitness location is independently owned & operated. Void where prohibited.
\n `;\n\n modalContent.appendChild(modalHeader);\n modalContent.appendChild(modalBody);\n\n modalDialog.appendChild(modalContent);\n\n modalElement.appendChild(modalDialog);\n\n document.body.appendChild(modalElement);\n\n const modal = document.getElementById('afpModal');\n const openModalBtn = document.getElementById('openModalBtn');\n // const openModalBtn = document.querySelector('.btn-modal');\n const closeModalBtn = document.getElementById('closeModalBtn');\n const modalWindow = document.querySelector('.modal-dialog');\n // const cancelBtn = document.getElementById('cancelBtn');\n // const confirmBtn = document.getElementById('confirmBtn');\n\n // Open modal function\n function openModal() {\n modal.style.display = 'block';\n }\n\n // Close modal function\n function closeModal() {\n modal.style.display = 'none';\n }\n\n // Event listeners for opening and closing the modal\n openModalBtn && openModalBtn.addEventListener('click', openModal);\n closeModalBtn && closeModalBtn.addEventListener('click', closeModal);\n // cancelBtn.addEventListener('click', closeModal);\n\n // Close modal if user clicks outside of it\n window.addEventListener('click', function (event) {\n if (event.target === modalWindow) {\n closeModal();\n }\n });\n\n // Optional: Close modal with Escape key\n document.addEventListener('keydown', function (event) {\n if (event.key === 'Escape' && modal.style.display === 'block') {\n closeModal();\n }\n });\n\n\n let elements = document.querySelectorAll('.display-plans .item');\n elements.forEach(element => {\n element.style.boxShadow = '0 0 10px 0 rgba(0, 0, 0, 0.2)';\n });\n }\n\n // Miscellaneous Global Styling\n /* EDITELEMENT */\n vwo_$(\".p-2 > p:nth-of-type(2)\").vwoAttr({ \"class\": { \"removedClasses\": [\"mb-0\"] } });\n /* EDITELEMENT */\n vwo_$(\".step-header\").vwoAttr({ \"class\": { \"addedClasses\": [\"mt-md-4\"] } });\n /* EDITELEMENT */\n vwo_$(\".form-footer\").vwoAttr({ \"class\": { \"addedClasses\": [\"mt-4\", \"pt-2\"] } });\n\n /* CONTENT */\n vwo_$(\"#plans > div:nth-of-type(1) > div:nth-of-type(1) > h1:nth-of-type(1) > strong:nth-of-type(1)\").replaceWith(\"Select the plan that works for you.\");\n /* EDITELEMENT */\n vwo_$(\"#plans > div:nth-of-type(1) > p:nth-of-type(1)\").vwoAttr({ \"class\": { \"addedClasses\": [\"text-gray\"], \"removedClasses\": [\"text-white\"] } });\n /* EDITELEMENT */\n vwo_$(\".col-md-4 > a:nth-of-type(1)\").vwoAttr({ \"class\": { \"addedClasses\": [\"btn-outline-primary\", \"fw-800\"], \"removedClasses\": [\"btn-white\"] } });\n /* CONTENT */\n vwo_$(\".disclosure .mt-0\").replaceWith(\"
Virtual Workouts • Health Coaching Advice • Community
This Is How to Do Box Jumps (Correctly) in 4 Steps
Box jumps are an exciting and sometimes intimidating exercise, but they’re totally achievable — and great for building strength and stability. Learn how to incorporate this effective exercise into your fitness routine!
We get it — box jumps feel intimidating. But mastering this incredibly effective exercise can help you level up your gym routine, and we’ve got all the tips you need to get started. With some dedication and practice, you’ll be box-jumping like a boss in no time. Let’s get to it!
What are the benefits of box jumping exercises?
Box jumps are a type of plyometric exercise — quick, powerful movements that have three distinct phases:
Eccentric phase: The eccentric phase is also known as the loading phase. In this phase, your muscles store potential energy. Think of a baseball pitcher pulling his arm back before throwing the ball.
Amortization phase: This is the transition phase. The muscles that stored up the energy in the eccentric phase stabilize during this time, preparing for the third phase.
Concentric phase: The concentric phase is also known as the unloading phase. In this phase, your muscles release the stored energy, like when a baseball pitcher completes a throw.
Plyometric exercises like box jumps are used to increase strength, vertical jump height, long jump distance, and running speed, to name a few. Box jumps, in particular, are a great way to improve your overall stability, balance, mobility, and coordination. Bonus: Box jumps can also help improve your cardiovascular health. Whether you’re a distance runner, a powerlifter, or a busy person looking to improve your overall health, a box jump workout can be a valuable addition to your gym routine.
Which muscles are worked with box jumping?
Box jumps work all your leg muscles, including your hamstrings, quads, and calves — and your booty, too. They’re also a go-to exercise for building core strength, which improves your posture, prevents injuries, reduces chronic pain, and improves your overall athletic ability.
Should you do box jumps at the start or the end of a workout?
Box jumps take strength and power, so it’s recommended that you practice your box jumps at the beginning of your workout, after a good warm-up. Your risk of injury goes up when you’re fatigued, so it’s better to tackle these first.
How many sets and reps of box jumps should I do?
The amount of reps and set you do depends on your goals. Are you doing box jumps to increase your strength, or are you jumping for cardio? If getting your heart rate up or increasing endurance is your goal, you’ll want to use a short box. Do more reps with less rest inbetween, and a couple of sets. If boosting strength is your aim, do fewer reps with more rest time, and complete 4–5 sets.
What is the correct box jump form?
Before we jump in (see what we did there?), let’s talk about form and equipment. To do a box jump, all you need is a good pair of tennis shoes and a plyo box or another flat, sturdy platform that won’t shift around when you land.
Now, here’s how to do a box jump:
Face the box, standing about six inches away with your feet hip-width apart.
Bend your knees and push your hips back, swinging your arms behind you to gain momentum.
Push through your feet and jump in one explosive movement, pulling your arms forward.
Land softly on the box with both feet. Your landing position should be the same as your starting position, with your hips and knees at a 90-degree angle — you shouldn’t land in a deep squat.
That’s it! Step down from the box and repeat.
Pro tip: If you make a lot of noise when you land, the box is too tall. Move to a shorter box at a more comfortable height.
Work your way to your first box jump in 4 steps
Now you know how to do a box jump and you’ve got the equipment — let’s put it all together!
1. Squat Jump
We’ll start on the ground with a squat jump. Use these steps to complete a squat jump:
Stand with your feet hip-width apart.
Bend your knees at a 90-degree angle, using your arms to stabilize yourself and gain momentum.
Swing your arms back and jump off the ground with an explosive movement.
Return to the 90-degree squat position.
Complete two sets of 10 reps.
2. Broad Jump
Once you’ve mastered the squat jump, spice things up with a broad jump. Instead of jumping vertically, you’ll jump horizontally. Here’s how:
Start in the same position as the squat jump, with your feet hip-width apart and knees at a 90-degree angle. Use your arms to stabilize yourself and load up with momentum.
Swing your arms backward, using your explosive power to leap forward.
Land with both feet at the same time, returning to the starting position.
Complete two sets of 10 reps.
3. Box Jump with Floor Box
Now, you’re ready to introduce a box.
So, what’s a good height to start with box jump exercises? Start low, then work your way up to a height that’s comfortable for you. Using a box that’s too tall can interfere with your form and increase your risk for injury. Start with a plyo box that’s a few inches off the floor.
Remember to land with both feet softly on the box.
4. 12- and 18-Inch Box Jumps
You’ll need to focus on driving momentum with your arms and creating lots of explosive power with your legs.
After you’ve mastered the 12-inch box, it’s time to crank things up to the next level. Give the 18-inch box jump a go. You’ve got this!
For an added challenge, try adding ankle weights or a weighted vest to your box jumping routine — starting back at a lower height, of course. As you gain more experience and get more comfortable with box jumps, you can work your way up to even taller heights.
Now that you’ve mastered how to do a box jump, are you ready to tackle your next challenge? Check out our guide to Get to Your First Pull-Up!
Free 7-Day Passes are only available for new customers who live or work nearby. Most Anytime Fitness locations have a drop-in charge for non-residents who want to use the gym for a short period of time. If you cannot provide proof of local residency, you may be charged a fee to use this club.
Free {{nday}}-Day Passes are only available for new customers who live or work nearby. Most Anytime Fitness locations have a drop-in charge for non-residents who want to use the gym for a short period of time. If you cannot provide proof of local residency, you may be charged a fee to use this club.