Marginal Utility from Total Utility Calculator
This marginal utility calculator finds the additional utility associated with a change in consumption.
Run — free
Enter total utility before and after consumption changes, along with the corresponding quantities, and it divides the change in total utility by the change in quantity. The result is marginal utility per additional item. Although the usual textbook example adds exactly one unit, the calculator also handles larger or negative quantity changes and reports the underlying differences so the calculation remains easy to inspect.
From total utility to marginal utility
Total utility describes the overall satisfaction or benefit associated with consuming a given quantity of a good. Marginal utility focuses on the difference: it asks how much total utility changes when quantity changes. To calculate it, record an initial total utility and its initial quantity, then record the final total utility and final quantity. Subtract initial total utility from final total utility to obtain the utility change. Subtract initial quantity from final quantity to obtain the quantity change. Dividing the first difference by the second gives marginal utility per item. When consumption rises by exactly one item, the denominator is one, so marginal utility equals the simple change in total utility. For example, if total utility rises from 42 to 50 as quantity rises from five items to six, the added item contributes eight units of utility. The calculator returns the result together with both differences, making every part of the arithmetic visible rather than presenting an unexplained number.
Interpret positive, zero, and negative results
A positive marginal utility means total utility moved in the same direction as quantity over the interval. If consumption increases and total utility also increases, the additional consumption produced a positive benefit according to the utility scale being used. A zero result means total utility did not change even though quantity did, so the extra consumption added no measured utility. A negative result means the directions differ: when quantity increases, total utility falls, which may indicate overconsumption, inconvenience, or another cost represented in the utility measure. The sign must always be read alongside the quantity change. If the final quantity is lower than the initial quantity, both differences reverse perspective, and the quotient still describes utility change per item across that interval. Utility units are ordinal or model-specific in many economic exercises, so the result is not automatically comparable across people. It is most useful within one consistent schedule, survey, model, or decision framework where total utility values share the same meaning.
Use the interval carefully
Marginal utility is often introduced as the utility from consuming one more unit, and that is the cleanest use of this calculator: choose consecutive quantities so the quantity change equals one. If quantities differ by more than one, the calculation returns the average change in total utility per item across that interval. This can still be useful, but it is not necessarily the marginal utility of each individual unit because utility may change unevenly from one unit to the next. The calculator rejects equal initial and final quantities because division by a zero quantity change is undefined; changing total utility while holding the stated quantity fixed cannot produce marginal utility with this formula. Enter finite numeric values and keep units consistent. Do not mix dozens with individual items or combine utility scores built on different scales. For a utility schedule, calculate consecutive rows to examine diminishing marginal utility: results commonly decline as consumption increases, even while total utility continues to rise. API use costs $0.002 per request, while the same deterministic arithmetic can run in the browser.
What you can do with it
Complete an economics exercise
Calculate the marginal utility between consecutive rows of a total utility schedule and show the changes used in the formula.
Check diminishing marginal utility
Compare results across increasing quantities to see whether each additional item contributes less utility than the previous one.
Evaluate a consumption change
Measure the utility gained or lost per item when moving between two observed consumption levels.
FAQ
What is the marginal utility formula?
Marginal utility equals the change in total utility divided by the change in quantity: (final total utility minus initial total utility) divided by (final quantity minus initial quantity).
What if consumption increases by exactly one unit?
The quantity change is one, so marginal utility is simply final total utility minus initial total utility.
Why is a zero quantity change rejected?
The formula would require division by zero. Marginal utility cannot be calculated from two observations that state the same quantity.
Can marginal utility be negative?
Yes. With an increase in quantity, a negative result means total utility fell over the interval, which can represent disutility from additional consumption.
What does the calculator return when quantity changes by several units?
It returns the average change in total utility per item across that interval, not necessarily the utility contributed by each separate item.
How much does the API request cost?
Each API request costs $0.002.
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/econ/marginal-utility-from-total \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"initial_total_utility":42,"final_total_utility":50,"initial_quantity":5,"final_quantity":6}'const res = await fetch("https://api.kit.forhosting.com/econ/marginal-utility-from-total", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"initial_total_utility": 42,
"final_total_utility": 50,
"initial_quantity": 5,
"final_quantity": 6
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/econ/marginal-utility-from-total",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"initial_total_utility": 42,
"final_total_utility": 50,
"initial_quantity": 5,
"final_quantity": 6
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/econ/marginal-utility-from-total", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"initial_total_utility":42,"final_total_utility":50,"initial_quantity":5,"final_quantity":6}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"initial_total_utility":42,"final_total_utility":50,"initial_quantity":5,"final_quantity":6}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/econ/marginal-utility-from-total", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"initial_total_utility": 42,
"final_total_utility": 50,
"initial_quantity": 5,
"final_quantity": 6
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "econ.marginal_utility_from_total",
"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. |