DEV Community

Jacky Chan
Jacky Chan

Posted on

Calculating Epoxy Volume for Irregular Shapes: The Segment Method

Most volume calculators assume a rectangle. Real epoxy projects — a live-edge river table, a void in a burl slab, an irregular crack — are not rectangles, and a single length × width × depth estimate can be off by 20% or more. Here is the segment method I use, and the maths behind it.

Divide and measure

Split the irregular channel into n segments along its length. For each segment i, measure the width w_i at that station. With segment length L_i and a constant pour depth d:

V_raw = d × Σ (L_i × w_i)
Enter fullscreen mode Exit fullscreen mode

With 5–8 stations, this trapezoidal-style approximation is typically within a few percent of the true area — far better than one average-width guess, which systematically underestimates bulges and overestimates necks in a way that does not cancel out.

Raw volume is not the order quantity

Three corrections turn geometry into a purchase plan:

  1. Waste factor — 5–10% for mixing and transfer losses: V_waste = V_raw × 1.10
  2. Seepage / seal coat — porous live edge absorbs a measurable first coat. Budget it as a separate thin-coat volume over the wood contact area, not as a percentage fudge.
  3. Layer constraints — deep-pour resins have a maximum lift thickness (often ~2 in). Total volume does not change, but batch count and Part A / Part B split per batch do: batches = ceil(depth / max_lift), and each batch is mixed at the product ratio (1:1, 2:1, 3:1 by volume or weight — never assume they are interchangeable).

Unit discipline matters too: 1 US gallon = 231 cubic inches = 3.785 litres, and ounces in a product listing are fluid ounces, not weight ounces. Resin density (~1.1–1.2 g/ml for most casting resins) is why "weigh it instead" advice needs the specific product's density, not a generic 1.0.

Reference implementation

If you want to sanity-check your spreadsheet against a worked implementation of exactly this model — segment mode, waste, seepage, seal coat, and A/B split — this epoxy resin calculator exposes its assumptions rather than hiding them behind a single number, which makes it useful as a test oracle for your own code.

Edge cases worth testing

  • Depth varying along the channel (then segments need their own d_i)
  • A river that forks (treat each branch as its own segment chain)
  • Metric inputs with imperial product sizes (convert once, at the end, not per segment)

How do you handle seepage in your own estimators — fixed allowance, or measured after the seal coat? Curious how other builders model it.

Top comments (0)