Birthstone by birth month
Enter a birth month and see its traditional and modern birthstones side by side: for March, the traditional chart lists bloodstone and jasper, while the modern chart leads with aquamarine. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Month
- 3
- Month name
- March
- Traditional
- Bloodstone, Jasper
- Modern
- Aquamarine, Bloodstone
- Traditional primary
- Bloodstone
This birthstone by birth month tool returns the traditional and modern Western gemstones associated with a birth month from January through December. Jewelers, gift planners, and genealogy hobbyists often need both lists side by side because older British trade charts and the modern Jewelers of America style chart do not always name the same stones—March is a classic example, with bloodstone and jasper on the traditional side and aquamarine leading the modern side. Enter a month as an integer from one to twelve; the engine validates the range, maps it to a fixed table, and returns month name, full traditional and modern arrays, primary stones, and comma-joined display strings. The path is fully deterministic: no network calls, no random sampling, and no dependence on the current calendar date.
Traditional and modern birthstones, and what you get
Birthstones are cultural associations between calendar months and gemstones. They are not scientific properties of a birth date, but they are widely used in jewelry marketing, family heirlooms, and personal symbolism. Two parallel Western charts matter in practice.
The traditional list reflects older British and trade associations that often list more than one stone per month—for example March with bloodstone and jasper, August with sardonyx, carnelian, and peridot, or November with topaz and pearl. The modern list follows the widely published Jewelers of America and AGTA-style chart that many retail stores use today: aquamarine for March, pearl with moonstone and alexandrite for June, peridot and spinel for August, topaz and citrine for November, and turquoise with zircon and tanzanite for December.
This calculator always returns both lists for the same month so you can compare them without flipping between reference pages. There is no day-of-month resolution, no zodiac crossover, and no personalization by year—only a pure month-to-stone table suitable for charts, SKUs, and SEO landings that must stay stable across releases.
Where birthstone lookup fits in gifts, retail, and software
Gift shoppers use birth month stones when choosing a pendant, ring, or keepsake for a birthday and want both the modern storefront default and any traditional alternate a grandparent might expect. Retail merchandisers map month numbers from customer profiles into product tags, filter facets, and email campaigns without maintaining a separate spreadsheet. Developers embed the same contract in e-commerce configurators, inventory labeling jobs, and content management blocks that insert "born in March?
try aquamarine" copy with primary and alternate stones. Genealogy and culture sites pair month birthstones with other calendar curiosities while keeping the gem list deterministic. Education and quiz apps can quiz learners on primary modern stones and still show traditional variants in an answer key.
Pair it with zodiac or date-difference tools only when the product story needs them; this page answers only traditional and modern birthstones by month.
What you can do with it
Birthday gift research
Look up traditional and modern stones for a birth month before buying jewelry, charms, or keepsakes.
E-commerce product tags
Map customer birth months to primary and alternate gem labels for filters, SKUs, and automated product copy.
Printable charts and content
Generate a stable twelve-month birthstone table for blogs, brochures, and educational materials.
FAQ
What does the birthstone by birth month tool cost?
It is free in your browser on this page.
What is the difference between traditional and modern birthstones?
Traditional lists follow older British and trade associations; modern lists follow Jewelers of America / AGTA-style charts used by many retailers today. Some months share the same primary stone; others differ (for example March).
What happens if the month is outside 1 to 12?
Only whole-number months from 1 (January) through 12 (December) are accepted.
Does this tool use the day of birth or zodiac sign?
No. It only maps the birth month to fixed traditional and modern gemstone lists. Day-of-month and zodiac boundaries are out of scope.
Which stone should I treat as the main recommendation?
The full traditional and modern arrays include recognized alternates for the same month.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/date/birthstone \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"month":3}'const res = await fetch("https://api.kit.forhosting.com/date/birthstone", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"month": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/birthstone",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"month": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/birthstone", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"month":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"month":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/birthstone", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"month": 3
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.birthstone",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Limits
month_min | 1 |
month_max | 12 |
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Use it free in the browser for quick gift research, or call the API at $0.002 per successful request when you need the same stable lookup inside e-commerce checkouts, printable charts, or automated product copy.
What traditional and modern birthstones mean and what the response contains
The response includes the numeric month, the English month_name, traditional and modern string arrays (primary stone first), traditional_primary and modern_primary as the first entries, traditional_list and modern_list as comma-joined display strings, a method tag birthstone_lookup, and a short formula reminder. Invalid months outside one through twelve, missing month, non-integers, and non-numeric tokens fail with invalid_input and are not charged.
How the month is read and how the lookup stays reproducible
Numeric strings such as "3" or "+07" are accepted when they parse as whole numbers; fractional values, empty strings, hex prefixes, and month names like "March" are rejected with a clear message so a bad cell does not become a silent wrong gem. After validation, the engine indexes two fixed tables and returns shallow copies of the traditional and modern arrays so callers can display or serialize them without mutating shared constants. Primary stones are defined as the first entry in each list, which matches how most gift guides present a default recommendation while still exposing alternates. The preferred field is month, an integer from one to twelve, with aliases m, M, mon, and birth_month so forms, query strings, and spreadsheets can reuse the same contract. Pair the free browser run on this page with the priced API when you need the identical lookup inside an automated pipeline without re-implementing jewelry-trade tables yourself or scraping inconsistent blog charts that change without versioning.
Where birthstone lookup fits in gifts, retail, and software
Wedding and baby-gift planners often need a printable chart for all twelve months; calling this endpoint twelve times yields a consistent table for brochures and landing pages. On this page the work runs entirely in your browser; through the API each successful lookup costs $0.002, failed validation is not charged, and nothing is stored after the response returns. That split—free interactive exploration and a priced, identical API—matches the rest of the KIT tier-A catalog and lets you move from a gift-guide prototype to a production feed without changing the stones returned for each month.