Baby Boy Name Generator
Strong, sweet and everything between β generate baby boy names with real meanings, and filter by the letter or origin you love.
β€οΈ Your Favourite Names
44 Boy Names, Real Meanings
Every name is hand-picked with its true meaning and origin β no random letter soup, ever.
Letter & Origin Filters
Want an A name, or a Sanskrit name? Set the filters and generate only the names that fit your family.
A Fresh Set Every Tap
Each generate shows a new mix of 12, so you keep discovering names instead of seeing the same list.
How to Choose a Baby Boy Name You Will Love for Life
Short and strong, classic, or rich with heritage β here is how parents narrow 44 great names down to the one.
The styles parents are choosing now
Three styles lead the way. Short and strong names β Leo, Dev, Neil β are easy to say in every language and age beautifully. Classic comebacks like Theodore, Henry and Felix feel grand without feeling old. And heritage favourites such as Aarav, Arjun and Kabir carry deep meaning from Sanskrit roots. This generator holds all three styles, each with its meaning shown on the card.
Names parents keep saving
The boy names saved most often from this list include Aarav, Liam, Noah, Oliver, Arjun, Kabir, Leo and Mateo β a mix of global favourites and meaningful classics. Tap the heart on any name to start your own shortlist, then compare it with your partner’s.
Three tests before you decide
Say the full name out loud with your surname. Check the initials spell nothing unfortunate. And picture the name at every age β on a toddler, a teenager and a wedding card. A name that passes all three tests is very rarely regretted. Still stuck between two? Try each as a middle name pairing with our Middle Name Generator.
More Name Tools You’ll Love
Every tool is free and works the same simple way β pick, generate, save your favourites.
Baby Name Generator
Beautiful baby names with real meanings.
Name Combiner
Blend two names into one unique name.
Middle Name Generator
Find the perfect middle name that flows.
Wedding Hashtag Generator
Catchy hashtags from the couple’s names.
Sibling Name Generator
Names that match your first child’s name.
Couple Nickname Generator
Cute nicknames for you and your partner.
Couple Name Combiner
Merge two names into one couple name.
Love Nickname Generator
Sweet pet names for someone you love.
Baby Girl Name Generator
Beautiful names for baby girls.
Gender Neutral Baby Name Generator
Modern names that suit any baby.
Twin Baby Name Generator
Matching name pairs for twins.
Baby Name Poster Generator
Turn your baby’s name into a poster.
Frequently Asked Questions
Quick answers about baby boy names and how this generator works.
const favs = new Set(); const $ = s => document.querySelector(s); function toast(msg){ const t=$("#toast"); t.textContent=msg; t.classList.add("show"); setTimeout(()=>t.classList.remove("show"),1600); } function copyText(txt,msg){ if(navigator.clipboard && navigator.clipboard.writeText){ navigator.clipboard.writeText(txt).then(()=>toast(msg||("Copied: "+txt))).catch(()=>toast(txt)); } else { const ta=document.createElement("textarea"); ta.value=txt; document.body.appendChild(ta); ta.select(); try{document.execCommand("copy"); toast(msg||("Copied: "+txt));}catch(e){toast(txt);} document.body.removeChild(ta); } } function renderFavs(){ $("#favCount").textContent = favs.size; const list=$("#favList"); list.innerHTML=""; if(!favs.size){ list.innerHTML='No favourites yet β tap π€ on any name card.'; return; } favs.forEach(n=>{ const it=document.createElement("span"); it.className="fav-item"; it.innerHTML = n + ' '; list.appendChild(it); }); } function cardHTML(name, sub, tags){ return '
' + '
' + (sub ? '
' : '') + (tags || ''); } document.addEventListener("click", e=>{ const c=e.target.closest("[data-copy]"); if(c){ copyText(c.getAttribute("data-copy")); return; } const f=e.target.closest("[data-fav]"); if(f){ const n=f.getAttribute("data-fav"); if(favs.has(n)){ favs.delete(n); f.classList.remove("faved"); f.textContent="π€"; } else { favs.add(n); f.classList.add("faved"); f.textContent="β€οΈ"; toast("Saved: "+n); } renderFavs(); return; } const u=e.target.closest("[data-unfav]"); if(u){ favs.delete(u.getAttribute("data-unfav")); renderFavs(); if(window.refreshResults) refreshResults(); return; } }); $("#favToggle").addEventListener("click", ()=>{ const p=$("#favPanel"); p.classList.toggle("open"); p.hidden = !p.classList.contains("open"); }); $("#copyFavs").addEventListener("click", ()=>{ if(favs.size) copyText([...favs].join(", "), "Favourites list copied!"); else toast("No favourites yet"); }); $("#clearFavs").addEventListener("click", ()=>{ favs.clear(); renderFavs(); if(window.refreshResults) refreshResults(); }); $("#dlFavs").addEventListener("click", ()=>{ if(!favs.size){ toast("No favourites yet"); return; } const blob=new Blob(["My Favourite Names\n\n"+[...favs].join("\n")],{type:"text/plain"}); const a=document.createElement("a"); a.href=URL.createObjectURL(blob); a.download="my-favourite-names.txt"; a.click(); URL.revokeObjectURL(a.href); toast("List downloaded!"); }); document.querySelectorAll(".faq-q").forEach(q=> q.addEventListener("click", ()=>{ const it=q.parentElement; it.classList.toggle("open"); const an=it.querySelector(".faq-a"); if(an) an.hidden = !it.classList.contains("open"); })); renderFavs();
const NAMES = [ // ---- BOYS ---- {n:"Aarav",m:"Peaceful sound",o:"Sanskrit",g:"boy"},{n:"Liam",m:"Strong-willed warrior",o:"Irish",g:"boy"}, {n:"Noah",m:"Rest, comfort",o:"Hebrew",g:"boy"},{n:"Oliver",m:"Olive tree",o:"Latin",g:"boy"}, {n:"Elijah",m:"Yahweh is God",o:"Hebrew",g:"boy"},{n:"Mateo",m:"Gift of God",o:"Spanish",g:"boy"}, {n:"Arjun",m:"Bright, shining",o:"Sanskrit",g:"boy"},{n:"Vihaan",m:"Dawn, first light",o:"Sanskrit",g:"boy"}, {n:"Advait",m:"Unique, one of a kind",o:"Sanskrit",g:"boy"},{n:"Kabir",m:"The great one",o:"Arabic",g:"boy"}, {n:"Reyansh",m:"Ray of light",o:"Sanskrit",g:"boy"},{n:"Krishna",m:"Divine, all-attractive",o:"Sanskrit",g:"boy"}, {n:"Lucas",m:"Light-giving",o:"Latin",g:"boy"},{n:"Theodore",m:"Gift of God",o:"Greek",g:"boy"}, {n:"Henry",m:"Home ruler",o:"German",g:"boy"},{n:"Leo",m:"Lion",o:"Latin",g:"boy"}, {n:"Ezra",m:"Helper",o:"Hebrew",g:"boy"},{n:"Asher",m:"Happy, blessed",o:"Hebrew",g:"boy"}, {n:"Atlas",m:"Bearer of the heavens",o:"Greek",g:"boy"},{n:"Milo",m:"Soldier, merciful",o:"German",g:"boy"}, {n:"Felix",m:"Lucky, successful",o:"Latin",g:"boy"},{n:"Omar",m:"Flourishing, long-lived",o:"Arabic",g:"boy"}, {n:"Zayn",m:"Beauty, grace",o:"Arabic",g:"boy"},{n:"Rafael",m:"God has healed",o:"Hebrew",g:"boy"}, {n:"Dante",m:"Enduring",o:"Latin",g:"boy"},{n:"Hugo",m:"Mind, spirit",o:"German",g:"boy"}, {n:"Elias",m:"The Lord is my God",o:"Greek",g:"boy"},{n:"Rowan",m:"Little red one",o:"Irish",g:"boy"}, {n:"Silas",m:"Of the forest",o:"Latin",g:"boy"},{n:"Arlo",m:"Fortified hill",o:"English",g:"boy"}, {n:"Dev",m:"Divine, godly",o:"Sanskrit",g:"boy"},{n:"Ivan",m:"God is gracious",o:"Russian",g:"boy"}, {n:"Cyrus",m:"Sun",o:"Persian",g:"boy"},{n:"Yusuf",m:"God increases",o:"Arabic",g:"boy"}, {n:"Rohan",m:"Ascending, blossoming",o:"Sanskrit",g:"boy"},{n:"Ayaan",m:"Gift of God",o:"Arabic",g:"boy"}, {n:"Idris",m:"Interpreter, studious",o:"Arabic",g:"boy"},{n:"Emil",m:"Eager, striving",o:"Latin",g:"boy"}, {n:"Kian",m:"King, grace of God",o:"Persian",g:"boy"},{n:"Naveen",m:"New, fresh",o:"Sanskrit",g:"boy"}, {n:"Tarun",m:"Young, youthful",o:"Sanskrit",g:"boy"},{n:"Milan",m:"Gracious, dear",o:"Slavic",g:"boy"}, {n:"Bodhi",m:"Awakening, enlightenment",o:"Sanskrit",g:"boy"},{n:"Neil",m:"Champion",o:"Irish",g:"boy"}, // ---- GIRLS ---- {n:"Aadhya",m:"First power",o:"Sanskrit",g:"girl"},{n:"Diya",m:"Lamp, light",o:"Sanskrit",g:"girl"}, {n:"Anaya",m:"God's answer",o:"Sanskrit",g:"girl"},{n:"Ira",m:"Earth, goddess Saraswati",o:"Sanskrit",g:"girl"}, {n:"Meera",m:"Devotee of Krishna",o:"Sanskrit",g:"girl"},{n:"Saanvi",m:"Goddess Lakshmi",o:"Sanskrit",g:"girl"}, {n:"Aanya",m:"Gracious, without limit",o:"Sanskrit",g:"girl"},{n:"Kiara",m:"Famous, bright",o:"Italian",g:"girl"}, {n:"Myra",m:"Extraordinary, poetic invention",o:"Greek",g:"girl"},{n:"Tara",m:"Star",o:"Sanskrit",g:"girl"}, {n:"Luna",m:"Moon",o:"Latin",g:"girl"},{n:"Isla",m:"Island",o:"Scottish",g:"girl"}, {n:"Freya",m:"Noble lady",o:"Norse",g:"girl"},{n:"Amelia",m:"Industrious, striving",o:"German",g:"girl"}, {n:"Sophia",m:"Wisdom",o:"Greek",g:"girl"},{n:"Aria",m:"Air, melody",o:"Italian",g:"girl"}, {n:"Ella",m:"Fairy maiden",o:"German",g:"girl"},{n:"Nora",m:"Light, honour",o:"Arabic",g:"girl"}, {n:"Layla",m:"Night",o:"Arabic",g:"girl"},{n:"Zara",m:"Blooming flower",o:"Arabic",g:"girl"}, {n:"Maya",m:"Dream, illusion",o:"Sanskrit",g:"girl"},{n:"Inaya",m:"Care, concern",o:"Arabic",g:"girl"}, {n:"Elif",m:"Slender, first letter",o:"Turkish",g:"girl"},{n:"Amara",m:"Grace, eternal",o:"Latin",g:"girl"}, {n:"Sana",m:"Radiance, brilliance",o:"Arabic",g:"girl"},{n:"Riya",m:"Singer",o:"Sanskrit",g:"girl"}, {n:"Priya",m:"Beloved",o:"Sanskrit",g:"girl"},{n:"Kavya",m:"Poetry",o:"Sanskrit",g:"girl"}, {n:"Anika",m:"Graceful, brilliant",o:"Sanskrit",g:"girl"},{n:"Veda",m:"Knowledge, wisdom",o:"Sanskrit",g:"girl"}, {n:"Hazel",m:"Hazelnut tree",o:"English",g:"girl"},{n:"Ivy",m:"Faithfulness",o:"English",g:"girl"}, {n:"Clara",m:"Bright, clear",o:"Latin",g:"girl"},{n:"Esme",m:"Loved, esteemed",o:"French",g:"girl"}, {n:"Paloma",m:"Dove",o:"Spanish",g:"girl"},{n:"Selene",m:"Moon goddess",o:"Greek",g:"girl"}, {n:"Wren",m:"Small bird",o:"English",g:"girl"},{n:"Opal",m:"Precious gem",o:"Sanskrit",g:"girl"}, {n:"June",m:"Young, sixth month",o:"Latin",g:"girl"},{n:"Celine",m:"Heavenly",o:"French",g:"girl"}, {n:"Talia",m:"Dew of heaven",o:"Hebrew",g:"girl"},{n:"Nia",m:"Purpose",o:"Swahili",g:"girl"}, {n:"Rania",m:"Queenly, gazing",o:"Arabic",g:"girl"},{n:"Samira",m:"Entertaining companion",o:"Arabic",g:"girl"}, {n:"Yamini",m:"Night",o:"Sanskrit",g:"girl"}, // ---- GENDER NEUTRAL ---- {n:"Arya",m:"Noble",o:"Sanskrit",g:"neutral"},{n:"Jordan",m:"To flow down",o:"Hebrew",g:"neutral"}, {n:"Taylor",m:"Tailor, cutter of cloth",o:"English",g:"neutral"},{n:"Reese",m:"Enthusiasm, ardour",o:"Welsh",g:"neutral"}, {n:"River",m:"Flowing water",o:"English",g:"neutral"},{n:"Sage",m:"Wise one",o:"Latin",g:"neutral"}, {n:"Noor",m:"Light",o:"Arabic",g:"neutral"},{n:"Kiran",m:"Ray of light",o:"Sanskrit",g:"neutral"}, {n:"Quinn",m:"Chief, wisdom",o:"Irish",g:"neutral"},{n:"Avery",m:"Ruler of the elves",o:"English",g:"neutral"}, {n:"Elliot",m:"The Lord is my God",o:"Hebrew",g:"neutral"},{n:"Finley",m:"Fair warrior",o:"Irish",g:"neutral"}, {n:"Remy",m:"Oarsman",o:"French",g:"neutral"},{n:"Sasha",m:"Defender of mankind",o:"Russian",g:"neutral"}, {n:"Teagan",m:"Little poet",o:"Irish",g:"neutral"},{n:"Akira",m:"Bright, clear",o:"Japanese",g:"neutral"}, {n:"Indigo",m:"Deep blue dye",o:"Greek",g:"neutral"},{n:"Robin",m:"Bright fame",o:"German",g:"neutral"}, {n:"Skyler",m:"Scholar",o:"Dutch",g:"neutral"},{n:"Zen",m:"Meditation",o:"Japanese",g:"neutral"}, {n:"Wynn",m:"Friend, joy",o:"Welsh",g:"neutral"},{n:"Jai",m:"Victory",o:"Sanskrit",g:"neutral"}, {n:"Devon",m:"Poet, divine",o:"Irish",g:"neutral"},{n:"Lorin",m:"Laurel crown",o:"Latin",g:"neutral"} ]; const BOYS = NAMES.filter(x => x.g === "boy"); const letterSel = $("#letterSel"), originSel = $("#originSel"); "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").forEach(L => { const o = document.createElement("option"); o.value = L; o.textContent = L; letterSel.appendChild(o); }); [...new Set(BOYS.map(x => x.o))].sort().forEach(org => { const o = document.createElement("option"); o.value = org; o.textContent = org; originSel.appendChild(o); }); function generate(){ let pool = BOYS.slice(); const L = letterSel.value, O = originSel.value; if (L) pool = pool.filter(x => x.n.startsWith(L)); if (O) pool = pool.filter(x => x.o === O); const box = $("#results"); box.innerHTML = ""; if (!pool.length){ box.innerHTML = '
'; $("#countLine").textContent = ""; return; } pool.sort(() => Math.random() - 0.5); const shown = pool.slice(0, 12); shown.forEach((x, i) => { const card = document.createElement("div"); card.className = "name-card"; card.style.animationDelay = (i * 0.03) + "s"; card.innerHTML = cardHTML(x.n, x.m, 'π¦ Boy ' + x.o + ''); box.appendChild(card); }); $("#countLine").textContent = "Showing " + shown.length + " of " + pool.length + " matching boy names (44 total) β tap Generate for a fresh set"; } window.refreshResults = generate; $("#genBtn").addEventListener("click", generate); letterSel.addEventListener("change", generate); originSel.addEventListener("change", generate); generate();