Implicit Differentiation Calculator (dy/dx)

Enter an equation in x and y — one side on the left, one on the right — and this calculator produces dy/dx without ever solving for y. It forms F(x, y) = left − right, differentiates it partially with respect to each variable, and returns the slope as −Fx/Fy. You also get both partials as numbers, the normal slope, and a residual that tells you whether the point you typed actually lies on the curve. Where Fy is zero the tangent is vertical, and the calculator says so instead of printing a fake number.

Calculator

This calculator runs in your browser. Enable JavaScript for live results — the inputs, formula and worked example below remain fully readable without it.

Inputs this calculator takes, with typical values
InputWhat to enterExample
Left-hand sideEverything to the left of the equals sign, written in x and y. Use ^ for powers, * for multiplication (2*x, 2x and a plain space all work, so x sin(x) is read as a product), and the function names sin, cos, tan, sec, csc, cot, asin, acos, atan, sinh, cosh, tanh, exp, ln, log (base 10), sqrt, cbrt and abs. The constants pi and e are recognised.x^2 + y^2
Right-hand sideEverything to the right of the equals sign. A bare number is fine.25
Point x₀The x coordinate of a point on the curve.3
Point y₀The matching y coordinate. Check the residual output to confirm the pair really is on the curve.4

It returns

  • dy/dx at your point — Slope of the tangent to the curve at your point. Blank when the tangent is vertical.
  • dy/dx as a formula
  • F_x at the point
  • F_y at the point
  • Slope of the normal line
  • F at your point, which should be 0 — How far your point sits off the curve. Anything but zero means the point is on a different level curve.

The formula

dydx=FxFy
Fx+Fydydx=0

In plain text: dy/dx = −F_x / F_y, where F(x, y) = 0

  • F(x, y)The equation rearranged so everything sits on one side and equals zero (—)
  • F_xPartial derivative of F with respect to x, holding y fixed (—)
  • F_yPartial derivative of F with respect to y, holding x fixed (—)
  • dy/dxSlope of the tangent to the curve F = 0 (units of y per unit of x)

The formula follows from the chain rule applied to F(x, y(x)) = 0, and it holds wherever F is continuously differentiable and F_y is non-zero — the hypothesis of the implicit function theorem.

Updated Category Derivatives & Differentiation Verified against published test cases Reading time 10 min

Why some curves refuse to be written as y = f(x)

The circle x² + y² = 25 is not a function. Every x strictly between −5 and 5 has two matching y values, so no single formula y = f(x) describes the whole curve. You can split it into an upper half and a lower half, differentiate each separately, and stitch the answers together — but that is fiddly, and it fails outright for curves like the folium x³ + y³ = 6xy, which cannot be solved for y in elementary terms at all.

Implicit differentiation sidesteps the problem. You assume that near the point you care about the curve is the graph of some function y(x), even though you cannot write that function down. Then you differentiate the whole equation with respect to x, treating y as a function of x and letting the chain rule attach a dy/dx to every y term. What comes out is a linear equation in dy/dx, and you solve it.

The assumption is not free. The implicit function theorem says it is legitimate exactly where F is continuously differentiable and F_y is non-zero. That condition is the mathematical content of the vertical-tangent notice this calculator prints: where F_y vanishes, y genuinely is not a function of x nearby, and dy/dx has no finite value.

Two routes to the same answer, and why this one is cleaner

The classroom route. Differentiate both sides term by term, writing y′ every time the chain rule hits a y. For the circle: 2x + 2y·y′ = 0, so y′ = −x/y. This is what your instructor wants to see on paper, and it is what the steps panel reproduces in effect.

The partial-derivative route. Move everything to one side to get F(x, y) = 0, compute the two partial derivatives, and use dy/dx = −F_x/F_y. For the circle, F = x² + y² − 25, F_x = 2x, F_y = 2y, and dy/dx = −2x/2y = −x/y. Identical answer, fewer places to lose a term.

The two routes are the same calculation. Differentiating F(x, y(x)) = 0 with the multivariable chain rule gives F_x + F_y·(dy/dx) = 0, and rearranging that single line produces the formula. The advantage of the partial form is mechanical: each partial derivative is an ordinary one-variable differentiation with the other letter frozen, so you can use the plain rules from the derivative calculator twice and never juggle y′ symbols mid-expression.

It also generalises. The same expression is the two-dimensional case of the gradient being perpendicular to a level curve, which is why the gradient vector (F_x, F_y) points along the normal direction while (−F_y, F_x) points along the tangent.

Worked example: the circle x² + y² = 25 at the point (3, 4)

First confirm the point is on the curve: 3² + 4² = 9 + 16 = 25. It is, so the residual output reads zero.

  1. Move everything to one side. F(x, y) = x² + y² − 25.
  2. Differentiate with respect to x, holding y constant. F_x = 2x, so at the point F_x = 2(3) = 6.
  3. Differentiate with respect to y, holding x constant. F_y = 2y, so at the point F_y = 2(4) = 8.
  4. Apply the formula. dy/dx = −F_x/F_y = −6/8 = −0.75.
  5. Sanity-check the geometry. The radius from the origin to (3, 4) has slope 4/3. A tangent to a circle is perpendicular to the radius, so its slope must be −3/4 = −0.75. It matches.
  6. Normal slope. −1/(−0.75) = 1.3333, which is 4/3 — the radius, exactly as expected.

Now take the same circle at (4, 3). Then F_x = 8, F_y = 6, and dy/dx = −8/6 = −1.3333. The tangent is steeper because the point sits closer to the horizontal extreme of the circle, and at (5, 0) it stops existing altogether: F_y = 0 there, and the tangent is the vertical line x = 5.

For a curve you could not have solved by hand, try the folium x³ + y³ = 6xy at (3, 3). Here F = x³ + y³ − 6xy, so F_x = 3x² − 6y = 27 − 18 = 9 and F_y = 3y² − 6x = 27 − 18 = 9, giving dy/dx = −9/9 = −1. A slope of −1 is perpendicular to the line y = x, which is the folium's axis of symmetry — and (3, 3) is exactly where the curve meets that axis, so the tangent there has to be perpendicular to it.

How to read each output

The residual is the first thing to check. It reports F(x₀, y₀), which must be zero for a point on the curve. If it is not, the calculator still returns a slope — but that is the slope of the level curve F = residual passing through your point, not of the curve you typed. This is the most common way to get a plausible-looking wrong answer here, so the calculator warns explicitly.

A blank slope means a vertical tangent. When F_y = 0 and F_x is not zero, the tangent line is vertical and no finite slope exists. That is not a failure: it is a real geometric feature, and it happens at the leftmost and rightmost points of any closed curve. In that situation x is a perfectly good function of y, and dx/dy = −F_y/F_x = 0.

When both partials vanish, the point is singular. F_x = F_y = 0 means the implicit function theorem gives you nothing at all — the curve may cross itself, form a cusp, or reduce to an isolated point. The folium at the origin is the standard example: both partials are zero, and the curve genuinely has two branches through that point with two different tangents.

The normal slope is the negative reciprocal. It is undefined when the tangent is horizontal, for the mirror-image reason that the tangent slope is undefined when the tangent is vertical.

Standard implicit curves and their derivatives

Each dy/dx below is −F_x/F_y with F equal to the left side minus the right side. Every row was produced with this calculator.
EquationF_xF_ydy/dxVertical tangent where
x² + y² = r²2x2y−x/yy = 0
x²/a² + y²/b² = 12x/a²2y/b²−b²x/(a²y)y = 0
xy = kyx−y/xx = 0
x² − y² = 12x−2yx/yy = 0
x³ + y³ = 6xy3x² − 6y3y² − 6x(6y − 3x²)/(3y² − 6x)y² = 2x
sin(x) + y = xycos x − y1 − x(y − cos x)/(1 − x)x = 1

The vertical-tangent column is the solution set of F_y = 0. Points where F_x and F_y both vanish are singular, and none of these formulas applies there.

Where implicit differentiation goes wrong

  • Forgetting the chain rule on y terms. Differentiating with respect to x gives 2y·y′, not 2y. Every missing y′ silently changes the answer.
  • Using a point that is not on the curve. The formula returns a number for any point in the plane, but it only means what you think it means when the residual is zero. Check it every time.
  • Reporting a slope where the tangent is vertical. Dividing by F_y = 0 produces infinity or a spurious huge number in hand work. The correct statement is that dy/dx does not exist and dx/dy is zero.
  • Assuming one x value determines the branch. A circle has two points for most x values, with slopes of opposite sign. (3, 4) gives −0.75 and (3, −4) gives +0.75. The point, not the x value, selects the branch.
  • Treating a singular point as ordinary. When both partials are zero the implicit function theorem does not apply, and any slope you compute there is meaningless. Look for self-intersections and cusps.
  • Losing the minus sign in −F_x/F_y. It comes from moving F_x across the equals sign in F_x + F_y·y′ = 0. Drop it and every slope you produce points the wrong way.

Second derivatives, related rates and what this tool leaves out

This calculator returns the first derivative only. To get d²y/dx² implicitly you differentiate dy/dx = −F_x/F_y again, remembering that y is still a function of x, then substitute the first derivative back in. For the circle that yields the tidy result d²y/dx² = −25/y³, negative on the upper semicircle and positive on the lower one — concave down above the axis and concave up below it, which is what a circle looks like. The second derivative calculator handles the explicit case.

Related-rates problems are the same machinery with time as the hidden variable. If a ladder of fixed length leans against a wall, x² + y² = L² holds at every instant, and differentiating with respect to t gives 2x·(dx/dt) + 2y·(dy/dt) = 0. That is implicit differentiation with t as the parameter rather than x, and the algebra is identical.

What the calculator will not do is solve the equation for y, find the points on the curve for a given x, or plot the curve. Finding those points is a root-finding job — bisection or Newton's method applied to F(x₀, y) = 0 in y will locate them. It also has no rule for functions outside the standard elementary library, and it says so rather than guessing.

Frequently asked questions

How do I enter an equation with variables on both sides?

Type each side into its own box exactly as written — the calculator forms F = left − right itself. For x³ + y³ = 6xy, put x^3 + y^3 on the left and 6*x*y on the right. There is no need to rearrange anything by hand, and doing so will not change the answer.

Why does the calculator say my point is not on the curve?

Because F(x₀, y₀) came out non-zero. Substitute your coordinates into both sides of your equation and compare: for a point on the curve they must be equal. Rounded coordinates are a common cause — using (3, 4.0001) on a circle of radius 5 gives a small but genuine residual and a slightly wrong slope.

What does a blank dy/dx mean?

It means F_y = 0 at your point, so the tangent line is vertical and has no slope. This is a real feature of the curve rather than an error. At such a point the roles of the variables swap: x is a differentiable function of y, and dx/dy = −F_y/F_x = 0.

Can I use this for related rates problems?

Indirectly, yes. Compute dy/dx here, then use the chain rule dy/dt = (dy/dx)·(dx/dt) with whatever rate the problem gives you. For a ladder against a wall with x² + y² = 25 at the point (3, 4), dy/dx = −0.75, so if the base slides out at 2 ft/s the top falls at −0.75 × 2 = −1.5 ft/s.

Does the order of the two sides matter?

No. Swapping them replaces F by −F, which negates both partial derivatives, and the two minus signs cancel in −F_x/F_y. The residual changes sign, which is worth knowing if you are reading it closely, but the slope, the normal slope and the vertical-tangent condition are all unchanged.

What if both partial derivatives are zero?

Then the point is singular and this method defines no tangent slope there. The curve may cross itself, come to a cusp, or be an isolated point. The folium x³ + y³ = 6xy at the origin is the standard case: two branches pass through with different tangents, so no single dy/dx can describe both.

Is the formula really the same as differentiating term by term?

Yes, and the proof is one line. Differentiating F(x, y(x)) = 0 with the chain rule gives F_x + F_y·(dy/dx) = 0; solving for dy/dx gives the formula. Every term-by-term hand calculation you have done is that identity written out longhand.

How accurate are the numbers shown?

The partial derivatives are exact symbolic expressions, so the only error is the double-precision arithmetic used to evaluate them — around fifteen significant digits. The residual measures your point rather than rounding noise, so treat a residual of 1e−3 as a genuinely off-curve point.

References

  • Calculus, 8th edition (implicit differentiation, section 3.5) — James Stewart, Cengage Learning
  • Principles of Mathematical Analysis, 3rd edition (implicit function theorem, chapter 9) — Walter Rudin, McGraw-Hill
  • Thomas' Calculus, 14th edition — Hass, Heil & Weir, Pearson