Friction Calculator

Compute friction forces, normal forces, slip angles and incline acceleration — with full working shown.

Free friction calculator covering kinetic and static friction (F = μN), normal force on inclines (N = mg cos θ), critical slip angle (tan θ = μs), incline net force and acceleration (a = g(sin θ − μk cos θ)), and back-calculation of μ from measurements. Runs entirely in your browser. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

What is the difference between static and kinetic friction?

Static friction (F_s) prevents an object from starting to move. It is self-adjusting up to a maximum of μs × N. Once the object moves, kinetic (sliding) friction F_k = μk × N takes over. Because μk is almost always less than μs, less force is needed to keep an object sliding than to start it moving.

Friction is the contact force that resists relative motion between two surfaces. It underpins almost every mechanical problem — from deciding whether a brake can stop a car to working out why a box stays put on a ramp. This calculator covers the five most common friction problems using standard Coulomb (dry-friction) theory, shows all formula steps, and lets you switch between SI and imperial units.

How it works

All five modes use the same underlying model: Coulomb friction, where friction is proportional to the normal force N and a dimensionless material-dependent coefficient μ. The normal force is the component of all forces acting perpendicular to the contact surface.

Mode 1 — Friction force (flat surface). Given N (or a mass from which N = mg is derived) and μ, the tool computes:

  • Kinetic friction: F_k = μk × N
  • Maximum static friction: F_s_max = μs × N

Mode 2 — Normal force on an incline. A surface at angle θ reduces the effective normal force:

  • N = m × g × cos(θ)
  • F_k = μk × N
  • Gravity component down the slope: F_parallel = m × g × sin(θ)

Mode 3 — Coefficient from data. If you have measured both the friction force and the normal force in an experiment: μ = F / N. Useful for verifying material datasheets or characterising custom surface pairings.

Mode 4 — Net force and acceleration on incline. For a sliding object (kinetic regime):

  • F_net = m g sin(θ) − μk × m g cos(θ)
  • a = g × (sin θ − μk cos θ)

The calculator also tells you whether the object would even begin to slide (compares tan θ with μs).

Mode 5 — Critical slip angle. The angle at which static friction is exactly overcome:

  • tan(θ_crit) = μs
  • θ_crit = arctan(μs)

A handy visual SVG force diagram shows the normal force (blue), kinetic friction (red), weight (green) and the gravity component along the slope (amber) for all incline modes.

Worked example

A 5 kg wooden block sits on a dry wood surface (μs = 0.50, μk = 0.30). What angle just starts the block sliding, and what acceleration does it reach once sliding?

Critical slip angle:

  • θ = arctan(0.50) = 26.6°

Acceleration at 30° (just past the slip angle):

  • a = 9.80665 × (sin 30° − 0.30 × cos 30°)
  • a = 9.80665 × (0.500 − 0.260) = 9.80665 × 0.240 ≈ 2.35 m/s²

So the block begins moving at about 27° and accelerates at 2.35 m/s² on a 30° slope.

Surface pairμsμkSlip angle
Rubber on dry concrete0.900.8042.0°
Wood on wood0.500.3026.6°
Steel on steel (dry)0.740.5736.5°
Ice on ice0.100.035.7°
Teflon on Teflon0.040.042.3°

Formula notes

All results use g = 9.80665 m/s² (standard gravity, ISO 80000-3). The Coulomb model is accurate for most dry engineering surfaces at moderate speeds. It assumes:

  • The friction coefficient is independent of contact area (Amontons’ first law).
  • The kinetic coefficient is independent of sliding speed (Amontons’ second law) — this breaks down at very high speeds or for viscous lubrication.
  • The normal force is constant and perpendicular to the surface.

For lubricated contacts, viscoelastic materials (rubber), or micro-scale contacts, tribological models such as Stribeck curves or Hertz contact theory are more appropriate.

Every calculation runs entirely in your browser — no data is sent to any server.