Home › Chinese Calendar › Chinese Zodiac Calculator (生肖)
Chinese Zodiac Calculator (生肖)
Finds the Chinese zodiac animal (生肖 shengxiao), sexagenary year (干支 ganzhi), stem element, yin/yang, nayin (纳音) and fixed element for a birth date, using either the Chinese New Year boundary or the 立春 (Lichun) boundary, plus the traditional relationship groups (六合, 三合, 六冲, 六害, 相刑) and 本命年 years.
When to use
You need someone's Chinese zodiac sign and element from a Gregorian birth date, especially for January–February births where the boundary matters, or the sign's traditional compatibility groups.
Do not use when: You need a full Bazi chart with month, day and hour pillars (use bazi-four-pillars), or the Western star sign (use zodiac).
Formula
year_used = Gregorian year, minus 1 when birth_date is before Chinese New Year (or before 立春 with boundary = lichun); ganzhi index = (year_used − 4) mod 60; animal = branch = index mod 12; 六合 partner = (13 − b) mod 12; 三合 = b ± 4; 六冲 = b + 6; 六害 partner = (7 − b) mod 12
Popular usage starts the zodiac year at Chinese New Year; Chinese astrology (Bazi) starts it at 立春, so a person born between the two dates can have a different sign under each convention. Relationship groups follow the classical branch tables (六合 子丑 寅亥 卯戌 辰酉 巳申 午未; 三合 申子辰 亥卯未 寅午戌 巳酉丑; 六冲 opposite branches; 六害 子未 丑午 寅巳 卯辰 申亥 酉戌; 相刑 寅巳申, 丑戌未, 子卯, 自刑 辰午酉亥). Traditional calendar/cultural reference calculation; not a prediction, medical, legal or financial advice.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
birth_date | date | yes | Gregorian birth date (civil date in China Standard Time), 1900–2100. | |
boundary | enum: lunar_new_year | lichun | default lunar_new_year | Which event starts the zodiac year: Chinese New Year (popular usage, default) or 立春 around 4 February (astrological usage). | |
reference_year | integer | no | Optional Gregorian year for which to report the age and whether it is a 本命年. Range: ≥ 1900, ≤ 2100 |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
zodiac | string | Animal sign in English. | |
zodiac_cn | string | Animal sign character. | |
year_ganzhi | string | Sexagenary year, e.g. 庚午. | |
year_ganzhi_pinyin | string | Pinyin, e.g. Gengwu. | |
year_english | string | Stem element and animal, e.g. Metal Horse. | |
stem_element | string | Element of the heavenly stem with its character. | |
yin_yang | string | Polarity of the stem (and branch) of the year. | |
nayin | string | Nayin melodic element of the year ganzhi. | |
animal_fixed_element | string | Element of the earthly branch: Rat Water, Ox Earth, Tiger Wood, Rabbit Wood, Dragon Earth, Snake Fire, Horse Fire, Goat Earth, Monkey Metal, Rooster Metal, Dog Earth, Pig Water. | |
year_used | integer | Year number the birth date was assigned to under the chosen boundary. | |
chinese_new_year_date | date | Date of 正月初一 in the Gregorian year of birth. | |
lichun_datetime | string | Instant of 立春 in the Gregorian year of birth (China Standard Time). | |
boundary_note | string | Whether the birth date fell before or after the chosen boundary, and what the other convention would give. | |
benmingnian_years | string_list | Zodiac years of the same animal from the birth year to birth year + 96, with their ganzhi. | |
secret_friend | string | Six-harmony partner of the sign. | |
trine_partners | string | The two other signs of the same triangle of affinity. | |
clash | string | Opposite sign on the 12-branch circle. | |
harm | string | Six-harm counterpart of the sign. | |
punishment | string | Punishment partners: 寅巳申 and 丑戌未 groups, the 子卯 pair, or self-punishment (自刑) for 辰午酉亥. | |
age_in_reference_year | integer | years | Age reached on the birthday in reference_year (reference_year − Gregorian birth year); only when reference_year is given. |
is_benmingnian_in_reference_year | boolean | true when the zodiac year numbered reference_year has the same animal as the birth year; only when reference_year is given. | |
reference_year_zodiac | string | Ganzhi and animal of the year numbered reference_year; only when reference_year is given. |
Example
1990-02-10, New Year boundary (CNY 1990-01-27): {"birth_date":"1990-02-10","boundary":"lunar_new_year","reference_year":2026} → {"zodiac":"Horse","zodiac_cn":"马","year_ganzhi":"庚午","year_ganzhi_pinyin":"Gengwu","year_english":"Metal Horse","year_used":1990,"chinese_new_year_date":"1990-01-27","secret_friend":"Goat (羊)","clash":"Rat (鼠)","age_in_reference_year":36,"is_benmingnian_in_reference_year":true}
1990-02-03 with the 立春 boundary (立春 1990-02-04): {"birth_date":"1990-02-03","boundary":"lichun"} → {"zodiac":"Snake","year_ganzhi":"己巳","year_used":1989,"year_english":"Earth Snake","trine_partners":"Rooster (鸡) and Ox (牛)"}
GET https://tttkmbb.com/api/v1/calculate/chinese-zodiac?birth_date=1990-02-10&boundary=lunar_new_year&reference_year=2026
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/chinese-zodiac(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/chinese-zodiac · Markdown: https://tttkmbb.com/lunar/chinese-zodiac.md · JSON definition: https://tttkmbb.com/lunar/chinese-zodiac.json
- MCP: server
https://tttkmbb.com/mcp, toolfind_chinese_zodiac - OpenAPI operationId:
find_chinese_zodiac - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
FAQ
Which boundary should I use?
For the popular zodiac sign (new-year greetings, birth-year animal) use Chinese New Year. For Bazi/Four Pillars charts and most feng shui schools use 立春 (about 4 February); only births between 立春 and Chinese New Year (or vice versa) are affected.
What is the 'fixed element' of an animal?
The element of the animal's earthly branch (e.g. Horse = 午 = Fire), which never changes; the stem element (Metal Horse, Fire Horse …) cycles with the year.
What is a 本命年?
A year with the same animal as your birth year (every 12 years, e.g. ages 12, 24, 36 …). Tradition treats it as a year to take care in; this is a cultural reference, not a forecast.
Related calculators
- Sexagenary Cycle Calculator (干支) — Full 60-year cycle table and the years sharing a ganzhi.
- Chinese Nominal Age Calculator (虚岁) — Nominal age (虚岁) and next 本命年 from the same birth date.
- Zodiac Sign Calculator — Western star sign for the same birth date.