Lumen calculator
A 100 candela source shining into 2 steradians sends out 200 lumens. Enter the luminous intensity and the solid angle of the beam and get the luminous flux, since one candela is one lumen per steradian. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Intensity
- 1
- Solid angle
- 1
- Flux
- 1 lm
This lumen calculator answers a core photometry question: if a light source has a known luminous intensity in candela, how many lumens leave through a known solid angle in steradians? By the SI definition of the candela, one candela is one lumen per steradian, so luminous flux is simply intensity times solid angle. Classic checks include one candela over one steradian giving one lumen, and one hundred candela over two steradians giving two hundred lumens. The engine is pure finite arithmetic with no network calls, no sampling, and no date-dependent shortcuts.
What luminous flux means and what you get
Luminous flux is the SI photometric quantity that measures how much visible light a source sends out after weighting by the human photopic luminosity function, and its coherent unit is the lumen. Luminous intensity measures how much of that flux is concentrated into a unit solid angle and is expressed in candela.
The candela is defined so that one candela equals one lumen per steradian; therefore, when intensity is constant over a cone, the flux through the cone is simply the product of intensity and solid angle: Φ equals I times Ω. That identity is not a fitting trick. It follows from the definition of the steradian as a solid angle whose vertex sits at the source and from the definition of the candela as a lumen per steradian.
A complete sphere subtends four pi steradians, so an isotropic point source of I candela radiates four pi I lumens into space. A narrow beam of one steradian carrying one hundred candela carries one hundred lumens. Real luminaires vary with direction, so a datasheet candela figure is often a peak on-axis intensity, and multiplying peak candela by the full beam solid angle overestimates total lumens unless the beam is treated as uniform.
Even so, the uniform-beam product remains the standard first-order check in textbooks, lamp sketches, and exam problems that give I and Ω and ask for Φ. Zero solid angle is accepted and yields zero lumens.
Where a lumen product from candela and steradians fits in study, design, and software
Students meet Φ equals I times Ω when a photometry or optics unit asks how many lumens leave a lamp of known candela through a given cone, when a lab starts from a peak intensity rating and a beam solid angle, or when a contest problem demands four pi lumens from an isotropic candela source without inventing room corrections.
Lighting designers and product engineers use the same closed form as a first estimate of packaged lumens from a candela datasheet and a quoted beam, before integrating a full goniophotometric I(θ,φ) table. Teachers can pre-generate answer keys for modest intensity and solid-angle pairs without trusting opaque apps that silently mix luminous flux, intensity, and illuminance.
Developers call the same contract from scripts to seed deterministic test vectors for lighting widgets, to convert a candela rating into a lumen budget, or to satisfy programming-challenge statements that demand Φ rather than a hand-waved sketch. Product and education tools use the solve when a learner types one candela and one steradian and the UI must show one lumen with a clean formula reminder.
Pair it with unit converters for lumens and candela when you are building a small lab of free, deterministic photometric calculators, and keep steradian conversion of beam degrees as a separate step so this identity stays a single multiply.
What you can do with it
Homework and photometric identity drills
Check textbook problems that ask for luminous flux from a uniform intensity in candela and a beam solid angle in steradians using Φ = I × Ω.
Lamp datasheet and beam lumen estimates
Turn a candela rating and a quoted beam solid angle into a first-order lumen figure before integrating a full intensity distribution.
FAQ
What does the lumen calculator cost?
It is free in your browser on this page.
What formula is used?
The SI photometric identity Φ = I × Ω. With I in candela and Ω in steradians, Φ is in lumens, because one candela equals one lumen per steradian.
What happens if the solid angle is negative?
A negative solid angle is not a physical steradian measure, and the capability contract requires a finite non-negative Ω.
How many lumens does an isotropic candela source radiate?
A full sphere subtends 4π steradians, so an isotropic source of I candela radiates 4π I lumens.
How is this different from a luminous-flux unit converter?
A unit converter renames millilumens or kilolumens without using intensity. This tool computes lumens from luminous intensity and solid angle via Φ = I × Ω.
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/phys/lumen \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"intensity":1,"solid_angle":1}'const res = await fetch("https://api.kit.forhosting.com/phys/lumen", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"intensity": 1,
"solid_angle": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/lumen",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"intensity": 1,
"solid_angle": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/lumen", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"intensity":1,"solid_angle":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"intensity":1,"solid_angle":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/lumen", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"intensity": 1,
"solid_angle": 1
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.lumen",
"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
max_intensity | 1000000000000000 |
max_solid_angle | 1000000000000000 |
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
A negative or non-finite solid angle is rejected with invalid_input because steradian measure cannot be negative.
What luminous flux means and what the response contains
This calculator returns the input intensity and solid_angle, the solved flux in lumens, a method tag luminous_flux_from_intensity, a short formula string, and a unit note that flux is reported in lumens. There is no Monte Carlo path and no environment model: the engine either evaluates the product inside the supported ranges or rejects the input with invalid_input. Rejected cases include missing intensity or solid_angle, non-finite values such as NaN or Infinity, magnitudes above the documented ceilings, negative intensity, and any solid angle that is negative, because steradian measure cannot be negative.
How intensity and solid angle are read and how results stay reproducible
Intensity must be a finite non-negative number; a negative candela value is rejected as non-physical for photometric intensity. A full sphere is four pi steradians, roughly twelve point five seven, but values larger than four pi are accepted because overlapping beams and summed cones can exceed one sphere in a bookkeeping model. Optional leading plus signs and scientific notation on numeric strings are allowed when they parse as finite decimals; embedded spaces, hex prefixes, and non-numeric tokens are rejected with a clear message so a bad cell does not become a wrong lumen figure. Zero solid angle is a valid limiting case and returns zero lumens rather than an error. The preferred fields are intensity for luminous intensity in candela and solid_angle for the beam solid angle in steradians, but aliases I, luminous_intensity, candela, and cd for intensity, and omega, steradian, steradians, and sr for solid_angle are accepted so spreadsheets, query strings, and typed forms can reuse the same contract. Solid angle must be a finite non-negative number; a negative or non-finite steradian value is rejected with invalid_input, which is the documented error contract of this calculator. Pair the free browser run on this page with the priced API when you need the identical mathematical result inside an automated pipeline without re-implementing I times Ω yourself. Failed validation is not charged, and nothing is stored after the response returns.
Where a lumen product from candela and steradians fits in study, design, and software
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 classroom demo to an automated pipeline without changing the mathematical result.
Integration use cases
Deterministic lumen fixtures
Generate reproducible flux values for unit tests, CI assertions, and teaching demos that fix I in candela and Ω in steradians.