NMR spectroscopy is an inherently insensitive technique with respect to the amount of observable signal. A common element in all NMR spectra is random thermal noise that is often characterized by a signal-to- noise ratio (SNR). SNR can be generically improved experimentally with repetitive signal averaging or during post-processing with apodization; the former often results in long experimental times and the lat- ter results in the loss of spectral resolution. Denoising techniques can instead be used during post- processing to enhance SNR without compromising resolution. The most common approach relies on the singular-value decomposition (SVD) to discard noisy components of NMR data. SVD-based approaches work well, such as Cadzow and PCA, but are computationally expensive when used for large datasets that are often encountered in NMR (e.g., Carr-Purcell/Meiboom-Gill and nD datasets). Herein, we describe the implementation of a new wavelet transform (WT) routine for the fast and robust denoising of 1D and 2D NMR spectra. Several simulated and experimental datasets are denoised with both SVD- based Cadzow or PCA and WT’s, and the resulting SNR enhancements and spectral uniformity are com- pared. WT denoising offers similar and improved denoising compared with SVD and operates faster by several orders-of-magnitude in some cases. All denoising and processing routines used in this work are included in a free and open-source Python library called DESPERATE.

