Arts + Culture
It's not hard to see why early Spanish explorers thought Florida would be the home of the mythical Fountain of Youth our springs are unlike anything else in the world. Luckily, many of these unique watering holes are just a gas tank away from Orlando and offer beautiful scenicviews and crystal clear blue waters.
Scroll down to view images
Suwannee Springs
3243 91st Dr, Live Oak, FL 32060; 2 hours, 30 minutes from Orlando
This historic park is composed of six springs clustered in a sandy hundred-foot stretch at the base of the Suwannee River. The main spring is surrounded by the walls of a late 1800s bath house made out of limestone rock. Unfortunately sand is building up in the pool and tree roots are growing into the walls, so this hundred-year-old testament to Floridas rich past could soon disappear; Enjoy it while it lasts.
Photo via thndrbuni/Instagram
Fanning Springs
18020 US-19, Fanning Springs, FL 32693; 2 hours, 11 minutesfrom Orlando
In the 1950s, Fanning Springs used to have a roller rink. Now, in an effort to maintain the parks natural beauty, guests forgo the cheesy disco lights in favor of clear blue springs, a sandy volleyball court and hikes through a hardwood forest. Or, if you want to relax while you take in the natural splendor, a shady gazebo on the Suwannee river offers a comfortable place to watch the sturgeon jumping out of the water in the warmer months.
Photo via k_shred88/Instagram
Silver Glen Springs
5271 FL-19, Salt Springs, FL 32143; 1 hour, 15 minutes from Orlando
Perfect for fans of Marjorie Kinnan Rawlings novel The Yearling, bibliophiles will recognize the spots made famous by the Baxter family. Pick up some snorkeling gear on the ride over, and take pleasure in knowing that both canoe and kayak launching are free if you bring your own gear.
Photo via eiriichii/Instagram
Devils Den
5390 NE 180th Ave, Williston, FL 32696; 1 hour, 31 minutes from Orlando
Pull a Dracula and hide from the sunlight at this underground spring tucked inside a dry cave. Try your hand at some open water and cave diving, and brag to your friends about the stalactites thats the pointy things on the ceilings and 33-million-year-old fossil beds you got to swim around. Dont make the drive if youre not scuba- or snorkeling-certified, however, or you wont be allowed into the spring.
Photo via chuckbandel/Instagram
Three Sisters Springs
601 Three Sisters Springs Trail, Crystal River, FL 34429; 1 hour, 38 minutes from Orlando
This one is just for the manatees, folks. Swim with the cute lil sea cows or simply look at them from the springs boardwalk. Either way, youll get a clear view of them. The amount of manatees on site fluctuates depending on the time of year, but the cooler days after mid-November will get you more mammal for your buck.
Photo via U.S. Fish and Wildlife Service
Blue Spring State Park
2100 W French Ave, Orange City, FL 32763; 50 minutes from Orlando
Claiming the title of the biggest spring found on the St. Johns River, this stop on the list is manatee heaven from the middle of November until the end of March. Any in-water activity is put to a halt during this time, but once the park fully reopens, attendees can enjoy some snorkeling, boating, fishing, tubing and, if youre certified, scuba diving.
Photo via atravelgirl12/Instagram
Ginnie Springs
7300 Ginnie Springs Rd, High Springs, FL 32643; 2 hours, 5 minutes from Orlando
Along with being one of Floridas most popular camping locations, Ginnie Springs has one of the clearest bodies of water in Florida. Snorkel, swim, canoe and kayak in seven different springs across the park or explore the hidden grottos beneath the waters surface. Certified divers can travel through 30,000 feet of passageways in the Devils Springs systems, where they might catch a glimpse of a prehistoric fossil from the pleistocene era.
Photo via theonenomad/Instagram
Wekiwa Springs
1800 Wekiwa Cir, Apopka, FL 32712; 30 minutes from Orlando
One of the more popular springs in the area, its recommended that you get there early to be sure youll find a parking space. Maybe its due to the Wekiwa River being only one of two National Wild & Scenic Rivers recognized in the state or the many ways you can travel down the stream of water (canoe, kayak or paddle board), but the fact remains that this is a must for any Orlandoan.
Photo viacozzy_zy/Instagram
Silver Springs
1425 NE 58th Ave, Ocala, FL 34470; 1 hour, 15 minutes from Orlando
A ride on one of their glass bottom boats will provide a glimpse at one of the states largest artesian springs. If youre looking to go swimming, you might want to try visiting somewhere else, but if youre itching to get into a kayak or canoe, add this to your to-visit list.
Photo via _alex_andrine/Instagram
Otter Springs
6470 SW 80th Ave, Trenton, FL 32693; 2 hours, 15 minutes from Orlando
For the 21st century outdoorsman, Otter Springs offers an authentic natural experience complete with updated amenities. If stewing in algae-filled water before a two hour drive home makes you feel a little icky and gross, rinse off in one of two bathhouses with hot showers or take a dip in the screened-in pool.
Photo via nphuff27/Instagram
Manatee Springs State Park
11650 NW 115 St, Chiefland, FL 32626; 2 hours, 7 minutes from Orlando
Living up to its name, Manatee Springs gives guests a chance to catch of glimpse of the gentle sea-cow during early spring as the aquatic mammal seek warmer waters. During manatee season, canoeing and kayaking are forbidden, but the rest of the year, you can fish, swim, boat, snorkel and dive in the Catfish Hotel sink hole.
Photo via synful_cyn/Instagram
'Object.defineProperties(this, {'items': { get: function() { return jQuery(this.itemContainerSelector).find(this.itemSelector)}},'currentItem': {get: function() {var foundItem = nullvar foundItemInView = nullthis.items.each(function () {var currentInView = elementInView(jQuery(this), scrollTopOffset, 0)if (currentInView) {// An in view item is already located extra logicif (foundItemInView && foundItemInView.inView) {// The entire previously found item is visible - it winsif (foundItemInView.topInView && foundItemInView.bottomInView) return// The previously found item covers the visible area - it winsif (foundItemInView.middleCoversView) return// The previously found item has more surface area - it winsif (foundItemInView.percentVisable > currentInView.percentOfViewHeight) return}foundItem = jQuery(this)foundItemInView = currentInView}})return foundItem}},'currentItemIndex': {get: function() {var currentElement = this.currentItem.closest('[slide-index]')if(currentElement) {return parseInt(currentElement.attr('slide-index'))}return null}},'currentItemId': {get: function() {var currentElement = this.currentItem.closest('[slide-id]')if(currentElement) {return currentElement.attr('slide-id')}return null}}})var slideshowInstance = thisvar scrollTopOffset = window.innerHeight > this.smallMenuBreakPoint ? 110 : 140var originUrl = window.location.hrefthis.scrollToIndex = function (index) {var slideItem = this.items.filter('[slide-index="' + index + '"]')if (slideItem.length) { var topOffset = slideItem.offset().top - scrollTopOffset// window.scrollTo({ top: topOffset, behavior: 'smooth' })window.scrollTo({ top: topOffset, behavior: 'auto' })}else {this.fetchMore(index, function () {slideshowInstance.scrollToIndex(index)})}}this.fetchMore = function (startIndex, callback) {var currentItemOnFetch = this.currentItemvar url = ''var params = {ajaxComponent: componentId,action: 'grabMore',startIndex: startIndex,oid: slideshowOid,cb: '1648573351',}var keywords = currentItemOnFetch.attr('slide-keywords')if (keywords) {params.keywords = keywords}if (editorView === true) {params.editor = true}// jQuery.ajax({url: url,type: 'GET',data: params,dataType: 'json',beforeSend: function () { console.log('Fetching results') },success: function (data) {console.log('success', data.results, data.results.length, data.error, data)if (data) {if (data.error) {console.log(data.error)}else if (data.results) {console.log('slideshowInstance.items', slideshowInstance.items)for (var i = 0; i < data.results.length; i++) {var resultItem = jQuery(data.results[i])// // var resultItem = jQuery.parseHTML(data.results[i], document, true);var resultItemIndex = parseInt(resultItem.attr('slide-index'))var resultAlreadyInserted = slideshowInstance.items.filter('[slide-index="' + resultItemIndex + '"]').length > 0console.log('result', resultItemIndex)var previousItem = nullvar previousItemIndex = 0if (!resultAlreadyInserted) {slideshowInstance.items.each(function () {if (resultAlreadyInserted) returnvar currentItem = jQuery(this)var currentItemIndex = parseInt(currentItem.attr('slide-index'))if (resultItemIndex === currentItemIndex ) {resultAlreadyInserted = truereturn}else if (resultItemIndex > previousItemIndex && resultItemIndex < currentItemIndex) {var topOffsetBeforeInsert = currentItemOnFetch.get(0).getBoundingClientRect().topresultItem.insertBefore(currentItem)resultAlreadyInserted = truevar adjustedTopPosition = currentItemOnFetch.offset().top - topOffsetBeforeInsertwindow.scrollTo({ top: adjustedTopPosition, behavior: 'auto' })}previousItem = currentItempreviousItemIndex = currentItemIndex})if (!resultAlreadyInserted) {var topOffsetBeforeInsert = currentItemOnFetch.get(0).getBoundingClientRect().topresultItem.insertAfter(slideshowInstance.items.last())resultAlreadyInserted = truevar adjustedTopPosition = currentItemOnFetch.offset().top - topOffsetBeforeInsertwindow.scrollTo({ top: adjustedTopPosition, behavior: 'auto' })if (typeof instgrm === 'object' && instgrm.Embeds && typeof instgrm.Embeds.process === 'function') {setTimeout(instgrm.Embeds.process, 200);}}}}}else { console.log('How did we get here?') }}else { console.log('No result or error returned from content request.') }},complete: function () { slideshowInstance.items = jQuery(slideshowInstance.itemSelector) // Update items resultjQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()if (typeof callback === 'function') { callback() }},error: function (error) { console.log(error) }})}var lazyLoadTimeout = nullvar lazyLoadSurroundingItems = function (index) {if (slideshowInstance.lazyLoadMoreResults) {// Give lazyLoad a chance to finish before submiting more requestsvar lazyLoadTimeout = setTimeout(function () {var prevIndex = Math.max(index - 1, 1)var prevPrevIndex = Math.max(index - 2, 1)var nextIndex = index + 1var nextNextIndex = index + 2var prevIndexLoaded = slideshowInstance.items.filter('[slide-index="' + prevIndex + '"]').length > 0var prevPrevIndexLoaded = slideshowInstance.items.filter('[slide-index="' + prevPrevIndex + '"]').length > 0var nextIndexLoaded = slideshowInstance.items.filter('[slide-index="' + nextIndex + '"]').length > 0var nextNextIndexLoaded = slideshowInstance.items.filter('[slide-index="' + nextNextIndex + '"]').length > 0if(!prevIndexLoaded) {jQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()// jQuery(slideshowInstance.itemContainerSelector).prepend(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(Math.max(prevIndex - (fetchMoreMaxCount - 1), 1))}else if(!prevPrevIndexLoaded) {jQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()// jQuery(slideshowInstance.itemContainerSelector).prepend(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(Math.max(prevPrevIndex - (fetchMoreMaxCount - 1), 1))}if(!nextIndexLoaded) {jQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()jQuery(slideshowInstance.itemContainerSelector).append(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(nextIndex)}else if(!nextNextIndexLoaded) {jQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()jQuery(slideshowInstance.itemContainerSelector).append(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(nextNextIndex)}}, 500)}}var lastIndex = slideshowInstance.currentItemIndexjQuery(window).on('scroll resize', function () {// Give lazyLoad a chance to finish before submiting more requestsvar lazyLoadTimeout = setTimeout(function () {var currentIndex = slideshowInstance.currentItemIndexif(currentIndex !== lastIndex) {lastIndex = currentIndexlazyLoadSurroundingItems(currentIndex)console.log(`Slide Item index: ${currentIndex}`)fireEvent('foundation:slideshow:slidechange')}}, 50)})this.initialized = falsethis.init = function () {if (this.initialized === true) return// Prevent the browser from trying to scroll to the last scroll position before reloadif (history.scrollRestoration) {history.scrollRestoration = 'manual'}var startIndex = this.items.first().attr('slide-index')var oid = window.location.pathname.match(/\d+$/)if (oid) {var grabIndex = parseInt(this.items.closest('[slide-id="' + oid[0] + '"]').attr('slide-index'))if (!isNaN(grabIndex)) {var startIndex = grabIndex}}if (startIndex > 1) {this.scrollToIndex(startIndex)}if(jQuery(this.itemContainerSelector + '[single-listing]').length === 0) {this.lazyLoadMoreResults = true}this.initialized = truelazyLoadSurroundingItems(startIndex)}return this}var SlideshowItems = new SlideshowItemsObj()var adUseCountOrTimer = 'count' // count|timervar adSlideCountThreshold = 1var adSlideTimeoutDuration = 10000var adSlideCounter = 0var adSlideTimeout = nullvar adOkToRefresh = falseif (adUseCountOrTimer === 'timer') {adSlideTimeout = setTimeout(()=>{ adOkToRefresh = trueclearTimeout(adSlideTimeout)adSlideTimeout = null}, adSlideTimeoutDuration)}// Timeout to prevent fast jogging from item to itemvar itemChangeTimeout = nulljQuery(document).on('foundation:slideshow:slidechange', function () {// itemChangeTimeout = setTimeout(function () {// }, 50)if (editorView !== true) {updateMetaDataFromElement(SlideshowItems.currentItem)}// Google track pageviewif (typeof ga === 'function') {console.log("foundation:slideshow:slidechange event", "sending pageview navigation to:", window.location.href);ga('set', 'location', window.location.href)for (let i = 1; i <= 3; i++) {let currentDimension = jQuery(SlideshowItems.currentItem).attr('ga-dimension'+i)if (typeof currentDimension === 'string') {ga('set', 'dimension' + i, currentDimension)}else {ga('set', 'dimension' + i, '') }}ga('send', 'pageview')}adSlideCounter++if (adUseCountOrTimer === 'count') {if (adSlideCounter >= adSlideCountThreshold) {adSlideCounter = 0adOkToRefresh = true}}else if (adUseCountOrTimer === 'timer' && adSlideTimeout === null) {adSlideTimeout = setTimeout(()=>{ adOkToRefresh = trueclearTimeout(adSlideTimeout)adSlideTimeout = null}, adSlideTimeoutDuration)}console.log('[AdRefreshLog]', adOkToRefresh, adUseCountOrTimer, adSlideCounter, adSlideCountThreshold, adSlideTimeoutDuration)if (adOkToRefresh === true) {if (typeof (Foundation.Ad.slots['ORL_LeaderboardHeader-1']) === 'object') {Foundation.Ad.refresh('ORL_LeaderboardHeader-1')}if (typeof (Foundation.Ad.slots['ORL_Footer-1']) === 'object') {Foundation.Ad.showFooter('ORL_Footer-1');}adOkToRefresh = false;}})// Try to init immediatelySlideshowItems.init()// On document loadedjQuery(function () {SlideshowItems.init()})})();