Predict your baby's eye color based on parents' and grandparents' genetics
Enter Parent & Grandparent Eye Colors
👨 Father's Side
Brown
Green
Blue
Brown
Green
Blue
Brown
Green
Blue
👩 Mother's Side
Brown
Green
Blue
Brown
Green
Blue
Brown
Green
Blue
Predicted Eye Color Probability
Brown Eyes
0%
Green Eyes
0%
Blue Eyes
0%
How Eye Color Genetics Works
Eye color is determined by the amount and type of pigments in the iris of the eye, primarily melanin. The genetics behind eye color is complex and involves multiple genes, but the most significant genes are OCA2 and HERC2, both located on chromosome 15.
While eye color inheritance was once thought to follow simple Mendelian genetics (brown being dominant over blue), we now understand it's more nuanced. Multiple genes interact to produce the wide spectrum of eye colors we see in humans.
The Role of Melanin
The amount of melanin in the iris determines eye color:
Brown eyes: High melanin concentration in the front layer of the iris
Green eyes: Moderate melanin combined with light scattering (Rayleigh scattering)
Blue eyes: Very low melanin; the blue color comes from light scattering
Important: This calculator provides probability estimates based on simplified genetic models. Actual eye color inheritance is complex and can sometimes produce unexpected results due to the interaction of multiple genes.
Eye Color Probability Chart
The following table shows approximate probabilities for baby eye color based on both parents' eye colors:
Parent 1
Parent 2
Brown %
Green %
Blue %
Brown
Brown
75%
18.75%
6.25%
Brown
Green
50%
37.5%
12.5%
Brown
Blue
50%
0%
50%
Green
Green
0%
75%
25%
Green
Blue
0%
50%
50%
Blue
Blue
0%
1%
99%
Why Grandparent Eye Colors Matter
Parents can carry recessive genes for eye colors that they don't visually express. For example, a brown-eyed parent may carry a recessive blue-eye gene inherited from a blue-eyed grandparent. This is why including grandparent eye colors in the calculation provides a more accurate prediction.
Dominant vs. Recessive Genes
Brown: Generally dominant over green and blue
Green: Dominant over blue but recessive to brown
Blue: Recessive – requires two copies of the blue allele
When a parent has a different eye color than one of their parents, they're likely carrying a hidden recessive gene. Our calculator factors this in to give you more accurate predictions.
When Do Babies' Eyes Change Color?
Most babies are born with blue or gray eyes, regardless of their genetic predisposition. This is because melanin production in the iris isn't complete at birth. Eye color typically stabilizes between 6 months and 3 years of age.
Timeline of Eye Color Development
Birth to 6 months: Eye color may begin to change
6-9 months: Most significant changes occur
1-3 years: Eye color usually reaches its permanent shade
Adulthood: Minor changes can still occur due to age, lighting, or health factors
Frequently Asked Questions
Can two blue-eyed parents have a brown-eyed child?
While extremely rare (less than 1%), it's theoretically possible due to the complex nature of eye color genetics involving multiple genes. However, in most cases, two blue-eyed parents will have blue-eyed children.
Is eye color determined only by genetics?
Genetics is the primary factor, but eye color can also be influenced by lighting conditions, age, and even certain diseases. The perceived color can also change based on clothing, makeup, and surrounding colors.
What about hazel eyes?
Hazel eyes are a combination of brown and green with possible gold or amber flecks. They result from a moderate amount of melanin and can appear to change color in different lighting. For calculation purposes, hazel is typically grouped with brown or green depending on the dominant color.
How accurate is this eye color calculator?
This calculator provides estimates based on simplified genetic models and probability. While it gives a good indication of likely outcomes, actual results can vary due to the complex interaction of 16+ genes that influence eye color.
Can eye color skip a generation?
Yes! Recessive genes can be passed down without being expressed. A grandparent's blue eyes can "skip" a generation if the parent carries but doesn't show the recessive blue allele, then reappear in the grandchild.
function calculateEyeColor() {
var fatherEye = document.getElementById("fatherEye").value;
var fatherMotherEye = document.getElementById("fatherMotherEye").value;
var fatherFatherEye = document.getElementById("fatherFatherEye").value;
var motherEye = document.getElementById("motherEye").value;
var motherMotherEye = document.getElementById("motherMotherEye").value;
var motherFatherEye = document.getElementById("motherFatherEye").value;
var fatherGenes = calculateParentGenes(fatherEye, fatherMotherEye, fatherFatherEye);
var motherGenes = calculateParentGenes(motherEye, motherMotherEye, motherFatherEye);
var brownProb = 0;
var greenProb = 0;
var blueProb = 0;
var fatherAlleles = fatherGenes.alleles;
var motherAlleles = motherGenes.alleles;
for (var i = 0; i < fatherAlleles.length; i++) {
for (var j = 0; j = greenProb && brownProb >= blueProb) {
brownProb += adjustment;
} else if (greenProb >= blueProb) {
greenProb += adjustment;
} else {
blueProb += adjustment;
}
document.getElementById("brownPercent").textContent = brownProb + "%";
document.getElementById("greenPercent").textContent = greenProb + "%";
document.getElementById("bluePercent").textContent = blueProb + "%";
document.getElementById("result").style.display = "block";
}
function calculateParentGenes(parentColor, grandparent1Color, grandparent2Color) {
var alleles = [];
var weights = [];
if (parentColor === "brown") {
alleles.push("B");
weights.push(0.5);
if (grandparent1Color === "blue" || grandparent2Color === "blue") {
alleles.push("b");
weights.push(0.35);
alleles.push("g");
weights.push(0.15);
} else if (grandparent1Color === "green" || grandparent2Color === "green") {
alleles.push("g");
weights.push(0.35);
alleles.push("b");
weights.push(0.15);
} else {
alleles.push("B");
weights.push(0.3);
alleles.push("g");
weights.push(0.12);
alleles.push("b");
weights.push(0.08);
}
} else if (parentColor === "green") {
alleles.push("g");
weights.push(0.5);
if (grandparent1Color === "blue" || grandparent2Color === "blue") {
alleles.push("b");
weights.push(0.4);
alleles.push("g");
weights.push(0.1);
} else if (grandparent1Color === "brown") {
alleles.push("g");
weights.push(0.25);
alleles.push("b");
weights.push(0.25);
} else {
alleles.push("g");
weights.push(0.3);
alleles.push("b");
weights.push(0.2);
}
} else {
alleles.push("b");
weights.push(0.95);
alleles.push("b");
weights.push(0.05);
}
return { alleles: alleles, weights: weights };
}
function determineEyeColor(allele1, allele2) {
if (allele1 === "B" || allele2 === "B") {
return "brown";
} else if (allele1 === "g" || allele2 === "g") {
return "green";
} else {
return "blue";
}
}