Vector Cross Product Calculator
Calculate the cross product of two 3D vectors.
Returns the resulting vector, magnitude, angle between inputs, and area of the parallelogram they span.
The cross product (also called the vector product) takes two vectors in three-dimensional space and produces a third vector perpendicular to both. Unlike the dot product, which collapses two vectors into a single number, the cross product preserves direction. The result is a full vector with magnitude and orientation.
The formula:
a × b = (a₂b₃ − a₃b₂, a₃b₁ − a₁b₃, a₁b₂ − a₂b₁)
Or as a 3×3 determinant with the standard basis vectors in the top row:
| i j k | | a₁ a₂ a₃ | | b₁ b₂ b₃ |
Expanding along the top row gives the same component expression. Many people find the determinant form easier to remember and harder to make sign errors with.
The magnitude has a clean geometric meaning:
|a × b| = |a| × |b| × sin(θ)
Where θ is the angle between the two vectors. This equals the area of the parallelogram with sides a and b. Half that value is the area of the triangle with those sides as edges.
Right-hand rule for direction: Point your right hand’s fingers along vector a, curl them toward vector b through the smaller angle, and your thumb points in the direction of a × b. If a and b are parallel, no unique perpendicular exists and the cross product is the zero vector. If they are antiparallel, same thing.
Key properties:
- Anti-commutative: a × b = −(b × a). Order matters.
- Distributive: a × (b + c) = a × b + a × c
- Not associative: a × (b × c) ≠ (a × b) × c in general
- a × a = 0 for any vector a
- Scalar pull-through: (k·a) × b = k·(a × b)
Worked example, a × b for a = (2, 3, 4) and b = (5, 6, 7):
x-component: a₂b₃ − a₃b₂ = (3)(7) − (4)(6) = 21 − 24 = −3 y-component: a₃b₁ − a₁b₃ = (4)(5) − (2)(7) = 20 − 14 = 6 z-component: a₁b₂ − a₂b₁ = (2)(6) − (3)(5) = 12 − 15 = −3
a × b = (−3, 6, −3)
Check perpendicularity: a · (a × b) = (2)(−3) + (3)(6) + (4)(−3) = −6 + 18 − 12 = 0 ✓ Similarly b · (a × b) = (5)(−3) + (6)(6) + (7)(−3) = −15 + 36 − 21 = 0 ✓
Worked example, area of a triangle in 3D: Triangle with vertices A(1, 0, 0), B(0, 2, 0), C(0, 0, 3).
AB = B − A = (−1, 2, 0) AC = C − A = (−1, 0, 3) AB × AC = ((2)(3) − (0)(0), (0)(−1) − (−1)(3), (−1)(0) − (2)(−1)) = (6, 3, 2) |AB × AC| = √(36 + 9 + 4) = √49 = 7 Triangle area = |AB × AC| / 2 = 3.5 square units
Where the cross product shows up:
- Physics torque: τ = r × F. The torque magnitude equals |r||F|sin(θ), which is why a force perpendicular to the lever arm produces maximum torque.
- Magnetic force on a moving charge: F = qv × B. This is why charged particles spiral in magnetic fields rather than going straight.
- Angular momentum: L = r × p, where p is linear momentum. Conservation of angular momentum follows directly from this definition.
- Computer graphics: surface normals are computed as the cross product of two edge vectors of a triangle. The normal direction determines which side of the triangle faces the camera and how light reflects off it.
- Aerospace and robotics: orientation calculations, rigid-body rotations, and inertia tensor work all rely heavily on cross products.
Historical note: Hermann Grassmann published the geometric foundations in 1844. William Rowan Hamilton developed quaternions in 1843, and the cross product fell out naturally as the imaginary-part operation. Josiah Willard Gibbs and Oliver Heaviside in the 1880s extracted the modern vector-only notation from Hamilton’s quaternion algebra, which is what most physics and engineering students learn today.
Cross product vs. dot product: The dot product a · b = |a||b|cos(θ) gives a scalar that measures alignment. The cross product gives a vector that measures perpendicularity. Together they characterize the relationship between two vectors completely: if you know |a|, |b|, the dot product, and the cross product, the geometry is fully determined.