Just use your email and password to log in. If you haven't tried them yet, I encourage you to do so. Please also be respectful of my time and schedule. Your patronage is greatly appreciated. You can schedule directly from the online scheduler.
Jeff's available times in 2023: Available via the scheduler.
RATES:
Incalls: Cash/Card/PayPal Payment
.5 hr - $45 (not currently available) 1.0 hr - $60 1.5 hr - $85 2.0 hr - $115 4-handed 1 hr - $105 (email me to schedule a time) 4-handed 1.5 hr - $145 (email me to schedule a time) Group session - $50/person (4 - 6 persons)
Outcalls: Not available - I work only from my home studio.
**Intentional Touch is a missing ingredient in the daily lives of so many men.
Payment Options:
Preferred methods are Cash,Zelle,Venmo,Cash App and PayPal Most of these are set up with my email address or mobile number.
I also accept all major credit cards for onsite swiping via Square!
Time on my table will help you to experience a new level of wellness, satisfaction and balance in your life.
See right sidebar for important updates
If you would like to include some Vibrational Therapy (via a Vibration Plate) in your session, let me know when scheduling. Leave your worries and anxieties outside the front door.
A firm, yet gentle Touch not only soothes the tired and stressed out muscles, but it also relaxes down to your very soul, releasing endorphins that boost your immune system and elevate your positive mood, promoting a state of well-being like nothing else can.
Let me help you reach your goal to reduce stress in your life and feel good about yourself.
At Floyd's Touch we provide the best full-body relaxation sessions at some of the most affordable rates in the D/FW metroplex. Especially touch between men. Take a vacation from the stresses in your life and schedule a relaxing bodywork session. Thanks!
Cancellation Policy: *No notice or no shows - full amount of appointment is due *Less than 24 hr notice - 1/2 the appointment amount is due *+24 hr cancellation - thanks and I hope you will reschedule
Thanks for your understanding.
All designed to meet and exceed your specific needs.
We offer several different styles of bodywork including, but not limited to, Swedish, Sports, Deep Tissue, Taoist, and Tantric.
"; $('body').append(cssHideLogo); } else { var cssHideLogo = ""; $('body').append(cssHideLogo); } if (geocodeVisitorsSetting == 1 && geocodingMethod === "IP") { populateSearchFields(); } if($('.googleSuggest').val() == ""){ populateSearchFields(); } var geocodeVisitorsSetting = '1'; var geocodingMethod = 'HTML5'; //check the advanced setting "geocode_visitor_default" if set to 1 will override the "location_value" values to the formatted desire address from the google reverse geocoding response var vlon = ''; var vlat = ''; } function switchPlaceID(placeId,urlGET, formActionUrl) { let request = { placeId: placeId, fields: ['address_components', 'adr_address', 'formatted_address', 'geometry', 'icon', 'name', 'place_id', 'plus_code', 'type'], }; let service = new google.maps.places.PlacesService(document.createElement('div')); service.getDetails(request, function(place, status) { if (status === google.maps.places.PlacesServiceStatus.OK) { let dataArray = []; dataArray.push(place); parseInfoToSearch(dataArray, urlGET, formActionUrl); } else { console.error('Place details request failed with status:', status); } }); } function parseInfoToSearch(results, urlGET, formActionUrl) { var urlSearchParams = new URLSearchParams(urlGET); var parameters = {}; var addressComponentsArray = []; if (results.length > 1) { if(urlSearchParams.get("location_value")?.toLowerCase() === "nebraska" && results.length === 2){ let tempResult = results[0]; results[0] = results[1]; results[1] = tempResult; } for (let i = 0; i < results.length; i++) { if (results[i].types[0] === 'natural_feature' || results[i].types[0] === 'airport' || results[i].types[0] === 'point_of_interest' || results[i].types[0] === 'establishment' || results[i].types[0] === 'political' || results[i].types[0] === 'park') { results.splice(i, 1); } } } var adComLength = results[0].address_components.length; if(results[0].place_id == 'ChIJmQrivHKsQjQR4MIK3c41aj8'){ switchPlaceID('ChIJi73bYWusQjQRgqQGXK260bw',urlGET, formActionUrl); return; } sessionStorage.setItem("google_result",JSON.stringify(results)); var foundPostalType = results[0].types.find(type => postalTypes.includes(type)); var foundCityType = results[0].types.find(type => cityTypes.includes(type)); //loop that will build the array with the address components and will get the short name of country and administrative area level 1 for (var i = 0; i < adComLength; i++) { if (results[0].address_components[i]['types'][0] == "country") { parameters.country_sn = results[0].address_components[i]['short_name']; } if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { parameters.adm_lvl_1_sn = results[0].address_components[i]['short_name']; } if (results[0].address_components[i]['types'][0] == "administrative_area_level_1") { parameters.stateSearchLN = results[0].address_components[i]['long_name']; } if (results[0].address_components[i]['types'][0] == "administrative_area_level_2") { parameters.county_sn = results[0].address_components[i]['short_name']; } if ($.inArray(results[0].address_components[i]['types'][0], cityTypes) !== -1 && (foundCityType || foundPostalType ) ) { parameters.city = results[0].address_components[i]['long_name']; } if (results[0].address_components[i]['types'][0] == "postal_code" || results[0].address_components[i]['types'][0] == "postal_code_prefix") { parameters.postal_code = results[0].address_components[i]['long_name']; } } parameters.location_type = results[0].types[0]; if (parameters.adm_lvl_1_sn != '') { parameters.stateSearch = parameters.adm_lvl_1_sn; } if (parameters.country_sn == "GB") { delete parameters.adm_lvl_1_sn; } //will check if the response had the bounds parameters //if it had it will add the south west and north east parameters to the new url if (results[0].geometry.hasOwnProperty('bounds') || results[0].geometry.hasOwnProperty('viewport')) { if (results[0].geometry.hasOwnProperty('bounds')) { var boundsResponse = results[0].geometry.bounds; } else { var boundsResponse = results[0].geometry.viewport; } parameters.swlat = boundsResponse.getSouthWest().lat(); parameters.nelat = boundsResponse.getNorthEast().lat(); parameters.swlng = boundsResponse.getSouthWest().lng(); parameters.nelng = boundsResponse.getNorthEast().lng(); //if there were not bounds parameters in the response it will send the parameter fsearch as radius so a radius search will be performed because of lack of info for this location } else { parameters.fsearch = "radius"; } var locationCenterResponse = results[0].geometry.location; parameters.lat = locationCenterResponse.lat(); parameters.lng = locationCenterResponse.lng(); parameters.faddress = results[0].formatted_address; parameters.place_id = results[0].place_id; var formatParameters = $.param(parameters); urlGET = urlGET + "&" + formatParameters; var urlPath = formActionUrl; var redirect = urlPath + "?" + urlGET; //will redirect the page using the new url that has been constructed window.location.href = redirect; } function populateSearchFields() { var prePopulateLocationSetting = '1'; var geolocationMethod = 'HTML5'; //if set to one will get the lat and lng to do reverse geocoding if (prePopulateLocationSetting == 1 && (geolocationMethod === "HTML5" || geolocationMethod === "IP") && (vlat !== '' && vlon !== '' && vlat != undefined && vlon != undefined && vlat != 0 && vlon != 0)) { var visitorLatLng = new google.maps.LatLng(parseFloat(vlat), parseFloat(vlon)); var visitorGeocoder = new google.maps.Geocoder(); var formattedAddress = []; var preFormattedStructure = { "locality": "long_name", "administrative_area_level_2": "long_name", "administrative_area_level_1": "long_name", "country": "long_name" }; visitorGeocoder.geocode({'latLng': visitorLatLng}, function (results, status) { //if the google response of the geocoding was successful it will use that info to build the url for the new search if (status == google.maps.GeocoderStatus.OK) { window.cachedSelectedOption = results; $.each(preFormattedStructure, function (findex, fvalue) { $.each(results[0].address_components, function (rindex, rvalue) { if (rvalue.types[0] == findex) { formattedAddress.push(rvalue.long_name); } }); }); $('.googleSuggest').each(function () { if ($(this).val() == '') { if (formattedAddress.length > 0) { $(this).val(formattedAddress.join(', ')); clearContent($(this)); } } }); } else { $('.googleSuggest').each(function () { $(this).val(''); }); } }); } } function showError(error) { switch (error.code) { case error.PERMISSION_DENIED: $('.fill_location.clicked').popover({ content: 'Your Local browser settings have prevented location targeting', container: 'body' }); $('.fill_location.clicked').popover('toggle'); setTimeout(function () { $('.fill_location.clicked').popover('hide'); $('.fill_location.clicked').removeClass('clicked'); }, 2000); break; case error.POSITION_UNAVAILABLE: break; case error.TIMEOUT: break; case error.UNKNOWN_ERROR: break; } } if (navigator.geolocation) { if ($(".googleSuggest")[0]) { $(document).on('click', '.fill_location', function getCXPosition() { $(this).addClass('clicked'); var startPos; navigator.geolocation.getCurrentPosition(function (position) { startPos = position; vlat = startPos.coords.latitude; vlon = startPos.coords.longitude; $.get("/api/data/html/get/data_widgets/widget_name", { "vlat": vlat, "vlon": vlon, "name": "Website - Save Coordinates Session" }).done(function (data) { }); populateSearchFields(); }, showError); }) } } else { console.log('Geolocation is not supported for this Browser/OS version yet.'); } function getUrlParameter(sParam) { var sPageURL = window.location.search.substring(1); var sURLVariables = sPageURL.split('&'); for (var i = 0; i < sURLVariables.length; i++) { var sParameterName = sURLVariables[i].split('='); if (sParameterName[0] == sParam) { return decodeURIComponent(sParameterName[1]); } } }
PRIVATE MENS MEMBERSHIP CLUB
Everything the discerning male needs to relax and build his body
Rates & Specials
WEIGHT TRAINING
Fully equipped gymnasium.
BATH & SAUNA
Sauna, jacuzzi, steam room, and shower room.
PRIVATE ROOMS
Private rooms for VIP members
*******FLOYDSTOUCH*******
Bodywork exclusively for Males
December is here! 2025 is almost history! **I just opened the scheduler for 2026
Holiday magic is in the air! It is a season of celebrating with friends and family!
Don't get stressed out. Spend some time on my table to destress.
My availability is limited this month so don't delay in scheduling.
Take care of yourself, your physical & mental health.
There are several questions there (not all are required), that will help me to create a session that is tailored to what you need and enjoy. If this is your first time, simply create a new profile.
***NOTICE: The online scheduler does not allow same day appointments less than 4 hours in advance. Since this is my full time work, I rely on my daily schedule and filling open appointment slots.
ALLmen (only) of all types are welcome.
Ready to schedule an appointment and relax on my table?
Simply click the Schedule Now tab! New /First Time Clients: The first time you access my scheduler, you will need to Register by creating a profile.