The accurate timing and frequency synchronization is hard to obtain for space---time block codes (STBC) multiple input multiple output (MIMO) orthogonal frequency-division multiplexing (OFDM) systems at low signal-to-noise ratio (SNR). In this paper, a new synchronization algorithm for STBC MIMO-OFDM system at low SNR is proposed. Firstly, a set of imaginary orthogonal complementary sequences with a set of imaginary complementary sequence sets and orthogonal matrix is constructed, and the proper length of the imaginary orthogonal complementary sequences is obtained by extending the sequences through transforming orthogonal matrix. Secondly, in order to improve the sequences' auto-correlation and cross-correlation, the training sequences are constructed with their minus conjugates, and then superimposed on data signals. Finally, good synchronization is obtained by cross-correlation operation between the training sequences and data signals at the receiver. The integer frequency offset is estimated to be $$\varepsilon \in [ - N/4,N/4]$$źź[-N/4,N/4]. Theoretical analysis and simulation prove that this synchronization algorithm achieves precise timing synchronization, wider frequency offset range and lower computational complexity at low SNR than conventional algorithm.