Google Turbo colormap sample
Turn a number between 0 and 1 into a Turbo color: position 0 gives red 35, green 23 and blue 27, the dark #23171b at the start of the scale. Each position is computed from a fixed formula, never guessed. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- T
- 0
- Resistance (Ω)
- 35
- G
- 23
- B
- 27
- Hex
- #23171b
Sample Google Turbo colormap t∈[0,1] → sRGB hex. Search intent: turbo colormap. No network calls or random seeds are required. Failed jobs are not billed.
What a Turbo colormap sample is
A colormap turns a single number into a color, which lets a chart show values at a glance. Turbo is Google's colormap, and this tool samples it at the position you give. The position runs from 0, the start of the scale, to 1, its end, and any value in between is allowed. The result is an sRGB color given as red, green and blue values and a hex code you can paste into a chart or a stylesheet. Position 0, for example, returns red 35, green 23 and blue 27, the dark #23171b. Because the color comes from a fixed polynomial formula, the same position always gives the same color, with nothing random.
How to use it and the mistakes to avoid
First bring your own value into the 0 to 1 range: the lowest value in your data becomes 0, the highest becomes 1, and everything else falls proportionally between them. Then sample the scale at that position. A common mistake is entering the raw measurement, such as a temperature, directly; anything below 0 or above 1 is refused rather than quietly clipped. Another is rounding twice: if you ask for decimal places, the tool rounds once from the unrounded result, so round only at the end of your own work. Finally, keep the same range for every chart you compare, otherwise equal colors will stand for different values.
When to use it
Use when search intent matches. Sample Google Turbo colormap t∈[0,1] → sRGB hex. English-only delivery; Nitro hydrates other locales.
No network calls or random seeds are required. Failed jobs are not billed. No network calls or random seeds are required.
Failed jobs are not billed.
What you can do with it
Teaching
Pinned goldens.
FAQ
What does the position number mean?
It is where you stand along the Turbo scale, from 0 at the start to 1 at the end. Values outside that range are refused, so bring your own data into the 0 to 1 range before sampling.
What color does position 0 give?
Position 0 returns red 35, green 23 and blue 27, written #23171b, a very dark color that marks the low end of the Turbo scale.
Is the color exactly Google's original Turbo table?
It comes from a polynomial approximation of the Turbo ramp, a smooth formula that follows the published scale closely. That is why any position between 0 and 1 works, not only a few fixed steps.
Can I round the values?
Yes. You can ask for a number of decimal places, and rounding is applied once, half up, from the unrounded result, so small rounding differences never pile up.
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/color/turbo-sample \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"t":0.5}'const res = await fetch("https://api.kit.forhosting.com/color/turbo-sample", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"t": 0.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/turbo-sample",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"t": 0.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/turbo-sample", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"t":0.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"t":0.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/turbo-sample", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"t": 0.5
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.turbo_sample",
"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 on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested.
How it works
Sample Google Turbo colormap t∈[0,1] → sRGB hex. Polynomial approximation of Turbo ramp. No network calls or random seeds are required. Failed jobs are not billed. No network calls or random seeds are required. Failed jobs are not billed. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input.
Inputs, limits and rounding
Optional decimals use half-up once. Optional output fields are omitted, never null. No network calls or random seeds are required. Failed jobs are not billed. No network calls or random seeds are required. Failed jobs are not billed. Provide required JSON fields with DOM-safe names. Invalid types raise invalid_input. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested.
When to use it
The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested. The calculator is free in the browser, deterministic, and identical on the API path. Inputs are validated before arithmetic so invalid payloads fail with invalid_input. Half-up rounding is applied once from raw IEEE values when decimals are requested.
Integration use cases
Quick check
Free widget.
Automation
API same JSON.
Technical questions
Free?
Yes tier A.
Network?
No.
Bad input?
invalid_input.
API?
Yes.
Locales?
EN-only; Nitro hydrates.