ByTembe Denton-Hurst,
a writer at the Strategist covering beauty and books. She joined the site in 2020. Previously, she wrote about beauty and culture for Nylon and Elle.
Photo-Illustration: Curbed; Photo Getty Images
To find the braiders on this list, we polled dozens of New Yorkers with braids, including writers, models, and makeup artists. They told us about the stylists they trust to perfect a braided bob, create knotless box braids, create intricate cornrows, and style Bantu knots, all with great care and attention to detail. Some of these salons even take walk-ins or make house calls across the five boroughs.
Tucked between a honky-tonk bar and an Italian café is Nicko’s Unisex Salon, a barbershop–slash–hair salon that offers crisp lineups, well-blended fades, and exceptionally neat braids. The braider on staff is cosmetologist Brittney JoLette, who can do any kind of cornrow — straight back, swirly parts, and stitch braids (from $50). Cornrows are among the most basic braiding styles but aren’t the easiest to pull off. Clean parts and neatness are key, which wardrobe stylist Alexander-Julian Gibbson says JoLette has mastered. He visits her every three to four weeks and switches between cornrows, plaits, and twists. “She takes care of everything,” he says, including “washing and blow-drying without charging extra.” The full-service aspect is why model Enga Domingue is also a fan, saying she received a complimentary trim when her ends were “so fried” after Fashion Week. “She always goes above and beyond for her services and is communicative and punctual, which can be really hard to find in a braider, respectfully,” Domingue says. “She has worked with me many times and even for super-short-notice calls.”
For Walk-ins
Aminata African Hair Braiding, 289 St. Nicholas Ave., second floor; 212-932-0433
These days, many braiders (especially the ones you’ll find on Instagram) are available by appointment only, but there are still plenty of traditional African braiding shops, which you can walk right into, doing solid, neat work. Located above a Checkers just off 125 Street in Harlem, Aminata African Hair Braiding has been a reliable spot for over 30 years, offering fair pricing (mid-back knotless braids from $160) and quick styling. “It’s an institution in Harlem,” says Shaquela Myrick, a marketing strategist who visited annually for cornrows when she lived in the neighborhood. Also on offer are Beyoncé-inspired Lemonade braids, feed-in ponytails, and braided bobs, and an empty chair is typically ready and waiting. “I was always able to walk in, sit down, and be worked on right away,” says Myrick. The stylists are also quick. Hairstyles that might take upwards of four hours take less time here, where there may be two braiders or more working on a client at a time. The salon also provides the hair for most styles at no additional charge.
The latest evolution of box braids are boho braids, which feature curly tendrils sprouting from the plait to give the wearer an ethereal, not-quite-a-sew-in-but-still-wet-and-wavy look. They aren’t easy to get right, but Shanna St. Cyr of TropixBraids has made them her signature (from $400). Braider to a cadre of beauty editors and writers — EveryStylishGirl founder Nana Agyemang is a client along with Vogue editor Naomi Elizée, who heard about her from Essence senior fashion editor Devine Blacksher — she’s beloved for her neat braids and ability to take an inspiration photo and make it her own. “She adds a little fun and variation to match your personality,” says Elizée. Blacksher, who has been going to St. Cyr for six years, agrees. When St. Cyr first did her hair back in 2017, she hadn’t gotten braids since high school, and didn’t know exactly what to get. St. Cyr helped her figure out the right hair, style, and size to accommodate her one request: “Everything has to fit under this bucket hat.” She started with box braids, but in the years since, Blacksher has had everything from cornrows to feed-ins to Bantu knots and eventually those boho braids. “I got them for my birthday trip to Brazil last year and was diving in the ocean with them and they still looked good after,” she says — unusual for a style that can shed and get messy after a week or two of wear. She kept hers in for a month.
.
Ask a Braider
Shanna St. Cyr,owner of Tropixbraids
Illustration: Pete Gamlen
You ask clients to bring a specific brand of hair called Ruwa. Why? I look for a lot of things when it comes to braiding hair. Is it light? Will it frizz after dipping it in hot water? Ruwa is my go-to. It’s lightweight, it stays smooth after being dipped, and it just looks good. It’s also anti-itch, which is important for my clients with allergies.
Is there a brand that’s completely allergen free? For clients who have really bad allergies, I recommend cleansing the hair before putting it in — dip the hair in warm water with a little apple-cider vinegar and let it dry. That way, you break down some of the chemicals that are on the hair.
Do you only work with synthetic hair? No. For clients who prefer human hair, I use it. It blends in well with your natural hair, you won’t have a problem with itching, you can wash and reuse it, and it gives a more natural look. But I do think using synthetic hair makes sense: It’s less expensive, and you get longer strands than with human hair.
You ask that clients come alone. Why is that? I love a one-on-one session. As women, when we’re able to get a service done, we want to be able to relax, just sit in that moment. And for me, braiding is not just a service. I get to talk to women, mentor women, and it becomes an experience. There’s no distraction. I have moms that are sometimes like, “Hey, is it possible to bring my child? I don’t have someone to babysit.” I make exceptions for that.
Any advice for someone coming in for the first time? Know what you want. That’s most important.
— Katie Arnold-Ratliff
For Kids (and Tender-Headed Adults)
HairMuse, Contact for location; 929-340-6167
Braiding can be a long and sometimes uncomfortable process, which is why many stylists won’t service young, squirming, impatient kids. But Terrye Morgan, known to her clients as Hairmuse, has a special touch. She’s “very patient,” says Nico DaCosta-Finocchio, a permanent-makeup artist who has been taking her daughters to see Morgan for the past three years. She was looking for someone who would be sweet and kind to her twins, Parker and Paiden, then 5, and saw Real Housewives of New York City star Sai De Silva posting about her and her daughter going to Morgan and she was sold. DaCosta-Finocchio was impressed with her bedside manner (offering snacks and suggesting an iPad placement that wouldn’t strain her kids’ necks) and her emphasis on hair health. “She is gentle on my twins’ edges and their hair in general,” she says. Her soft touch means she’s loved by tender-headed adults as well. Recently, writer Hunter Harris went to her for knotless braids (starting at $150) and said it was the most lightweight install she’s ever had. “By hour five or six, I honestly thought we weren’t even halfway because I couldn’t feel any braids,” she says. “Then she told me I was done.” Clients can do their own braid prep or have Morgan shampoo and blow-dry their hair.
For Off-Menu Styles
Slayed in Braids,380 Mother Gaston Blvd., Brownsville; 347-557-2803; slayedinbraids.as.me
Helena Koudou can braid swirls, stars, S-curls, and dollar signs into scalps, transforming straight backs into an art piece. She specializes in editorial hairstyles, and her work regularly pops up in fashion magazines and art exhibitions — Koudou did the hair for Josef Adamu’s photo series “The Hair Appointment.” Her service list includes intricate freestyle braids (from $200), beaded cornrows (from $190), and every style box braid you can think of (from $80) — but she can also do just about anything her clients come up with. “She loves to collaborate,” says author and model Kendra Austin. “And she can also do simple styles meticulously.” Delisa Shannon, a supervising producer at Rolling Stone, brought Koudou pictures of the Mary Jane Girls and Da Brat — shoulder length, heavily beaded — and from there, they came up with hime-style braids that frame Shannon’s face. Koudou works out of a family-owned shop in Brooklyn, a low-key spot in Brownsville, but she also does house calls, convenient for those who WFH. Another benefit: She has a light hand, ideal for anyone who is tender-headed or has struggled with too-tight braids. Austin says, “You almost wouldn’t believe the braids would be tight enough to last, but they always do.”
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();
// ]]