ForHosting KIT · Education

Range of grades calculator

With five grades whose highest is 91 and lowest is 68, the range is 23: the highest minus the lowest. Paste a section's marks after grading and get the spread in one step, on any scale. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Grades
72, 85, 91, 68, 77
You get
Quantity
5
Highest
91
Lowest
68
Range
23

When a quiz, midterm, or final is graded, teachers and teaching assistants often need one clear number for how far student results stretched—not a full statistics suite. This range of grades calculator takes a list of grade values, finds the highest and the lowest, and returns the range as highest minus lowest so you can summarize score spread in a single deterministic response. Use it when the search intent is the spread of grades itself—parent conferences, section comparisons, or curve discussions—without computing means, medians, or letter bands you did not ask for.

What the range of grades means and how it is computed

The range of a set of grades is the simplest measure of spread used in classrooms: identify the highest value in the list, identify the lowest value, and subtract lowest from highest. That single difference answers “how wide was the distribution of results?” without requiring ordered quartiles, variance formulas, or a statistics textbook.

A small range means students performed tightly—most marks clustered near the same band—while a large range means outcomes were spread out and you may want item analysis, differentiated support, or a transparent discussion of ceiling and floor effects. This calculator deliberately stays at that teaching-facing summary: it returns the cleaned grades list, the count of entries, highest, lowest, and range, plus a short formula string and a method label for audit logs.

It does not invent a class mean, standard deviation, letter grades, or weighted category blends; those are different search intents and different tools. Grades may sit on any finite numeric scale—percent 0–100, points out of fifty, raw rubric totals—because the arithmetic of max minus min does not depend on the scale you chose. When every grade is identical, range is zero and highest equals lowest.

When the list has one grade, highest and lowest coincide and range is zero, which is correct mathematics even if it is not very informative. Duplicate marks are allowed and do not change the definition; only the extremes matter for range. Negative or above-one-hundred values are accepted when your scale uses them, so curved extras and penalty scores still compute a truthful spread.

Post-exam spread for teachers

Paste the section’s grades after marking to get highest, lowest, and range for the board, LMS note, or parent conference in one step.

How do I calculate the range of grades?

Send a non-empty grades array of finite numbers.

What is the range of a set of grades?

Range is the highest grade minus the lowest grade in your list. A larger range means greater spread of student results.

Do grades have to be between 0 and 100?

No. Any finite numbers within the supported magnitude are accepted, so percent scales, points-out-of-N exams, and raw rubric totals all work.

What if I submit an empty list of grades?

A range requires at least one finite grade; empty lists are not billed.

Does it also give me the class average?

No. It reports only the number of grades, the highest, the lowest and the range between them. The mean, the median and letter bands are different questions with their own calculators.

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.

POSThttps://api.kit.forhosting.com/edu/range-of-grades

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.

curl -X POST https://api.kit.forhosting.com/edu/range-of-grades \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"grades":[72,85,91,68,77]}'
{
  "grades": [
    72,
    85,
    91,
    68,
    77
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "edu.range_of_grades",
  "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.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

What the range of grades means and how it is computed

Empty lists are invalid: there is no range of nobody, and the API fails with invalid_input instead of returning a hollow zero that could mislead a dashboard.

Input contract, response shape, and validation rules

There is no requirement that grades lie in zero to one hundred: the tool accepts any finite magnitude within a safe bound so point-based exams and scaled rubrics work without preprocessing. Keep lists modest for classroom sections; the five-hundred ceiling is a guardrail against accidental bulk dumps, not a target for everyday use. POST a JSON object with a required grades field: a non-empty array of finite numbers, at least one entry and at most five hundred. Aliases accepted for the same list include scores, marks, values, numbers, and exam_scores so gradebook exports with different column names still map cleanly. Each element may be a JSON number or a numeric string; non-finite values, empty strings, and non-numeric tokens fail with invalid_input naming the bad index. You may also pass grades as a single comma- or whitespace-separated string when a text form is more convenient than a JSON array. On success the body echoes the cleaned grades array, count (n), highest, lowest, and range (highest minus lowest), plus a short formula string range equals highest minus lowest and method label range_of_grades for clients that log which endpoint produced the row. Missing grades, an empty array, more than five hundred entries, or a body that is not an object all raise invalid_input and are not billed. Pair this contract with your own letter-grade bands, means, or curves if you need categorical or central-tendency output; this endpoint reports descriptive grade spread only.

Where a range of grades API earns its keep

Tutoring centers and after-school programs track quiz ranges week over week with a deterministic oracle that never drifts between the free browser check and the automated report job. LMS plugins and homework portals call the same pure module to show “score spread so far” next to individual marks without shipping a statistics library to every client. When you also need the class mean in the same request, use a dedicated average tool; this landing stays focused on the max-minus-min search intent so the SEO page and the response contract stay honest about what they deliver. Department coordinators batch parallel sections through the API to compare spreads before deciding whether a common curve is fair across rooms that taught the same exam.

Multi-section spread comparison

Send each parallel section’s grades through the API and compare ranges before choosing a common curve or retake policy.

LMS and tutoring dashboards

Show live grade spread next to individual marks with a deterministic parse endpoint that matches the free browser widget.

What does the range of grades calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →