Building on the blueprint from Goemans and Williamson (1995) for the Max-Cut problem, we construct a polynomial-time approximation algorithm for orthogonally constrained quadratic optimization problems. First, we derive a semidefinite relaxation and propose a randomized rounding algorithm to generate feasible solutions from the relaxation. Second, we derive purely multiplicative approximation guarantees for our algorithm. When optimizing for m orthogonal vectors in dimension n, we show that our algorithm achieves a performance ratio of at least max{2/(pi m), 1/(pi(log (2m)+1))}. Our analysis is tight in the sense that we exhibit instances where our algorithm’s performance is at most O(1/log m). We also show how to compute a tighter constant for finite (n,m) by solving a univariate optimization problem, and this analysis is exact for any n when m=1.