Skip to content
D DocNectar

Free Bilinear Interpolation Calculator

Interpolate a value at an interior point of a rectangle from its four known corner values.

100% Free No Signup Works on all devices

Built and fact-checked by the DocNectar team — see our editorial standards

Thanks for rating!

Key Features

Instant Calculation

Get accurate results in real time with our optimized algorithm.

Mobile Friendly

Fully responsive design. Works on all devices & screen sizes.

Privacy Focused

Your data stays on your device. We don't store any inputs.

100% Free

No hidden costs. This tool is completely free forever.

Bilinear interpolation estimates the value at a point inside a rectangle from the four known values at its corners, by linearly interpolating first in one direction and then the other. It's the two-dimensional extension of ordinary (linear) interpolation: where linear interpolation fills in an unknown value between two known points on a line, bilinear interpolation fills in an unknown value across a whole grid cell using the four points that bound it. This technique is everywhere in computing and applied science: image editing software uses it to resize or rotate photos smoothly, computing intermediate pixel colors from their neighbors; GIS software and flight simulators use it to estimate elevation or temperature at a location between known survey/sensor points on a terrain grid; and numerical lookup tables in engineering (steam tables, gas property charts, calibration curves) use it to estimate a value between two rows and two columns of tabulated data without needing an entry for every possible input.

How it works

Enter the rectangle's four corner coordinates and their known z-values (the quantity being interpolated), plus the target (x, y) point that falls inside the rectangle. The calculator first interpolates linearly along the top edge and along the bottom edge separately, producing two intermediate values at the target's x-coordinate, then interpolates linearly one more time between those two intermediate values using the target's y-coordinate. The net result is mathematically equivalent to fitting a flat, saddle-shaped surface through the four corner points and reading off its height at (x, y) — it will never overshoot above the highest corner value or below the lowest one.

  1. Enter x1 (left).
  2. Enter x2 (right).
  3. Enter y1 (bottom).
  4. Enter y2 (top).
  5. Enter z at (x1, y1).
  6. Enter z at (x2, y1).
  7. Enter z at (x1, y2).
  8. Enter z at (x2, y2).
  9. Enter target point — x.
  10. Enter target point — y.
  11. Click Calculate to see your results.

Examples

Unit square corners 10/20/30/40

For a 10×10 square with corner values 10, 20, 30, 40 (going around), the exact center point (5, 5) interpolates to 25 — the plain average of all four corners, since the center is equidistant from every edge.

Off-center point in a 2×2 square

For corners at (0,0)=0, (2,0)=10, (0,2)=20, (2,2)=30, the point (0.5, 0.5) interpolates to 0 + 0.25×(10−0) + 0.25×(20−0) + 0.0625×(30−10−20+0) ≈ 7.5 — closer to the (0,0) corner's value of 0 since the target point sits nearer that corner.

Point exactly on an edge

If the target (x, y) point falls exactly on the boundary between two corners (rather than strictly inside the rectangle), bilinear interpolation reduces to ordinary single-direction linear interpolation between just those two corners — the calculation still works, just using only half the available data.

Common mistakes to avoid

  • Entering corner z-values in the wrong position — double check which corner (bottom-left, bottom-right, top-left, top-right) each z-value actually corresponds to before submitting.
  • Using bilinear interpolation for a target point that falls outside the rectangle defined by the four corners — that's extrapolation, which this formula isn't designed to handle reliably.
  • Assuming the interpolated surface is flat (perfectly planar) — it's only linear along each axis individually, so the combined surface can have a gentle curve or twist across the rectangle.
  • Mixing up rows and columns when reading values from a lookup table, effectively swapping the x and y directions before interpolating.

Frequently asked questions

Very commonly in image resizing and rotation (estimating a new pixel's color from its four nearest original pixels), terrain and heightmap lookups in GIS and games, and any 2D grid of tabulated data where you need an estimate between known sample points.
Linear interpolation estimates a value between two known points on a single line (1D). Bilinear interpolation extends the same idea to two dimensions, using four known points arranged in a rectangle and interpolating twice — once in each direction.
No — as long as the target point lies inside the rectangle, the interpolated value is always a weighted average of the four corners, so it can never exceed the highest corner value or fall below the lowest one.
Standard bilinear interpolation assumes an axis-aligned rectangular grid. For points forming an irregular quadrilateral, a related but more complex technique (such as inverse distance weighting or a bilinear transform accounting for the distortion) is needed instead.
Not quite — interpolation guarantees the surface passes exactly through all four given corner values, while a regression or "best fit" surface would only approximate them, potentially missing every single data point in exchange for a smoother overall trend.
"Bilinear" refers to the fact that the surface is linear in each direction separately — a straight line if you fix x and vary only y, or vice versa — even though the combined surface (as a function of both x and y together) has a slight curved, saddle-like shape overall.

Get new calculators and guides in your inbox

No spam — just new tools like Bilinear Interpolation Calculator and practical guides.

Favorites