About ROC Curve Calculator
This ROC curve calculator plots the true positive rate against the false positive rate for every threshold of your scores, and marks the cut-off you choose with the slider. It is free, needs no sign-up and runs in your browser, so nothing you enter is uploaded.
Each point of the curve is one threshold. The top-left corner is a perfect classifier, the dashed diagonal is a coin flip, and the closer the curve bends toward the corner the better the scores separate the classes. The opening example is a model with an AUC of 0.87.
Drag the slider to see how raising the threshold lowers the false positive rate at the price of the true positive rate, and read the matrix at that point.
How to use ROC Curve Calculator
- Paste your data as score,label lines. A label is 1 for the positive class and 0 for the negative class; true and false also work.
- Or tap an example to load a good model, a weak model, an imbalanced set or the classic four-point example.
- Read the AUC and average precision in the result card.
- Switch between the ROC curve and the precision-recall curve.
- Move the threshold slider, or press the best-threshold button, to see the confusion matrix and metrics at that cut-off.
- Open the curve points table to see every threshold, false positive rate, true positive rate and precision.
Features
- ROC curve with the chance diagonal, shaded area and a marker for your chosen threshold.
- AUC by the trapezoid rule, with ties between a positive and a negative counted as half.
- Precision-recall curve with the no-skill baseline, and average precision.
- A threshold slider with the live confusion matrix, accuracy, precision, recall, false positive rate, F1 and MCC.
- The best threshold by Youden's J statistic in one tap.
- Up to 20,000 rows, with a table of the curve points.
- A plain-English reading of what the AUC means for your model.
Worked examples
20 scored cases, 10 positive gives AUC 0.87
The best Youden threshold is 0.66, with a true positive rate minus false positive rate of 0.6.
Privacy: how it works
- Your scores and labels are processed by code running in your browser tab. They are never sent to Ulkaa or anyone else.
Tips
- Scores need not be probabilities. Any number where higher means more likely positive works, because only the ranking matters.
- The AUC depends only on the order of the scores. Multiplying all scores by a constant changes nothing.
- Tied scores are handled as one step. A tie between a positive and a negative cuts a diagonal and counts half.
- Both classes must appear in the data, or the rates are undefined and the tool asks for more.
Frequently asked questions
Is it really free?
Yes. There is no price, no trial and no credit card. Ulkaa Tool does the work with your own device, so there is no server bill to pass on to you.
Do I need an account?
No. There is no sign-up and no login. Open the page and use it. An Ulkaa account is not needed for anything on this tool.
Does it run in my browser?
Yes. Your scores and labels are processed by code running in your browser tab, on your own device.
Is my data uploaded?
No. Your scores and labels are never sent to Ulkaa or to anyone else. You can check this yourself by watching the Network tab in your browser developer tools while you use the tool.
How do I read a ROC curve?
Move along the curve from the bottom-left (a very high threshold, nothing predicted positive) to the top-right (a very low threshold, everything positive). Higher and further left is better.
More ROC Curve and AUC Calculator pages
- ROC Curve and AUC CalculatorPaste model scores and true labels to draw the ROC curve, find the AUC and explore thresholds.
- AUC CalculatorPaste scores and labels and get the area under the ROC curve.
- Precision-Recall Curve CalculatorSee precision against recall for every threshold, and compare it with the no-skill line.
- Average Precision CalculatorGet the average precision of a ranked list of predictions.
- Optimal Classification Threshold FinderFind the cut-off that best balances true positives and false positives.
- ROC AUC for Imbalanced DataCheck what a ROC AUC means when only a few cases are positive.