Free student calculator

Weighted Grade Calculator

Enter your grades and weights to get a clear result without digging through a long article first. The calculator stays at the top, works on mobile, and keeps each result easy to review.

No sign-up Instant result Mobile friendly Common US grade scale
Weighted Grade Calculator

Weighted Grade Calculator

Enter each grading category, its weight, and your grade. This calculator will estimate your current course grade, letter grade, GPA, and contribution breakdown.

CategoryWeight %Grade %Action

Final Grade Needed Calculator

Find out what grade you need on your final exam to reach your target course grade.

Points Grade Calculator

Use this assignment grade calculator when your class uses earned points and possible points instead of category weights.

AssignmentEarned PointsPossible PointsAction

Letter Grade & GPA Converter

Enter a percentage grade to estimate the letter grade and GPA using a common US grading scale.

Results are estimates. Check your syllabus or official gradebook when your school uses a different scale or extra-credit policy.

How to use the Weighted Grade Calculator

Start with the tab that matches your gradebook. For a weighted class, add one row for each category, such as homework, quizzes, tests, projects, and the final exam. Enter the percentage weight and your current grade for that category, then choose Calculate Grade.

The result separates your normalized grade from the amount already contributed toward the full course grade. That distinction matters when the entered categories do not yet add up to 100%.

Weighted grade categories and contribution example
A quick view of how category grades and weights build the course result.
'); printWindow.document.close(); printWindow.focus(); printWindow.print(); }function debounce(fn, delay) { var timer; return function () { clearTimeout(timer); timer = setTimeout(fn, delay); }; }var debounceAutoCalculate = debounce(function () { var activePanel = qs('.wgc-tab-panel.wgc-active'); if (!activePanel) { return; }if (activePanel.id === 'wgc-tab-weighted' && qs('#wgc-weighted-results').classList.contains('wgc-show')) { calculateWeighted(); }if (activePanel.id === 'wgc-tab-final' && qs('#wgc-final-results').classList.contains('wgc-show')) { calculateFinal(); }if (activePanel.id === 'wgc-tab-points' && qs('#wgc-points-results').classList.contains('wgc-show')) { calculatePoints(); }if (activePanel.id === 'wgc-tab-converter' && qs('#wgc-converter-results').classList.contains('wgc-show')) { calculateConverter(); } }, 350);qsa('.wgc-tab-button').forEach(function (button) { button.addEventListener('click', function () { var tab = button.getAttribute('data-wgc-tab');qsa('.wgc-tab-button').forEach(function (btn) { btn.classList.remove('wgc-active'); btn.setAttribute('aria-selected', 'false'); });qsa('.wgc-tab-panel').forEach(function (panel) { panel.classList.remove('wgc-active'); });button.classList.add('wgc-active'); button.setAttribute('aria-selected', 'true'); qs('#wgc-tab-' + tab).classList.add('wgc-active'); }); });qs('#wgc-add-category').addEventListener('click', function () { addWeightedRow('', '', ''); }); qs('#wgc-example-weighted').addEventListener('click', exampleWeighted); qs('#wgc-reset-weighted').addEventListener('click', resetWeighted); qs('#wgc-calc-weighted').addEventListener('click', calculateWeighted);qs('#wgc-example-final').addEventListener('click', exampleFinal); qs('#wgc-reset-final').addEventListener('click', resetFinal); qs('#wgc-calc-final').addEventListener('click', calculateFinal);qs('#wgc-add-assignment').addEventListener('click', function () { addPointsRow('', '', ''); }); qs('#wgc-example-points').addEventListener('click', examplePoints); qs('#wgc-reset-points').addEventListener('click', resetPoints); qs('#wgc-calc-points').addEventListener('click', calculatePoints);qs('#wgc-example-converter').addEventListener('click', exampleConverter); qs('#wgc-reset-converter').addEventListener('click', resetConverter); qs('#wgc-calc-converter').addEventListener('click', calculateConverter);qsa('[data-wgc-copy]').forEach(function (button) { button.addEventListener('click', function () { copyResult(button.getAttribute('data-wgc-copy')); }); });qsa('[data-wgc-print]').forEach(function (button) { button.addEventListener('click', function () { printResult(button.getAttribute('data-wgc-print')); }); });['#wgc-current-grade', '#wgc-desired-grade', '#wgc-final-weight', '#wgc-convert-percent'].forEach(function (selector) { var input = qs(selector); if (input) { input.addEventListener('input', debounceAutoCalculate); } });resetWeighted(); resetPoints(); })();