Engine Displacement Calculator

Calculate engine displacement from bore, stroke, and cylinder count, or work backward from a target engine size.

What do you want to find?
Bore and stroke unit
Advanced options
Calculating...
Did we solve your problem today?


How to use our Engine Displacement Calculator

  1. Choose What do you want to find?: Find engine size, Find bore, or Find stroke.
  2. Pick the Bore and stroke unit, then enter the visible Bore, Stroke, Cylinders, and any Target engine size fields needed for that mode.
  3. Open Advanced options only if you want to test a Bore change or Stroke change without replacing the original engine measurements.
  4. Select Calculate and read the main engine size first, then check Size per cylinder and Bore to stroke comparison for context.
  5. Sanity-check the answer: a 4.000 inch bore, 3.480 inch stroke, and 8 cylinders should be about 350.0 cu in, 5733 cc, or 5.733 L.
Example inputs for Engine Displacement Calculator
Example inputs for Engine Displacement Calculator

Definitions

Bore: The width across one cylinder. In this calculator it uses the selected Bore and stroke unit.

Stroke: How far the piston travels from top to bottom. Stroke must use the same unit as Bore.

Cylinders: The total number of cylinders in the engine. The calculator assumes every cylinder has the same bore and stroke.

Target engine size: The total displacement you want to match when finding Needed bore or Needed stroke.

Engine size in cc: Total swept volume in cubic centimeters. One cc is the same volume as one cubic centimeter.

Engine size in liters: Total swept volume in liters. This is the style often used in modern engine names.

Engine size in cubic inches: Total swept volume in cubic inches. This is common for older US engine names.

Bore to stroke comparison: Bore divided by stroke. Above 1.01 is labeled wider bore, below 0.99 is labeled longer stroke, and near 1.00 is labeled near square.


Common mistakes and quick fixes

Mistake: Mixing inches and millimeters in Bore and Stroke while Bore and stroke unit is set to one unit.
Fix: Convert both measurements first, or switch Bore and stroke unit so both Bore and Stroke use the same unit.

Mistake: Using the engine family name as Target engine size without checking Target size unit.
Fix: If the target is 350 cubic inches, set Target size unit to cubic inches; if it is 2.0 liters, set Target size unit to liters.

Mistake: Entering Bore change as the final bore size instead of the amount changed.
Fix: Put only the difference in Bore change, such as 0.030 for a 30-thousandths inch overbore.

Mistake: Leaving Stroke at zero in Find bore mode or Bore at zero in Find stroke mode.
Fix: Enter the known positive Stroke or Bore, because Needed bore and Needed stroke cannot be solved from a zero dimension.

Mistake: Choosing the wrong Cylinders count, such as 4 for one bank of a V8.
Fix: Set Cylinders to the total number of cylinders in the whole engine.


Limitations & Key Assumptions / Boundary Conditions

  • The formula calculates swept piston volume only. It does not include combustion chamber volume, gasket volume, piston dish, deck height, or compression ratio.
  • Bore and Stroke are treated as exact measurements. Real blocks, pistons, rings, and machining tolerances can make measured displacement slightly different.
  • All cylinders are assumed to have the same Bore and Stroke. The calculator is not built for mixed-size cylinders.
  • Find bore and Find stroke solve a pure geometry problem. They do not check whether the result is safe for a block, crank, rods, pistons, or cylinder wall thickness.
  • Bore change and Stroke change are comparison inputs only. If a change makes the final bore or stroke zero or negative, the changed result is not physically possible.
  • Rounded displayed values can differ slightly from hand calculations that round earlier. The calculator keeps full precision during the math, then rounds the final display.

Methodology

Core calculation

The calculator uses the standard cylinder-volume formula for a piston engine: circle area times stroke times cylinder count [3]. Bore and stroke must be in the same length unit before the formula is used.

displacement = (pi / 4) * bore^2 * stroke * cylinders

If the selected unit is inches, the raw result is cubic inches. If the selected unit is millimeters, the raw result is cubic millimeters and is converted to cc, liters, and cubic inches.

cc = cubic_mm / 1000

liters = cc / 1000

cubic_inches = cc / 16.387064

cc = cubic_inches * 16.387064

Solving backward

In Find bore mode, the target engine size is first converted to the cubic unit that matches Stroke. The Bore field is ignored in that mode.

bore = sqrt((4 * target_displacement) / (pi * stroke * cylinders))

In Find stroke mode, the target engine size is first converted to the cubic unit that matches Bore. The Stroke field is ignored in that mode.

stroke = (4 * target_displacement) / (pi * bore^2 * cylinders)

Extra comparisons

Size per cylinder is total cc divided by Cylinders. Bore to stroke comparison is used as a simple shape label, not a power or durability rating.

size_per_cylinder = total_cc / cylinders

ratio = bore / stroke

Optional change math adds Bore change and Stroke change to the original measurements, then reruns the same displacement formula.

changed_displacement = (pi / 4) * (bore + bore_change)^2 * (stroke + stroke_change) * cylinders

change_from_original = changed_cubic_inches - original_cubic_inches

Mini-example

For Bore 4.000 in, Stroke 3.480 in, and Cylinders 8, the raw result is about 349.8478 cubic inches. That converts to about 5733 cc and 5.733 L. With a Bore change of 0.030 in and no Stroke change, the changed size is about 5.819 L, a gain of about 5.3 cubic inches.


Sources