A global navigation satellite system, GNSS, receiver comprising: an antenna for receiving wireless signals transmitted by a plurality of GNSS satellites having a plurality of signal types; a radio frequency, RF, front end coupled to the antenna and configured to generate a plurality of samples related to the wireless signals; and a processor coupled to the RF front end and configured to generate GNSS position data based on the plurality of samples, wherein the processor is configured to perform operations comprising: for each particular signal type of the plurality of signal types: excluding the particular signal type; calculating a position of the GNSS receiver based on the wireless signals received from a subset of the plurality of GNSS satellites having a plurality of remaining signal types; and calculating a residual score based on a variability associated with calculating the position, the residual score being one of a plurality of residual scores; identifying an outlier residual score from the plurality of residual scores; and identifying which of the plurality of signal types includes a spoofing signal based on the outlier residual score. an antenna for receiving wireless signals transmitted by a plurality of GNSS satellites having a plurality of signal types; a radio frequency, RF, front end coupled to the antenna and configured to generate a plurality of samples related to the wireless signals; and a processor coupled to the RF front end and configured to generate GNSS position data based on the plurality of samples, wherein the processor is configured to perform operations comprising: for each particular signal type of the plurality of signal types: excluding the particular signal type; calculating a position of the GNSS receiver based on the wireless signals received from a subset of the plurality of GNSS satellites having a plurality of remaining signal types; and calculating a residual score based on a variability associated with calculating the position, the residual score being one of a plurality of residual scores; identifying an outlier residual score from the plurality of residual scores; and identifying which of the plurality of signal types includes a spoofing signal based on the outlier residual score. for each particular signal type of the plurality of signal types: excluding the particular signal type; calculating a position of the GNSS receiver based on the wireless signals received from a subset of the plurality of GNSS satellites having a plurality of remaining signal types; and calculating a residual score based on a variability associated with calculating the position, the residual score being one of a plurality of residual scores; excluding the particular signal type; calculating a position of the GNSS receiver based on the wireless signals received from a subset of the plurality of GNSS satellites having a plurality of remaining signal types; and calculating a residual score based on a variability associated with calculating the position, the residual score being one of a plurality of residual scores; identifying an outlier residual score from the plurality of residual scores; and identifying which of the plurality of signal types includes a spoofing signal based on the outlier residual score.