Цены на золото по каратам: 24K, 22K, 18K и как их рассчитать
Что означают 24K, 22K и 18K, как с ними связаны пробы 916 и 750, как рассчитать цену грамма золота по каратам и как получить её через API цен на золото.
Карат и чистота золота
Карат — мера чистоты золота, а не его массы. Чистое золото — это 24 карата, поэтому доля золота в сплаве равна числу карат, делённому на 24. Золото 18 карат — это 18 частей золота и 6 частей других металлов, например серебра, меди, цинка или палладия, которые делают сплав твёрже, меняют его цвет и снижают стоимость.
В английском языке легко перепутать karat (K или kt) и carat (ct). В американском английском karat — это чистота, а carat — единица массы драгоценных камней, равная 200 миллиграммам. В британском английском carat часто используют в обоих значениях, а по-русски оба понятия называются «карат». Эндпоинт MetalAPI называется /carat — по более распространённому написанию, — но возвращает цены на золото по чистоте, а не по массе камней.
Формула, связывающая цену по каратам с рынком золота, короткая:
цена грамма золота K карат = спотовая цена за тройскую унцию ÷ 31,1034768 × K ÷ 24
В этой статье разобрана каждая часть формулы, показано, как вычислить цену самостоятельно и как получить её через API, а затем — чем цена золота по каратам отличается от цены готового ювелирного изделия.
Каратность и проба
Во многих странах, в том числе в России, золото маркируют пробой — числом частей чистого золота на тысячу — вместо карата или рядом с ним. Эти две шкалы напрямую соответствуют друг другу:
| Караты | Чистота (K ÷ 24) | Содержание золота | Проба (частей на 1 000) |
|---|---|---|---|
| 24K | 1,0000 | 100% | 1000 (слитки — 999 или 999,9) |
| 23K | 0,9583 | 95,8% | 958,3 |
| 22K | 0,9167 | 91,7% | 916,7 (клеймо 916) |
| 21K | 0,8750 | 87,5% | 875 |
| 20K | 0,8333 | 83,3% | 833,3 |
| 18K | 0,7500 | 75,0% | 750 |
| 16K | 0,6667 | 66,7% | 666,7 |
| 14K | 0,5833 | 58,3% | 583,3 (клеймо 585) |
| 12K | 0,5000 | 50,0% | 500 |
| 10K | 0,4167 | 41,7% | 416,7 (клеймо 417) |
| 9K | 0,3750 | 37,5% | 375 |
| 8K | 0,3333 | 33,3% | 333,3 (клеймо 333) |
Переводя эту таблицу в цены, учитывайте две детали:
- Пробирные клейма — это минимальные стандарты. Клеймо 585 означает не менее 58,5% золота, что чуть больше, чем 14 ÷ 24 = 58,33%. Каждая страна устанавливает собственные стандарты и допуски, поэтому фактическая проба изделия может быть немного выше доли, соответствующей каратам.
- Чистое золото — это не совсем 1,0000. Инвестиционные слитки обычно имеют пробу 999,9 или 999. Цена 24K в MetalAPI рассчитывается при чистоте ровно 1, поэтому она равна спотовой цене.
Какие караты важны, зависит от того, где вы продаёте. 22K и 21K традиционны для ювелирных изделий в Южной Азии и на большей части Ближнего Востока, 18K и 14K распространены в Европе и Северной Америке, а 9K — в Великобритании. Поддерживайте то, что действительно покупают ваши клиенты.
Самостоятельный расчёт цен по каратам
Спотовое золото котируется за тройскую унцию чистого золота. Чтобы получить цену грамма по каратам, переведите единицу измерения, а затем умножьте на чистоту. Возьмём пример спотовой цены из документации MetalAPI — 3 997,89 USD за тройскую унцию (это иллюстрация, а не текущая цена):
- Цена грамма чистого золота: 3 997,89 ÷ 31,1034768 = 128,5351 USD.
- Цена грамма золота 22K: 128,5351 × 22 ÷ 24 = 117,8239 USD.
- Цена грамма золота 18K: 128,5351 × 18 ÷ 24 = 96,4014 USD.
Тот же расчёт на JavaScript, а также вторая функция для расчёта цены по пробе вместо карат:
const GRAMS_PER_TROY_OZ = 31.1034768;
/** Цена грамма золота заданной каратности (24 = чистое золото). */
export function karatPricePerGram(spotPerTroyOz, karat) {
return (spotPerTroyOz / GRAMS_PER_TROY_OZ) * (karat / 24);
}
/** Цена грамма при заданной пробе, например 585 или 916. */
export function finenessPricePerGram(spotPerTroyOz, fineness) {
return (spotPerTroyOz / GRAMS_PER_TROY_OZ) * (fineness / 1000);
}
const spot = 3997.89; // пример цены, USD за тройскую унцию
for (const k of [24, 22, 21, 18, 14, 10, 9]) {
console.log(`${k}K`, karatPricePerGram(spot, k).toFixed(4));
}
// 24K 128.5351, 22K 117.8239, 21K 112.4683, 18K 96.4014, 14K 74.9788, 10K 53.5563, 9K 48.2007
console.log("585", finenessPricePerGram(spot, 585).toFixed(4)); // 75.1931Начинайте со спотовой цены, которая уже выражена в валюте продажи (base=EUR, base=INR и так далее), чтобы цена золота и валютный курс относились к одному и тому же моменту. Если пересчитывать долларовую цену грамма по курсу, полученному в другое время, появляется погрешность, которая не имеет никакого отношения к золоту.
Если вы назначаете цены по пробе, а не по каратам, используйте функцию для пробы. Разница между 583,3 и 585 составляет около 0,3% стоимости металла: немного для одного грамма, но заметно на тяжёлой цепи. Что бы вы ни выбрали, применяйте это последовательно и документируйте.
Цены по каратам через эндпоинт /carat
MetalAPI выполняет эти вычисления за вас в /carat — эндпоинте, доступном на всех платных тарифах начиная с Lite. Он принимает следующие параметры:
carat:24(по умолчанию),23,22,21,20,18,16,14,12,10,9,8илиall.base: валюта цен, по умолчаниюUSD.unit: по умолчаниюtroy_oz; для ювелирных изделий обычно выбираютgram.date: необязательная дата в форматеYYYY-MM-DDдля цен по каратам за прошедший день.
curl "https://metalapi.com/api/v1/carat?carat=22&unit=gram&base=EUR" \
-H "X-API-Key: $METALAPI_KEY"Ответ с примерами значений из справочника API:
{
"success": true,
"carat": "22",
"date": "2026-10-24",
"base": "EUR",
"timestamp": 1792834892,
"rates": {
"XAU22K": { "price": 105.5297, "unit": "gram", "carat": "22", "purity": 0.916667 }
}
}С carat=all вы получаете все караты одним запросом, который стоит столько же, сколько запрос одного карата. Ключ каждой записи имеет вид XAU<karat>K, а сама запись содержит цену, единицу измерения, каратность и применённую чистоту. Пример приведён в сокращённом виде:
{
"success": true,
"carat": "all",
"date": "2026-10-23",
"base": "USD",
"timestamp": 1792765800,
"rates": {
"XAU24K": { "price": 128.53515, "unit": "gram", "carat": "24", "purity": 1 },
"XAU22K": { "price": 117.82389, "unit": "gram", "carat": "22", "purity": 0.916667 },
"XAU18K": { "price": 96.401361, "unit": "gram", "carat": "18", "purity": 0.75 },
"XAU14K": { "price": 74.978836, "unit": "gram", "carat": "14", "purity": 0.583333 }
}
}Получение цен всех карат в дирхамах ОАЭ за грамм на Node.js 18 и новее:
const params = new URLSearchParams({ carat: "all", unit: "gram", base: "AED" });
const res = await fetch(`https://metalapi.com/api/v1/carat?${params}`, {
headers: { "X-API-Key": process.env.METALAPI_KEY },
});
const data = await res.json();
if (!data.success) throw new Error(`${data.error.code} ${data.error.type}: ${data.error.info}`);
for (const row of Object.values(data.rates)) {
console.log(`${row.carat}K: ${row.price.toFixed(2)} ${data.base} per ${row.unit}`);
}На тарифе Free /carat возвращает ошибку 106 (plan_restriction) вместе с upgrade_url. Для неподдерживаемой каратности возвращается ошибка 210 (invalid_carat). На Free можно применять приведённую выше формулу к цене золота из /latest — с ежедневным интервалом обновления, который действует на этом тарифе.
Цены в местной валюте
Ювелирные изделия покупают и продают в местной валюте, поэтому укажите в base валюту магазина: INR для рупий, AED для дирхамов, TRY для лир, GBP для фунтов. Работают все 57 поддерживаемых валют, а поскольку цена золота и валютный курс берутся из одного снимка, числа согласованы между собой.
# Все караты в индийских рупиях за грамм
curl "https://metalapi.com/api/v1/carat?carat=all&unit=gram&base=INR" \
-H "X-API-Key: $METALAPI_KEY"
# 22K в турецких лирах за грамм на прошедшую дату
curl "https://metalapi.com/api/v1/carat?carat=22&unit=gram&base=TRY&date=2026-10-01" \
-H "X-API-Key: $METALAPI_KEY"Для рынков, где цены указывают в тола, умножьте цену грамма на 11,6638038 или цену тройской унции на 0,375. Слиток в 10 тола весит 116,638 г. Точные коэффициенты для тола, таэлей и пеннивейтов приведены в статье о пересчёте единиц.
Три практических момента:
- Свежесть зависит от тарифа.
/caratвозвращает цены настолько свежие, насколько позволяет ваш тариф: каждые 30 минут на Lite, каждые 10 минут на Standard и вплоть до 5 секунд на Enterprise. Магазину, который обновляет табло с ценами несколько раз в день, не нужен самый быстрый тариф. - Показывайте метку времени. Поле
timestampсообщает клиентам и аудиторам, на какой момент получена цена. - Выходные. Торги спотовым золотом останавливаются в пятницу в 17:00 по нью-йоркскому времени и возобновляются в воскресенье в 17:00, поэтому в выходные цены по каратам остаются на уровне последней цены пятницы.
От цены по каратам к цене украшения
Цена по каратам — это стоимость содержащегося в изделии золота. Цена готового изделия включает ещё несколько составляющих, и способ их расчёта зависит от страны, торговых обычаев и самого бизнеса. Обычно это следующие компоненты:
- Стоимость металла: чистый вес золота × цена грамма по каратам. Камни, жемчуг и другие части не из золота взвешиваются отдельно и не учитываются.
- Стоимость работы: труд и дизайн; рассчитывается за грамм, в процентах от стоимости металла или фиксированной суммой за изделие. На некоторых рынках добавляют ещё надбавку на угар — металл, потерянный при производстве.
- Камни и другие материалы: оцениваются по собственным правилам.
- Сборы за опробование и клеймение или сертификацию, если они применяются.
- Налоги: НДС, GST или налог с продаж. Ставки и правила различаются по странам, а в некоторых странах инвестиционное золото облагается иначе, чем ювелирные изделия. Например, в ЕС инвестиционное золото подпадает под специальное освобождение от НДС, которое не распространяется на ювелирные изделия.
Вот минимальный калькулятор стоимости, в котором эти составляющие учитываются отдельно. В нём везде используется Decimal, чтобы суммы в счёте сходились до копейки:
from dataclasses import dataclass
from decimal import Decimal, ROUND_HALF_UP
CENT = Decimal("0.01")
@dataclass
class QuoteInput:
weight_g: Decimal # чистый вес золота без камней
karat_price_per_g: Decimal # из /carat?unit=gram, в вашей валюте
making_per_g: Decimal = Decimal("0") # фиксированная стоимость работы за грамм
making_pct: Decimal = Decimal("0") # или доля от стоимости металла
stones: Decimal = Decimal("0") # оцениваются отдельно
tax_rate: Decimal = Decimal("0") # НДС, GST или налог с продаж в вашей юрисдикции
def jewelry_quote(q: QuoteInput) -> dict:
metal = q.weight_g * q.karat_price_per_g
making = q.weight_g * q.making_per_g + metal * q.making_pct
subtotal = metal + making + q.stones
tax = subtotal * q.tax_rate
parts = {"metal": metal, "making": making, "stones": q.stones, "tax": tax, "total": subtotal + tax}
return {k: v.quantize(CENT, rounding=ROUND_HALF_UP) for k, v in parts.items()}
# Только для иллюстрации: 10 г золота 22K по примерной цене 117.8239 за грамм,
# стоимость работы 12% и ставка налога 20%.
print(jewelry_quote(QuoteInput(
weight_g=Decimal("10"),
karat_price_per_g=Decimal("117.8239"),
making_pct=Decimal("0.12"),
tax_rate=Decimal("0.20"),
)))С этими входными данными скрипт выведет стоимость металла 1 178,24, стоимость работы 141,39, налог 263,93 и итог 1 583,55. Стоимость работы и ставка налога здесь — условные значения, а не рекомендации. Облагается ли изделие налогом, какие составляющие и по какой ставке — вопросы к вашему бухгалтеру или налоговому консультанту.
Эта статья объясняет расчёты. Она не является инвестиционной, ценовой или налоговой консультацией.
Стоимость выкупа и лома
Выкуп золота у клиентов работает в обратную сторону. Отправная точка — та же стоимость металла, но рассчитывать её следует по фактически измеренной пробе, а не по проставленному клейму:
стоимость лома = масса в граммах × проба ÷ 1 000 × спотовая цена грамма − вычеты за аффинаж и обработку
Покупатели обычно проверяют пробу, например рентгенофлуоресцентным анализом (XRF) или кислотными тестами, потому что старые изделия могут не соответствовать своему клейму, а припой в цепочках снижает среднюю чистоту. Держите вычет в коде как явный документированный параметр, а не прячьте его в заниженной спотовой цене, чтобы он был чётко виден в расчётах и при аудите.
В качестве спотовой цены здесь используйте цену грамма 24K (или /latest с unit=gram), а измеренную пробу применяйте сами. Цены из /carat предполагают точную долю K ÷ 24, что верно для оценки новых изделий по каратам, но не для результата пробирного анализа вроде 912.
Чек-лист внедрения
- Запрашивайте
carat=allодин раз и кешируйте результат на интервал обновления вашего тарифа, а не вызывайте API для каждого карата или товара. - Сохраняйте цену, метку времени и применённую чистоту вместе с каждым расчётом и заказом, чтобы позже можно было объяснить любое число.
- Используйте
dateдля исторических цен по каратам, например при пересчёте старого счёта. Длинные периоды и локальное хранение разобраны в статье Исторические цены на золото и серебро через API. - Округляйте только при отображении, с тем числом знаков после запятой, которое принято для каждой валюты.
- Храните ключ API на сервере. Чтобы показать на сайте магазина табло с ценами на золото без программирования, используйте встраиваемый виджет.
- Если вам нужно всего несколько карат, формула на основе данных
/latestработает на любом тарифе./caratизбавляет от вычислений и возвращает готовые согласованные числа на платных тарифах.
Все параметры /carat описаны в документации API, на странице тарифов видно, какие тарифы его включают, а руководство по API цен на золото рассказывает о ключах, ошибках и кешировании в целом. Чтобы попробовать API на своём каталоге, зарегистрируйтесь и получите ключ.
Попробуйте на своих данных
Создайте бесплатный аккаунт и отправьте первый запрос меньше чем за две минуты. 100 запросов в месяц, без банковской карты.
Читайте также
API цен на золото: полное руководство для разработчиков
Как работать с API цен на золото: получить ключ, вызвать API из curl, JavaScript и Python, правильно читать курсы, работать с историей, ошибками, квотами и кэшем.
Как добавить на сайт виджет с актуальной ценой золота
Виджет с актуальной ценой золота для WordPress, Shopify или HTML: создайте его в личном кабинете MetalAPI, выберите символы, макет и тему и вставьте две строки.
Калькулятор цен на ювелирные изделия с актуальной ценой золота
Серверный калькулятор цен на ювелирные изделия на TypeScript и Python: цена грамма золота, проба, стоимость работы, НДС и кэширование в рамках квоты.