This work presents GROUSE (Grassmanian Rank-One Update Subspace Estimation),\nan efficient online algorithm for tracking subspaces from highly incomplete\nobservations. GROUSE requires only basic linear algebraic manipulations at each\niteration, and each subspace update can be performed in linear time in the\ndimension of the subspace. The algorithm is derived by analyzing incremental\ngradient descent on the Grassmannian manifold of subspaces. With a slight\nmodification, GROUSE can also be used as an online incremental algorithm for\nthe matrix completion problem of imputing missing entries of a low-rank matrix.\nGROUSE performs exceptionally well in practice both in tracking subspaces and\nas an online algorithm for matrix completion.\n