{
  "slug": "gpa",
  "title": "GPA Calculator",
  "heading": "GPA Calculator",
  "category": "other",
  "url": "https://www.revenuelab.fyi/toolbox/gpa",
  "summary": "Weighted GPA from grades and credit hours.",
  "description": "Enter up to six classes with a letter grade and credit weight to get your GPA on a 4.0 scale.",
  "formula": null,
  "dateModified": "2026-10-03",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=gpa",
  "inputs": [
    {
      "id": "g1",
      "label": "Class 1 — grade",
      "kind": "select",
      "hint": null,
      "default": "3.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c1",
      "label": "Class 1 — credits",
      "kind": "number",
      "hint": null,
      "default": 3,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "g2",
      "label": "Class 2 — grade",
      "kind": "select",
      "hint": null,
      "default": "3.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c2",
      "label": "Class 2 — credits",
      "kind": "number",
      "hint": null,
      "default": 3,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "g3",
      "label": "Class 3 — grade",
      "kind": "select",
      "hint": null,
      "default": "3.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c3",
      "label": "Class 3 — credits",
      "kind": "number",
      "hint": null,
      "default": 3,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "g4",
      "label": "Class 4 — grade",
      "kind": "select",
      "hint": null,
      "default": "0.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c4",
      "label": "Class 4 — credits",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "g5",
      "label": "Class 5 — grade",
      "kind": "select",
      "hint": null,
      "default": "0.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c5",
      "label": "Class 5 — credits",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "g6",
      "label": "Class 6 — grade",
      "kind": "select",
      "hint": null,
      "default": "0.0",
      "options": [
        {
          "value": "4.0",
          "label": "A (4.0)"
        },
        {
          "value": "3.7",
          "label": "A− (3.7)"
        },
        {
          "value": "3.3",
          "label": "B+ (3.3)"
        },
        {
          "value": "3.0",
          "label": "B (3.0)"
        },
        {
          "value": "2.7",
          "label": "B− (2.7)"
        },
        {
          "value": "2.3",
          "label": "C+ (2.3)"
        },
        {
          "value": "2.0",
          "label": "C (2.0)"
        },
        {
          "value": "1.7",
          "label": "C− (1.7)"
        },
        {
          "value": "1.3",
          "label": "D+ (1.3)"
        },
        {
          "value": "1.0",
          "label": "D (1.0)"
        },
        {
          "value": "0.0",
          "label": "F (0.0)"
        }
      ]
    },
    {
      "id": "c6",
      "label": "Class 6 — credits",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": null,
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "gpa",
      "label": "GPA",
      "format": "decimal",
      "hint": null,
      "primary": true
    },
    {
      "id": "credits",
      "label": "Total credits",
      "format": "decimal",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Class 1 — grade: B (3.0)",
      "Class 1 — credits: 3",
      "Class 2 — grade: B (3.0)",
      "Class 2 — credits: 3",
      "Class 3 — grade: B (3.0)",
      "Class 3 — credits: 3",
      "Class 4 — grade: F (0.0)",
      "Class 4 — credits: 0",
      "Class 5 — grade: F (0.0)",
      "Class 5 — credits: 0",
      "Class 6 — grade: F (0.0)",
      "Class 6 — credits: 0"
    ],
    "outputs": [
      "GPA: 3",
      "Total credits: 9"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter class 1 — grade.",
      "Enter class 1 — credits.",
      "Enter class 2 — grade.",
      "Enter class 2 — credits.",
      "Enter class 3 — grade.",
      "Enter class 3 — credits.",
      "Enter class 4 — grade.",
      "Enter class 4 — credits.",
      "Enter class 5 — grade.",
      "Enter class 5 — credits.",
      "Enter class 6 — grade.",
      "Enter class 6 — credits.",
      "Read your gpa on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "g1": "3.0",
        "c1": 1.7999999999999998,
        "g2": "3.0",
        "c2": 1.7999999999999998,
        "g3": "3.0",
        "c3": 1.7999999999999998,
        "g4": "0.0",
        "c4": 0,
        "g5": "0.0",
        "c5": 0,
        "g6": "0.0",
        "c6": 0
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "g1": "3.0",
        "c1": 3,
        "g2": "3.0",
        "c2": 3,
        "g3": "3.0",
        "c3": 3,
        "g4": "0.0",
        "c4": 0,
        "g5": "0.0",
        "c5": 0,
        "g6": "0.0",
        "c6": 0
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "g1": "3.0",
        "c1": 4.800000000000001,
        "g2": "3.0",
        "c2": 4.800000000000001,
        "g3": "3.0",
        "c3": 4.800000000000001,
        "g4": "0.0",
        "c4": 0,
        "g5": "0.0",
        "c5": 0,
        "g6": "0.0",
        "c6": 0
      }
    }
  ],
  "limitations": [
    "Estimates assume standard, average conditions — local rules, pricing, and materials vary.",
    "Results are rounded for readability; add a buffer before ordering, booking, or committing.",
    "Double-check anything with a real cost attached against a local quote."
  ],
  "faq": [
    {
      "q": "How does the gpa calculator work?",
      "a": "Enter up to six classes with a letter grade and credit weight to get your GPA on a 4.0 scale."
    },
    {
      "q": "What do I need to enter?",
      "a": "12 values: class 1 — grade, class 1 — credits, class 2 — grade, class 2 — credits, class 3 — grade, class 3 — credits, class 4 — grade, class 4 — credits, class 5 — grade, class 5 — credits, class 6 — grade, and class 6 — credits. Each field starts with a sensible default, so you can change one number at a time and watch the result move."
    },
    {
      "q": "What does the gpa result mean?",
      "a": "It is returned as a decimal number and updates live as you edit the inputs, so you can compare two or three versions of a scenario in a few seconds."
    },
    {
      "q": "Is this calculator free, and do I need an account?",
      "a": "Yes, it's free, and no account is required. Nothing you type is stored on our servers — the maths runs entirely in your browser."
    },
    {
      "q": "How accurate is the result?",
      "a": "It applies the standard formula exactly, so the arithmetic is precise. Estimates assume standard, average conditions — local rules, pricing, and materials vary."
    },
    {
      "q": "Who is this tool for?",
      "a": "It's built for anyone doing everyday planning maths — a quick estimate that would otherwise need four browser tabs and a calculator app."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/grade"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — GPA Calculator (https://www.revenuelab.fyi/toolbox/gpa)"
}