Polynomial Root Finder

All real and complex roots of a polynomial up to degree 12.

About this tool

Type a polynomial in x (brackets and powers are expanded for you) or list its coefficients from the highest power down. The tool lists every root, real and complex, with the residual |p(root)|, checks the sum and product of the roots, and factors the polynomial when all roots are integers.

Finding every root

The fundamental theorem of algebra says a degree-n polynomial has exactly n roots, counting complex ones and repeats. Quadratics have a formula and cubics and quartics have messy ones, but from degree 5 there is no general formula (the Abel–Ruffini theorem), so roots must be found numerically. This tool uses the Durand–Kerner method, which refines all n roots at once, then polishes each with Newton's method. Repeated roots are notoriously hard to pin down numerically, so clusters are detected and refined on the polynomial's derivatives, giving exact-looking answers like (x − 3)⁴ → 3, 3, 3, 3. Examples: x³ − 6x² + 11x − 6 has roots 1, 2 and 3 and factors as (x − 1)(x − 2)(x − 3); x² + 1 has roots ±i; x⁵ − x − 1 has one real root, 1.1673, and two complex-conjugate pairs. Each root comes with |p(root)| so you can judge its accuracy, and Vieta's formulas (the sum of the roots is −b/a) are checked. Honest limits: results are floating-point approximations; very large or tiny coefficients, or near-repeated roots, reduce accuracy. The quadratic solver and the cubic equation solver are related.

Frequently asked questions

How many roots does a polynomial have?

Exactly as many as its degree, counting complex roots and repeated roots.

Is there a formula for degree 5 polynomials?

No general formula exists for degree 5 and above (the Abel–Ruffini theorem), so they are solved numerically.

Why do complex roots come in pairs?

For polynomials with real coefficients, complex roots always come in conjugate pairs a ± bi.

How do I enter the polynomial?

Either as an expression such as 2x^3 - x + 5, or as comma-separated coefficients from the highest power, such as 2, 0, -1, 5.

Is my data sent anywhere?

No. Everything is calculated in your browser, and nothing is stored or sent.