Abstract Aiming at the real-time and reliability requirements of multi-GNSS navigation satellite selection, we propose a fast satellite selection method based on improved immune algorithm. By selecting the optimal iterations number and the initial population number, the ideal satellite geometry can be obtained and the operation efficiency of receiver can be improved. The 1 day measured data of CUT0 station is used to verify the proposed algorithm. The results show when the initial population number is around 20 and the maximum iterations number is around 120, the satellite selection effect is the best. In the single BDS system, the average geometric dilution of precision(GDOP) difference is only 0.57% compared to the traversal method, and the time consuming is reduced by 53.27%. In the GPS/BDS/Galileo/GLONASS/QZSS combined system, the average GDOP difference is only 0.122 and the average time consuming is 1.06 s, which is reduced by 96.47% compared to the traversal method. The algorithm is suitable for the multi-constellation selection, and has good universality.