Supply schedule table from linear supply function
With supply starting at 0 and rising by 2 units per unit of price, prices from 0 to 10 in steps of 2 give quantities 0, 4, 8, 12, 16 and 20. Get the whole supply table at once. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Supply intercept
- 0
- Supply slope
- 2
- Price min
- 0
- Price max
- 10
- Price step
- 2
- Supply equation
- Qs=0+2P
- Row count
- 6
A supply schedule is a table that lists how much of a good sellers are willing to offer at each price in a range. In principles of economics, supply is often written as a linear quantity function of price: quantity supplied rises as price rises. Building that table by hand for homework, worksheets, and lecture slides is repetitive and easy to mis-add. This supply schedule calculator accepts the intercept and slope of a linear supply function plus a price minimum, maximum, and step, then returns every price–quantity pair on that grid with the supply equation string so students can check the table against the formula.
Linear supply as quantity supplied of price
Write quantity supplied as Qs equals c plus d times P. The intercept c is the quantity offered when the price is zero; textbooks often set it to zero so the supply curve passes through the origin, but any finite intercept is allowed. The slope d is typically positive so firms offer more units as the market price rises; a negative slope is still accepted as arithmetic so you can illustrate unusual cases or mirror a homework trap without a second tool.
Once the line is in Q-of-P form, a supply schedule is simply evaluation of that line at a sequence of prices. Classroom demonstrations often pair this table with a demand schedule on the same price grid; generating the supply side deterministically keeps the demo reproducible every lecture.
Coursework, tutoring platforms, and problem banks
Principles courses assign supply schedule tables because they link the algebraic line to the familiar price–quantity table drawn before the graph. Tutoring platforms and LMS plugins need a deterministic oracle that fills every row for arbitrary intercepts, slopes, and price grids without spreadsheet rounding drift. Exam generators can sample intercepts and slopes, call this capability, and pin the schedule in the answer key.
Product teams sketching a simple market model before a full simulation can lock the same analytic supply table in tests. Use classic lines such as Qs equals two P over prices zero through ten, then change the step for denser or coarser classroom tables. Pin the rounded schedule fields in automated tests, reject non-positive steps and inverted ranges explicitly, and you get reproducible supply schedule figures for homework, lecture demos, and lightweight economics notebooks without standing up a spreadsheet pipeline.
What you can do with it
Homework and lecture supply tables
Students and instructors enter linear supply coefficients and a price range to build a complete quantity-supplied schedule for worksheets and slides.
Problem banks and market notebooks
Generate or validate linear Qs tables for coursework seeds and pin expected price–quantity rows in continuous integration.
FAQ
What form of supply function does this calculator use?
Linear quantity of price: Qs = c + d·P.
How is the price grid built?
It starts at the lowest price and keeps adding the step, including every price up to the highest one. From 0 to 10 in steps of 2 you get six rows: 0, 2, 4, 6, 8 and 10.
Can the supply slope be negative?
Yes. Supply normally slopes upward, but a negative slope is still accepted as arithmetic, so you can illustrate an unusual case or reproduce a homework trap without another tool.
Is there a limit on the number of rows?
Yes. The step must be greater than zero, the highest price cannot be below the lowest, and the number of rows is capped so that a tiny step cannot produce an endless table.
What does the intercept mean in the table?
It is the quantity offered when the price is zero. Textbooks often set it to zero so the line starts at the origin, as in the example where a slope of 2 gives 4 units at a price of 2.
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/econ/supply-schedule-from-function \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"supply_intercept":0,"supply_slope":2,"price_min":0,"price_max":10,"price_step":2}'const res = await fetch("https://api.kit.forhosting.com/econ/supply-schedule-from-function", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"supply_intercept": 0,
"supply_slope": 2,
"price_min": 0,
"price_max": 10,
"price_step": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/econ/supply-schedule-from-function",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"supply_intercept": 0,
"supply_slope": 2,
"price_min": 0,
"price_max": 10,
"price_step": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/econ/supply-schedule-from-function", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"supply_intercept":0,"supply_slope":2,"price_min":0,"price_max":10,"price_step":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"supply_intercept":0,"supply_slope":2,"price_min":0,"price_max":10,"price_step":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/econ/supply-schedule-from-function", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"supply_intercept": 0,
"supply_slope": 2,
"price_min": 0,
"price_max": 10,
"price_step": 2
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "econ.supply_schedule_from_function",
"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
Successful API calls use prepaid KIT balance at $0.002 per item; invalid input is not billed.
Linear supply as quantity supplied of price
Textbooks sometimes write Qs equals gamma plus delta times P with both coefficients non-negative; that maps directly to supply_intercept gamma and supply_slope delta. This endpoint keeps the coefficients explicit, echoes supply_equation in the response, and lists each row as price and quantity_supplied so your notebook, LMS, or slide deck can render a clean two-column table without re-deriving the formula.
Price grid, validation, and response shape
Example: intercept zero, slope two, prices from zero to ten step two yields quantities zero, four, eight, twelve, sixteen, and twenty. Send five finite numbers: supply_intercept c, supply_slope d, price_min, price_max, and price_step. Fields may arrive as JSON numbers or numeric strings; missing, empty, or non-finite values fail with invalid_input naming the field. price_step must be strictly greater than zero. price_max must be greater than or equal to price_min. The schedule uses the inclusive grid P_i equals price_min plus i times price_step for i equals zero, one, two, and so on while P_i stays less than or equal to price_max. Row count is bounded so an accidentally tiny step cannot produce an unbounded table; exceeding the maximum fails with a clear invalid_input message instead of hanging. On success the response echoes the five inputs, the supply_equation string, row_count, the ordered schedule array, and a short formula string. Failed validation is not billed; successful parse calls use the published $0.002 base price.
Integration use cases
LMS and tutoring auto-grading
Score supply-schedule items with a deterministic oracle that rejects non-positive steps and inverted price ranges as invalid_input.
Technical questions
How is the price grid built?
Prices are P_i = price_min + i·price_step for i = 0, 1, 2, … while P_i ≤ price_max. Both endpoints of a full step land on the grid; the last row is the largest such P_i.
Can supply_slope be zero or negative?
Yes. Zero slope yields a horizontal supply quantity; negative slope is accepted for arithmetic demos. Typical homework uses a positive slope.
Why is there a maximum number of rows?
A very small price_step over a wide range could create thousands of rows. The API caps the schedule length and returns invalid_input if the grid would exceed the limit.
What does the supply schedule calculator cost?
The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.