ForHosting KIT · Unit converters

Grain weight converter

One grain is exactly 64.79891 milligrams, so a 100-grain powder charge weighs 6.479891 grams. Move any weight between grains, grams, milligrams and avoirdupois ounces when a manual, a scale and an invoice each use a different unit. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Value
100
Source unit
Gr
Target unit
G
You get
Result
6.479891
From label
grain
To label
gram
Grams
6.479891

A grain weight converter turns a mass written in grains, grams, milligrams, or avoirdupois ounces into any other unit in that set without hunting conversion tables or rewriting spreadsheet formulas.

Supported units and how the conversion is computed

The converter accepts four mass families under stable canonical codes: gr for the international grain, g for the SI gram, mg for the milligram, and oz for the avoirdupois ounce. Factors follow the international grain definition and the exact avoirdupois ounce: one grain is exactly sixty-four point seven nine eight nine one milligrams, one milligram is exactly one thousandth of a gram, and one avoirdupois ounce is exactly twenty-eight point three four nine five two three one two five grams.

Because the intermediate is always grams, converting A to B and B to A is consistent up to the published rounding of twelve decimal places, and there is no pairwise matrix that can drift out of sync. Troy ounces, pennyweights, carats, and force units are intentionally out of scope so reloaders and jewelers get predictable mass-only results under one clear convention used on powder scales and jewelry balances.

At the reloading bench and the jewelry counter

Use the free in-browser grain weight converter when you need a quick grains-to-grams, milligrams-to-grains, or ounces-to-grams check while reading a reloading manual, powder scale manual, jewelry invoice, or bench recipe. Open the page, enter the number and units, and copy the result without installing a spreadsheet, a unit library, or a desktop calculator pack. Source inputs follow the same retention rules as other KIT parse items, and results are safe to cache because the algorithm is fully deterministic.

Authors shipping mobile apps or chatbots can map the result and formula fields directly into cards that show both the number and the conversion path reloaders and jewelers expect on paper.

Reloading powder and bullet charges

Convert published powder charges in grains to grams or milligrams so electronic scales and manuals share one view without hand-written factors.

Jewelry and precious-metal inventory

Normalize ounces and grams on invoices, listings, and bench scales when suppliers mix avoirdupois ounces with metric mass.

Which units does the grain weight converter support?

Grains (gr), grams (g), milligrams (mg), and avoirdupois ounces (oz).

How many grams is one grain?

Exactly 0.06479891 g under the international grain definition (64.79891 mg).

How do I convert 100 grains to grams?

The response result field is 6.479891, plus a grams intermediate and a readable formula.

What happens if I send an unknown unit?

The message names the field and lists supported units. Validation failures are not charged.

Is the grain weight converter free?

The browser tool runs free on your device.

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.

POSThttps://api.kit.forhosting.com/conv/grain-weight

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.

curl -X POST https://api.kit.forhosting.com/conv/grain-weight \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"value":100,"from":"gr","to":"g"}'
{
  "value": 100,
  "from": "gr",
  "to": "g"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "conv.grain_weight",
  "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.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

The browser tool runs free on your device; the prepaid API charges $0.002 per successful item when pipelines need the same contract from servers and automation.

Supported units and how the conversion is computed

Friendly aliases such as grain, grains, gram, grams, milligram, milligrams, ounce, ounces, and avoirdupois ounce are normalized case-insensitively so forms and APIs can pass either short codes or full names. Every request multiplies the input value by the exact grams-per-unit factor for the source, then divides by the grams-per-unit factor for the target.

Request shape, response fields, and unknown-unit errors

The error message names the bad field and lists the supported set so clients can correct forms without guessing. Negative values are allowed when you need signed weight deltas in inventory pipelines; zero converts cleanly to zero in every target unit. Send a JSON body with three required fields: value as a finite number, from as the source unit string, and to as the target unit string. Aliases amount, quantity, and weight are accepted for value; unit_from and source for from; unit_to and target for to. On success the response echoes the canonical from and to codes, human-readable from_label and to_label strings, the converted result, the intermediate grams quantity, the dimensionless factor from source to target, a short formula line suitable for UI display, the method tag grain_weight_si, and the fixed list of units_supported. Missing value, non-finite numbers such as NaN or Infinity, missing unit fields, and any token that does not map to a supported unit fail with invalid_input and are not charged after the engine rejects the request. Identical inputs always yield identical JSON because the path is pure arithmetic with no randomness, no remote lookup, and no dependence on the wall clock, which makes the endpoint safe to pin in continuous-integration goldens and SDK contract tests. Grain-scale powder charges and ounce-scale jewelry blanks share the same code path, so extreme magnitude pairs remain well-defined as long as IEEE double precision can represent the intermediate grams product.

Browser use, API pricing, and reloading or jewelry workflows

Switch to the prepaid API when a reloading log app, powder-scale companion, jewelry inventory system, e-commerce listing tool, or materials pipeline must convert grain-scale and gram-scale weights at scale under a stable KIT contract at $0.002 per successful item; validation failures that raise invalid_input do not consume balance after rejection. Pair this endpoint with volume or length converters when a product pipeline needs several measure families, or call it alone when search traffic is specifically for grain weight conversion—grains, grams, milligrams, and ounces—rather than a general unit switchboard.

Apps and automated pipelines

Call a prepaid, deterministic grain weight API from reloading logs and jewelry tools with clear invalid_input on unknown units.

Read the full KIT documentation →