Whether it's "real-time" depends on sampling rate. What's true is that most implementations fall short for realistic $f_s$.
I am currently working on CWT that will be faster than any other I know of, best case by several times. Though, it may be a while until it's open-sourced.
An often overlooked point is, CWT has
hop_size just like STFT. Especially if using a scalogram (modulus), there's very little to lose from
4, and sometimes we can do
100+. This is implemented easily with Fourier-domain subsampling:
ifft(a * b)[::2] == ifft((a * b).reshape(2, -1).mean(axis=0))
which reduces FFT size by
hop_size. The relevant question is, what
hop_size is safe? This can be measured directly, as discussed in this answer. Note, perfect inversion is possible for some CWT with complex-valued outputs and
hop_size>1, but max permissible
hop_size is fairly small and the inversion algorithm not straightforward. However, we don't need complex for inversion; inversion is still possible within a global phase-shift.
Another major slowdown is in low-support wavelets, which are better off with overlap-add/overlap-save.
Putting all these together elevates max supported $f_s$ significantly.