To find the hair-removal specialists on this list, we polled dozens of in-the-know New Yorkers, including a brow artist, a writer-director, and a stylist. They recommended the best laser-treatment spots, told us where they go for their Brazilian (and BoyZillian) waxes, and shared whom they trust to shape up their eyebrows. Some of our picks have locations across the city, and many have same-day appointments available.
There are plenty of fancy places to get a bikini wax in the city — like Haven in Soho, where treatment rooms are decorated with roses floating in bowls of water, or Maris Dusan, which is situated on the ground floor of a Park Avenue townhouse. But none, according to Lili Chemla, founder of clothing company Leset, beat Uni K. No matter which location she visits (the chain has 14 across the city, from Bay Ridge to Lenox Hill to Long Island City), the technicians expertly (and quickly) use hard wax and are “diligent about making sure you’re smooth as a seal,” she says, “not letting a single hair pass their notice.” The no-frills studios are always clean, but the real appeal is the company’s online booking portal and easy-to-parse menu of services listing several variations on bikini waxes, ranging from “top only” ($13), for just the horizontal strip of hair above the pubic area, to a “Boy Short” ($87), which includes hips and inner thighs. Nora DeLigter, writer-director who has been going to Uni K for bikini waxes for eight years, says over all that time, she has “never not gotten a same-day appointment.”
When it comes to cleaning up his nether regions, “most woman waxers act kind of afraid of me,” says one avid male client who’d prefer to remain anonymous. “They generally aren’t willing or able to get me into the right positions to really get it done.” Not so at MPM, an exclusively for-men spot in Chelsea that sugars (a hair-removal process that uses a lemon-water-and-paste mixture instead of wax) away hair in the perineum, on the balls, around the shaft, and basically anywhere else the customer pleases (prices start at $30 for “the crack only”). Oskar, the owner and one of the technicians, is particularly good at “contorting my body into whatever shape it takes to really get into the crevices of my butt. He’s not shy around or afraid of the male body.” The “BoyZillian” ($60) removes hair from the full pubic area in 30 minutes or less, and while it’s admittedly “extremely painful,” Oskar is “gentle and makes it more tolerable than it should be.”
In her over ten years at Tenoverten, Miranda Boci has gained a high-profile following for her surprisingly painless waxing services. Her client list includes Demi Moore, Taraji P. Henson, Maggie Gyllenhaal, and Naomi Watts as well as Jimena Garcia, Chanel’s in-house brow artist, who has been seeing Boci for bikini waxes (from $35) for 15 years, since before Boci moved to Tenoverten. Boci uses nontoxic products (Satiness beeswax, natural resin-based wax, azulene oil), but Garcia says Boci’s finesse comes down to experience: “She knows how to adjust the temperature, the pace, the way she holds her hands specifically. You can learn technique in school, but you have to actually do it over and over to be able to really see hair-growth patterns and hair types the way she does.”
“Zubi always has a point of view about eyebrow shape and the relationship between how your hair grows and the shape of your face,” says stylist Mellany Sanchez of Zubi Kothiya, owner of Zubi’s Threading Corner. (She got Kothiya’s name in the first place from her friend Seymore Fleck, a beauty specialist who has been seeing Kothiya since 2008.) Take, for instance, the time Sanchez showed Kothiya her saved photos of ’90s supermodels and Puerto Rican women with their ultra-arched, razor-thin brows. (“I live for it,” she says.) Kothiya steered her away, suggesting instead that a better arch would be achieved by growing her brows in and shaping them so they gently taper past the outer corners of her eyes. Now Sanchez has a feathery, ’90s-esque arch with none of the no-going-back overplucking. (From $10 to $200 for a wide range of services.)
For Ancestral Brows
Azi Sacks, the Brow Studio, 205 W. 20th St.; azibrow.com
As a child, Zara Rahim’s unibrow was openly praised at home by her Bangladeshi family but mocked by her classmates at her Florida school. “I threaded my eyebrows mercilessly as soon as I was allowed to,” says the communications strategist, and from the age of 17 up until the pandemic, she kept her brows in distinct, separate arches. But post-lockdown, with her childhood brow fully rewilded after having no access to a salon, she decided to leave “colonial standards of beauty” behind. On a recommendation from hairstylist Dhiran Mistry, she went to see Azi Sacks, whose “eyes lit up in a way I hadn’t seen before,” Rahim says. “Her concern was, ‘How do we keep these as full and ancestral as possible?’ ” For Rahim, Sacks carefully tweezes to preserve her brows’ natural shape ($260 for shaping) — somehow taming the cowlick that stumped previous eyebrow artists — and adds a tint ($40) for further definition.
In 2016, contributing editor at Vogue Jenna Rennert went to Romeo & Juliette Laser Hair Removal on the recommendation of a friend and has been a regular ever since, dipping in frequently ahead of events. She has referred industry friends, like Instagram’s head of beauty programs, Kristie Dash, who has since become a regular. Romeo & Juliette has 12 available lasers, including Nd:YAG lasers, which yield the best results on darker skin tones and are not available at many med spas. Rennert’s bikini-line treatments (from $235) are generally done with the Synchro REPLA:Y, which has nuanced settings to allow for more targeted treatments based on hair type and thickness and skin tone and sensitivity. Dash remembers being pleasantly surprised at her first appointment when multiple settings were used on a single body part. “It’s such a thorough process,” she says. “Other salons pop you into a room and just start zapping.” Blake Newby, an editor at Essence, has been getting her Brazilian area done at Romeo & Juliette for four years. “The area has stayed hairless as long as I’ve been diligent with touch-ups,” she says. “And I’ve never experienced so much as an ounce of discoloration. I’ve referred friends with deeper skin tones than me to R&J, and they said the same.”
.
Ask a Laser Specialist
Christian Karavolas,founder of Romeo & Juliette Laser Hair Removal in Midtown East
Illustration: Pete Gamlen
What makes a laser technician great rather than merely good? A great technician listens to the client, asks questions: What have they done in the last two weeks? Are they on medication, antibiotics? Have they been in the sun? Do they use self-tanners? This assessment will tell you the proper settings to use or tell you when to postpone treatment altogether. If someone’s on medication that creates photosensitivity, they may get pigmentation that can take months to resolve.
Are there different lasers for different parts of the body? Yes and for different kinds of hair and skin. Most places use one laser on everybody. We have 12 different ones. If somebody has red or blonde hair, we use a laser that targets their roots differently than lasers for dark hair.
Describe what the laser feels like for someone who’s never done it. It just feels like somebody snapping you with a rubber band. We also have cooling methods that blow cold air on the skin to make the treatment tolerable. However, us men, we’re pain intolerant. We offer numbing cream, and about 20 percent of our male clientele uses it. For women, it’s closer to 5 percent.
You only do laser hair removal — why is that? There’s a dermatologist downtown who sends us clients, and he says that while most places do laser, Romeo & Juliette perfects the art of laser hair removal. I’ll put it like this: You could take ten cooks and give them the same tomatoes, water, sugar, and after an hour or two, you get ten different tomato sauces. We feel we make the best tomato sauce.
By submitting your email, you agree to our
Terms and Privacy Notice
and to receive email correspondence from us. This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
Already a subscriber?
Already a subscriber?
`;
// integrate Sub(x) scripts and elements
if (hostname !== 'subs.nymag.com') { // do not integrate on this subdomain
document.head.appendChild(trackingScript);
document.body.insertAdjacentHTML('beforeend', subXAnimationElements);
}
There was an error processing the request. Please try again later."}).catch(e=>console.error("Error verifying email: ",e)))(r.querySelector(".content"),o.bannerCTAVerification)})):(l.remove(),s.remove()),o.dismissable||n.remove(),o.useAlertIcon||a.remove(),r.classList.add("show"),n.addEventListener("click",()=>{u(),r.classList.remove("show")})}else r.remove()}});
}, {"1":1,"6":6,"12":12,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(12),signInButton=dom.find(".user-signin"),signOutButton=dom.find(".user-signout"),globalNav=dom.find('[class^="global-nav"]'),body=dom.find("body"),dropdownItems=dom.findAll(".dropdown-wrap"),gtm=require(1),appendLandingPageParams=require(135),pageUri=require(124).getPageUri(),subscriptionPromoLinks=dom.findAll(".persist-params"),searchString=window.location.search||"";function closeDropdowns(e){let n=globalNav.querySelectorAll(".dropdown.open");dropdownItems.forEach(function(t){let o=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||o.classList.remove("open")})}function gtmSendReport(e,n,t){let o={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(o.eventLabel=n.href),gtm.reportNow(o)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const o=t.split("?"),i=new URLSearchParams(o[1]);for(let e of n.entries())i.set(e[0],e[1]);t=`${o[0]}?${i.toString()}`,e.href=t}else e.href=`${t}?${n.toString()}`}}function init(e){const n=e.querySelectorAll(".to-landing-page");window.addEventListener("auth:init",()=>{signInButton.addEventListener("click",function(e){e.preventDefault(),auth.showEmbeddedLoginFlow("top navigation")}),signOutButton.addEventListener("click",function(e){e.preventDefault(),gtmSendReport("Sign Out",e.target,"user-info-link"),auth.logout()}),auth.isAuthenticated()&&e.classList.add("signed-in"),auth.isSubscriber()&&e.classList.add("subscribed"),e.querySelectorAll(".user-link").forEach(e=>{e.classList.add("active")}),subscriptionPromoLinks.forEach(e=>{updateElementTargetUrlsIfQueryStrings(e)}),appendLandingPageParams(n)})}dropdownItems.forEach(function(e){e.addEventListener("click",function(){e.querySelector(".dropdown").classList.toggle("open")})}),body.addEventListener("click",closeDropdowns),document.addEventListener("keydown",closeDropdowns),globalNav.addEventListener("click",function(e){let n=e.target;n.classList.contains("global-nav-track")&>mSendReport(n.text,n,"global-nav-link")}),module.exports=init;
}, {"1":1,"4":4,"12":12,"124":124,"135":135}];
window.modules["aaa-module-mounting.legacy"] = [function(require,module,exports){"use strict";const _pickBy=require(221),_each=require(406),Fingerprint2=require(408),DS=require(407),Eventify=require(246);function registerGlobals(){window.DS=DS,window.Eventify=Eventify,window.Fingerprint2=Fingerprint2,DS.value("Eventify",Eventify),DS.value("Fingerprint2",Fingerprint2),DS.value("$document",window.document),DS.value("$window",window)}function mountDollarSliceComponents(){DS.service("components",["$document","$module",function(e,n){var o=_pickBy(n.definitions,e=>e.providerStrategy===n.providers.controller),r=Object.keys(o);function t(e){return o=>{try{n.get(e,o)}catch(e){logMountError(o,e)}}}_each(r,n=>{var o=e.querySelectorAll('[data-uri*="/_components/'+n+'/"]'),r=e.querySelectorAll('[data-uri$="/_components/'+n+'"]');_each(o,t(n)),_each(r,t(n))}),this.components=r}]),DS.get("components")}function logMountError(e,n){const o=e.outerHTML.slice(0,e.outerHTML.indexOf(e.innerHTML));console.error("Error attaching controller to "+o,n)}registerGlobals(),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{mountDollarSliceComponents()}):mountDollarSliceComponents();
}, {"221":221,"246":246,"406":406,"407":407,"408":408}];
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";const _map=require(118),_forEach=require(107),_isString=require(268),_intersectionWith=require(409),_isEqual=require(274),_each=require(406),_debounce=require(182),_sortBy=require(205),page=require(124),visit=require(114);DS.service("adService",["Eventify","$cid","$document","$window",function(e,t,a,i){var o,n,s,r,d,c,u,l,g={},p=this,h=[],f=visit.getQueryParamsObject(["utm_campaign"]),m=document.querySelector('script[data-type="ad-a9"]'),b=[],w=!1,v=[],y=document.querySelector('script[data-name="ad-doubleverify"]');document.querySelector('script[data-name="concert-ads"]')||(i.NYM={},i.NYM.analytics={},i.NYM.analytics.adStartTime=i.performance.now(),i.googletag=i.googletag||{},i.googletag.cmd=i.googletag.cmd||[],u=i.googletag,(m||y)&&(i.googletag.cmd=i.googletag.cmd||[],i.googletag.cmd.push(function(){i.googletag.pubads().disableInitialLoad()})),m&&(l=i.setInterval(function(){void 0!==window.apstag&&void 0!==window.apstag.timeout&&(i.clearInterval(l),window.apstag.cleared=!0,l=null)},10),setTimeout(function(){l&&(i.clearInterval(l),i.googletag.pubads().refresh(),window.apstag||console.log("MESSAGE: Timeout for A9 load exceeded, aborting"))},500)),y&&(b.push(new Promise(function(e){w?e():v.push(e)})),c=i.setTimeout(T,2500)),o=function(e){var t,a,o=e.data,n=[];return o.loaded?e:(o.loaded=!0,t=null,(t=o.sizes?u.defineSlot(o.name,o.sizes,o.id).addService(u.pubads()):u.defineOutOfPageSlot(o.name,o.id).addService(u.pubads())).setTargeting("adid",o.id),f.hasOwnProperty("utm_campaign")&&t.setTargeting("utmcamp",f.utm_campaign),a=p.getAdCount(o.label),t.setTargeting("label",o.label+"_"+o.site+"-"+a),u.display(o.id),u.pubads().addEventListener("slotOnload",function(){i.NYM.analytics.firstAdLoadTime||(i.NYM.analytics.firstAdLoadTime=i.performance.now(),i.NYM.analytics.firstAdLoadLabel=e.data.label)}),n=_(o),Promise.all(b).then(function(){n?window.apstag&&window.apstag.cleared?window.apstag.fetchBids({slots:[n],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([t],{changeCorrelator:!1})})}):y&&u.pubads().refresh([t],{changeCorrelator:!1}):u.pubads().refresh([t],{changeCorrelator:!1})}),e.slot=t,e)},n=function(e){var a,i,o,n=t(),s=e.getAttribute("data-name"),r=e.getAttribute("data-sizes"),d=e.getAttribute("data-label"),c=e.getAttribute("data-site");n=e.id,r&&r.length?(r=r.split(","),a=[],_map(r,function(e){e=e.split("x"),i=parseInt(e[0]),o=parseInt(e[1]),a.push([i,o])})):(e.classList.add("oop"),a=!1),this.data={id:n,name:s,sizes:a,loaded:!1,label:d,site:c},g[n]=this},r=function(e){u.cmd.push(function(){var t=o(e);g[e.data.id]=t})},s=function(e){var t=[];e.slot?(t=_(e))&&window.apstag&&window.apstag.cleared&&window.apstag.fetchBids({slots:[t],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([e.slot],{changeCorrelator:!1})})}):e&&r(e)},u.cmd.push(function(){var e,t,o,n=page.getMeta("article:tag"),s=page.getMeta("author"),r=i.location.href,d=(e=a.head.querySelector(".head-gtm"),t=a.body.querySelector(".gtm"),e&&"top"===e.getAttribute("data-gtm")?"gtmtop":t&&"bottom"===t.getAttribute("data-gtm")?"gtmbottom":"");o=[],_forEach([n,s,d],function(e){_forEach(e.split(","),function(e){(e=e.trim().toLowerCase().replace(/\s/g,"-").replace(/\'|\’/g,"")).length&&o.push(e)})}),u.pubads().setTargeting("kw",o),u.pubads().setTargeting("entry_group",o),r=r.slice(r.lastIndexOf("/")+1),u.pubads().setTargeting("pn",r),u.companionAds().setRefreshUnfilledSlots(!0),u.pubads().enableAsyncRendering(),u.enableServices()}),this.load=r,this.create=function(e){return new n(e)},this.refresh=function(e){var t;_isString(e)?(t=this.getById(e),s(t)):s(e)},this.remove=function(e){var t=e.data.id;a.getElementById(t).innerHTML=""},this.getAdCount=function(e){var t,a=0,i=Object.keys(g);return _each(i,function(i){(t=g[i]).data.loaded&&t.data.label===e&&a++}),a},this.getById=function(e){return g[e]},d=_debounce(function(){var e={TopLeaderboard:1,RightColTopMPU:2,outOfPage:99,"homepageTakeover/TopLeaderboard":1},t=_sortBy(h,function(t){return e[t.data.label]||10});_forEach(t,function(e){return e.data.sizes?r(e):i.setTimeout(function(){r(e)},2e3)}),y&&window.PQ.cmd.push(()=>{try{window.PQ.loadSignals(["ids","bsc","vlp"],T)}catch(e){T(),console.error(`There has been an error loading Double Verify signals: ${e}`)}}),h=[]},10),this.addToPageLoadQueue=function(e){h.push(e),d()});function _(e){var t,a=e.sizes;return a=_intersectionWith(a,[[970,250],[970,90],[728,90],[300,600],[300,250],[320,100],[320,50]],_isEqual),e.sizes&&e.sizes.length&&(t={slotID:e.id,sizes:a,slotName:e.label}),t}function T(){i.clearTimeout(c),w=!0,_forEach(v,function(e){e()})}}]);
}, {"107":107,"114":114,"118":118,"124":124,"182":182,"205":205,"268":268,"274":274,"406":406,"409":409}];
window.modules["cid.legacy"] = [function(require,module,exports){"use strict";DS.service("$cid",function(){var r=Math.floor(100*Math.random());return function(){return"cid-"+ ++r}});
}, {}];
window.modules["client.legacy"] = [function(require,module,exports){"use strict";require("cid.legacy"),require("ads.legacy"),require("facebook.legacy"),require("aaa-module-mounting.legacy");
}, {"cid.legacy":"cid.legacy","ads.legacy":"ads.legacy","facebook.legacy":"facebook.legacy","aaa-module-mounting.legacy":"aaa-module-mounting.legacy"}];
window.modules["facebook.legacy"] = [function(require,module,exports){"use strict";DS.service("facebook",[function(){this.fb=function(i){window.FB&&window.FB[i].apply(this,Array.prototype.slice.call(arguments,1))}}]);
}, {}];
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o typeof key === 'string' && key.match(/\.legacy$/)).forEach(key => window.require(key));
}
function tryToMount(fn, el, name) {
try {
fn(el); // init the controller
} catch (e) {
const elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
console.error(`Error initializing controller for "${name}" on "${elementTag}"`, e);
}
}
/**
* mount client.js component controllers
*/
function mountComponentModules() {
Object.keys(window.modules).filter(key => typeof key === 'string' && key.match(/\.client$/)).forEach(key => {
let controllerFn = window.require(key);
if (typeof controllerFn === 'function') {
const name = key.replace('.client', ''),
instancesSelector = `[data-uri*="_components/${name}/"]`,
defaultSelector = `[data-uri$="_components${name}"]`,
instances = document.querySelectorAll(instancesSelector),
defaults = document.querySelectorAll(defaultSelector);
for (let el of instances) {
tryToMount(controllerFn, el, name);
}
for (let el of defaults) {
tryToMount(controllerFn, el, name);
}
}
});
}
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
// services, or components that could require it
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
window.process = window.process || {};
window.process.env = window.process.env || {};
if (!window.process.env.NODE_ENV) {
window.process.env.NODE_ENV = '';
}
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
mountLegacyServices();
mountComponentModules();
// ]]