In a spread spectrum ranging system such as the Global Navigation Satellite System (GNSS), a discriminator is used in the code tracking loop to provide an error signal for the tracking of incoming signals. Typically, the discriminator manipulates several correlator outputs to form the error signal. The design of the discriminator is related to the tracking range, bias in the estimation of time delay, and variance in time delay estimation. In the paper, a multi-objective approach is adopted to design the coefficients associated with the discriminator to lead to a better performance tradeoff in large tracking range, acceptable bias, and small variance. It is shown that the multiple-objective problem can be attacked via a quadratic/linear programming method, rendering achievable bounds in the performance plane. Examples with respect to BPSK (binary phase-shift keying) NRZ (non-return-to-zero) codes and BOC (binary-offset carrier) codes are given to illustrate the design approach.