Parasang / farsakh converter
One parasang, or farsakh, is 6 km in the default metric table, about 3.728 miles; switch to the historic 5.5 km or 5.6 km tables when your source uses them. Results come in meters, kilometers and miles. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Parasang
- 1
- Variant
- metric_6km
- Decimal places
- 3
- M
- 6,000
- Km
- 6
- Mi
- 3.728
- Farsakh
- 1
Convert Persian-Islamic parasang/farsakh using fixed table variants. Search intent: parasang to km. No network calls, no random seeds, and no server state are required for a correct answer. Failed jobs are not billed. Landings target the stated search
A historical distance with more than one length
The parasang, also written farsakh, is a Persian-Islamic unit of distance. Unlike the meter, it never had one single official length, so different tables give it slightly different values. This converter keeps three fixed tables: the metric reading of 6 km per parasang, used by default, and two historic options of 5.5 km and 5.6 km. You choose the table, enter the number of parasangs, and get the same distance in meters, kilometers and miles, with the farsakh figure alongside because both names describe the same unit.
How the result is worked out, and what to watch
The number of parasangs is multiplied by the length of the table you picked, so with the default table 1 parasang gives 6000 meters, 6 kilometers and about 3.728 miles. Rounding happens only once, at the end, to the number of decimals you ask for, which avoids the small drift that builds up when every step is rounded by hand. The most common mistake is mixing tables: a distance read with the 5.5 km table will not match one read at 6 km. Note which table your source uses before you compare figures.
When to use it
Use when the search intent matches this tool. Convert Persian-Islamic parasang/farsakh using fixed table variants. No network calls, no random seeds, and no server state are required for a correct answer.
Failed jobs are not billed. Landings target the stated search intent with precise keywords. Prefer explicit units and ranges over silent coercion of bad types.
When a field is optional, defaults are documented in params and echoed in the output.
FAQ
Locales?
EN-only delivery; Nitro hydrates the other seven languages.
How many kilometers is one parasang?
With the metric table, which is the default, one parasang is 6 km. If your text follows another table, you can pick the historic variants of 5.5 km or 5.6 km instead.
Is a farsakh the same as a parasang?
Yes. They are two names for the same Persian-Islamic unit of distance, which is why the result shows the same figure in parasangs and in farsakhs.
How many miles are in a parasang?
With the 6 km table, one parasang is about 3.728 miles, rounded to three decimals. With the 5.5 km or 5.6 km tables the figure in miles drops in proportion.
Which parasang table should I choose?
Use the 6 km table for a modern metric reading; it is the default. Choose 5.5 km or 5.6 km when the source you are reading relies on one of those historic equivalences.
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/conv/parasang-length \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"m":6000}'const res = await fetch("https://api.kit.forhosting.com/conv/parasang-length", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"m": 6000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/conv/parasang-length",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"m": 6000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/conv/parasang-length", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"m":6000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"m":6000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/conv/parasang-length", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"m": 6000
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "conv.parasang_length",
"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.
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
The calculator is free in the browser, deterministic, and identical in the API path. Inputs are validated before any arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE results when decimals are requested. Use the same JSON contract from spreadsheets, CMS hooks, automation, or teaching demos.
How it works
Convert Persian-Islamic parasang/farsakh using fixed table variants. No network calls, no random seeds, and no server state are required for a correct answer. Failed jobs are not billed. Landings target the stated search intent with precise keywords. Prefer explicit units and ranges over silent coercion of bad types. When a field is optional, defaults are documented in params and echoed in the output. Default metric_6km: 1 parasang = 6 km; also 5.5 km and 5.6 km historic options. The calculator is free in the browser, deterministic, and identical in the API path. Inputs are validated before any arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE results when decimals are requested. Use the same JSON contract from spreadsheets, CMS hooks, automation, or teaching demos.
Inputs, limits and rounding
Outputs echo inputs for logging. No network calls, no random seeds, and no server state are required for a correct answer. Failed jobs are not billed. Landings target the stated search intent with precise keywords. Prefer explicit units and ranges over silent coercion of bad types. When a field is optional, defaults are documented in params and echoed in the output. Provide required JSON fields. Optional decimals use half-up once from raw IEEE values. Invalid types or ranges raise invalid_input. The calculator is free in the browser, deterministic, and identical in the API path. Inputs are validated before any arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE results when decimals are requested. Use the same JSON contract from spreadsheets, CMS hooks, automation, or teaching demos.
When to use it
The calculator is free in the browser, deterministic, and identical in the API path. Inputs are validated before any arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE results when decimals are requested. Use the same JSON contract from spreadsheets, CMS hooks, automation, or teaching demos.
Integration use cases
Quick check
Use the free widget to verify a formula before production.
Automation
Call the API with the same JSON contract from scripts or CMS.
Teaching
Show pinned golden examples without proprietary software.
Technical questions
Is the browser widget free?
Yes. Tier A is free client-side with the same core as the API.
Does it use the network?
No. Computation is local and deterministic.
What on bad input?
invalid_input is thrown; failed jobs are not billed.
API compatible?
Yes — same JSON fields as params.json.