Discover your animal sign, element, and personality traits based on your birth year.
Understanding the Chinese Zodiac (Shengxiao)
The Chinese Zodiac, known as Shengxiao, is a repeating cycle of 12 years, with each year represented by an animal and its reputed attributes. Unlike Western astrology, which is based on months, the Chinese system is based on the lunar calendar and the specific year of your birth.
The 12 Animal Signs
The cycle starts with the Rat and ends with the Pig. According to legend, the order was determined by a "Great Race" organized by the Jade Emperor. The 12 animals are:
Rat (Wisdom)
Ox (Industry)
Tiger (Bravery)
Rabbit (Caution)
Dragon (Strength)
Snake (Flexibility)
Horse (Forwards)
Goat (Unity)
Monkey (Changeability)
Rooster (Constancy)
Dog (Fidelity)
Pig (Amiability)
The Five Elements
In addition to the animal sign, each year is associated with one of five elements: Wood, Fire, Earth, Metal, or Water. These elements rotate every two years, adding another layer of depth to your personality profile. For example, a "Water Dragon" will have different characteristics than a "Wood Dragon."
Example Calculations
To calculate manually, divide the year by 12 and look at the remainder. Alternatively, here are some common reference points:
1988: Year of the Earth Dragon – Powerful, ambitious, and energetic.
1995: Year of the Wood Pig – Compassionate, diligent, and generous.
2000: Year of the Metal Dragon – Determined, honest, and natural leaders.
2012: Year of the Water Dragon – Intelligent, visionary, and adventurous.
function calculateZodiac() {
var yearInput = document.getElementById('birthYear').value;
var resultDiv = document.getElementById('zodiacResult');
var animalTitle = document.getElementById('animalResult');
var elementTitle = document.getElementById('elementResult');
var descText = document.getElementById('descriptionResult');
var luckyText = document.getElementById('luckyNumbers');
if (!yearInput || yearInput 3000) {
alert("Please enter a valid birth year between 1000 and 3000.");
return;
}
var year = parseInt(yearInput);
// Chinese Zodiac Animals (0 = Monkey, based on year % 12)
var animals = [
{ name: "Monkey", trait: "Witty, intelligent, and magnetic personality.", lucky: "4, 9" },
{ name: "Rooster", trait: "Observant, hardworking, and courageous.", lucky: "5, 7, 8" },
{ name: "Dog", trait: "Loyal, honest, and kind-hearted.", lucky: "3, 4, 9" },
{ name: "Pig", trait: "Compassionate, generous, and diligent.", lucky: "2, 5, 8" },
{ name: "Rat", trait: "Quick-witted, resourceful, and versatile.", lucky: "2, 3" },
{ name: "Ox", trait: "Diligent, dependable, strong, and determined.", lucky: "1, 9" },
{ name: "Tiger", trait: "Brave, confident, and competitive.", lucky: "1, 3, 4" },
{ name: "Rabbit", trait: "Quiet, elegant, kind, and responsible.", lucky: "3, 4, 6" },
{ name: "Dragon", trait: "Confident, intelligent, and enthusiastic.", lucky: "1, 6, 7" },
{ name: "Snake", trait: "Enigmatic, intelligent, and wise.", lucky: "2, 8, 9" },
{ name: "Horse", trait: "Animated, active, and energetic.", lucky: "2, 3, 7" },
{ name: "Goat", trait: "Gentle, mild-mannered, and sympathetic.", lucky: "2, 7" }
];
// Elements based on the last digit of the year
var elements = ["Metal", "Metal", "Water", "Water", "Wood", "Wood", "Fire", "Fire", "Earth", "Earth"];
var animalIndex = year % 12;
var lastDigit = year % 10;
var animalObj = animals[animalIndex];
var elementStr = elements[lastDigit];
animalTitle.innerHTML = "You are a " + animalObj.name + "!";
elementTitle.innerHTML = "Element: " + elementStr;
descText.innerHTML = "Personality: " + animalObj.trait;
luckyText.innerHTML = "Lucky Numbers: " + animalObj.lucky;
resultDiv.style.display = "block";
}