We present a theory and numerical algorithm to directly determine the time-varying along-track geopotential difference and deflection of the vertical at the Gravity Recovery and Climate Experiment (GRACE) satellite altitude. The determination was implemented using the GEOGRACE computer program using the K-band range rate (KBRR) of GRACE from the Level-1B (L1B) product. The method treated KBRR, GPS-derived orbit of GRACE and an initial geopotential difference as measurements used in the least-squares estimation of the geopotential difference and its formal error constrained by the energy conservation principle. The computational procedure consisted of three steps: data reading and interpolation, data calibration and estimations of the geopotential difference and its error. The formal error allowed removal of KBRR outliers that contaminated the gravity solutions. We used the most recent models to account for the gravity changes from multiple sources. A case study was carried out over India to estimate surface mass anomalies from GEOGRACE-derived geopotential differences. The 10-day mass changes were consistent with those from the MASCON solutions of NASA (correlation coefficient up to 0.88). Using the geopotential difference at satellite altitude avoids the errors caused by downward continuation, enabling the detection of small-scale mass changes.