Cross Product Calculator – Vector Product, Area, and Normal Vector
The cross product (also called the vector product) is one of two fundamental ways to multiply vectors in three dimensions, alongside the dot product. Unlike the dot product, which returns a scalar, the cross product of two vectors returns a brand-new vector that is perpendicular to both original vectors. This calculator computes the full cross product of two 3D vectors, along with its magnitude, the parallelogram and triangle area it spans, the angle between the input vectors, and the unit normal vector.
The Cross Product Formula
For two vectors A = (a₁, a₂, a₃) and B = (b₁, b₂, b₃), the cross product is defined as:
A × B = (a₂b₃ − a₃b₂, a₃b₁ − a₁b₃, a₁b₂ − a₂b₁)
For example, if A = (1, 2, 3) and B = (4, 5, 6), then A × B = (2×6 − 3×5, 3×4 − 1×6, 1×5 − 2×4) = (−3, 6, −3). Note that the cross product is anti-commutative: swapping the order of the vectors flips the sign of the result, so B × A = −(A × B).
Magnitude, Parallelogram Area, and Triangle Area
The magnitude of the cross product equals |A × B| = |A|·|B|·sin(θ), where θ is the angle between A and B. Geometrically, this magnitude is exactly the area of the parallelogram spanned by A and B. Since a triangle formed by the same two vectors is half that parallelogram, the triangle area is simply |A × B| / 2. This makes the cross product a fast way to compute the area of a triangle in 3D space directly from its vertex coordinates, without needing Heron's formula.
Finding the Angle Between Two Vectors
Rearranging the magnitude identity gives the angle between the vectors:
θ = arcsin( |A × B| / (|A|·|B|) )
The calculator reports this angle in both degrees and radians. This calculation is skipped whenever either input vector has zero magnitude, since dividing by zero is undefined.
The Right-Hand Rule and Unit Normal Vector
The direction of A × B follows the right-hand rule: if you point the fingers of your right hand along vector A and curl them toward vector B, your thumb points in the direction of A × B. This makes the cross product especially useful for finding a normal vector — a vector perpendicular to a surface — which is essential in 3D graphics for lighting and shading calculations. Dividing the cross product by its own magnitude produces the unit normal vector, (cx/|A×B|, cy/|A×B|, cz/|A×B|), a length-one vector pointing in the same perpendicular direction.
Special Cases: Zero and Parallel Vectors
If either vector A or B is the zero vector, the cross product is always (0, 0, 0) — this is a valid, well-defined result. If both vectors are zero, the cross product is undefined in a meaningful geometric sense, and the calculator flags this explicitly. If neither vector is zero but they point in the same or exactly opposite direction (i.e. they are parallel), the cross product magnitude is zero because sin(0°) = sin(180°) = 0; the calculator labels this case as "parallel" rather than showing a misleading angle or unit normal.
Real-World Applications
- Physics — torque and angular momentum: Torque is calculated as
τ = r × F, the cross product of the position vector and the applied force. - Computer graphics — surface normals: Rendering engines compute the cross product of two edge vectors of a triangle to find the normal used for lighting.
- Engineering — plane equations: A normal vector derived from a cross product defines the orientation of a plane passing through three known points.
- Electromagnetism: The magnetic force on a moving charge is
F = qv × B, where the cross product determines the force's direction.
Using This Calculator
Enter the X, Y, and Z components of vector A and vector B — results update instantly as you type. Expand the Show Steps panel to see the substituted formula, adjust decimal precision from 0 to 10 places, and use the copy, share, or CSV export buttons to save your results. Your last-used inputs are automatically remembered in your browser for next time.