As I understand it, I/Q data is the complex representation of any waveform. It enables us to understand two things at any arbitrary point in time:

  1. The projected amplitude of the waveform.
  2. The direction of the waveform.

However, it's still unclear to me what makes I/Q data so special.

Logically, I can discern the direction of a waveform implicitly: If I'm talking (or transmitting), I know a signal is travelling away from me. On the other hand, if I'm listening, I know any signal I hear must have been travelling toward me.

And if I want to know the amplitude of a waveform, I can just wait until I see a peak.

This in mind, what sorts of modulations/demodulations would be impossible with real data instead of I/Q data? Respectfully, I'd appreciate an example based on reality as I understand that I/Q data makes the result of a FFT transform deterministic, but I don't really understand why that's relevant.

  • $\begingroup$ For any layperson (like myself) who happens across this question, you'll likely find this explanation of I/Q data useful for context: whiteboard.ping.se/SDR/IQ $\endgroup$
    – Xeyler
    Oct 25, 2020 at 18:45
  • $\begingroup$ You might also want to look into writing about lock-in amplifiers (even just undergrad physics lab manuals), they use the same idea except they're called X and Y instead of I and Q. Might make something click for you $\endgroup$
    – llama
    Oct 26, 2020 at 5:06

5 Answers 5


The main motivation for using quadrature (I/Q) signals is spectral efficiency.

Most signals are naturally baseband: they have no carrier, their energy is concentrated around DC, and they are limited to bandwidth $B$. An example would be an audio signal, which has bandwidth of roughly 20 kilohertz.

To transmit such a signal, often it must be modulated (or "upconverted") using a carrier. For example, in AM broadcasting, the audio signal is first limited to a bandwidth $B=10\,\text{kHz}$, and then upconverted to a frequency of roughly one megahertz.

The issue is that, when upconverted, a signal occupies a bandwidth $2B$, which is double the original bandwidth $B$. So, an AM signal occupies $20\,\text{kHz}$ "on the air". The extra 10 kilohertz do not have any additional information; they are simply a loss of half of the available bandwidth.

Since bandwidth is a very limited and expensive resource, such a waste is unacceptable.

One way around this issue is to use single side-band modulation (SSB), which eliminates the waste. However, SSB signals are more difficult to generate and have other disadvantages.

The most popular solution is to use quadrature signals. This allows transmitting two signals of bandwidth $B$ over a chanel of width $2B$, restoring the average spectral occupancy to $B$ hertz per signal.

To see more of the math behind quadrature transmitters and receivers, see this answer.

  • $\begingroup$ Fascinating! Are there any books on DSP you'd recommend? I think I'm starting to get an inkling, but I'm in way over my head. I'd like to develop a practical understanding and a deep sense of "why" for a lot of the elements of DSP. $\endgroup$
    – Xeyler
    Oct 25, 2020 at 22:04
  • $\begingroup$ @Xeyler There are plenty of book recommendations in different answers aroung the site; for example, see dsp.stackexchange.com/q/427/11256 $\endgroup$
    – MBaz
    Oct 25, 2020 at 22:25
  • $\begingroup$ @Xeyler Easily, this, but starting here. A note, book has some small errors and it helps if you have a basic background in complex numbers to not be mislead by a few of its descriptions, but that textbook is my go-to for intuitive understanding, and the only one to explain convolution properly. $\endgroup$ Oct 26, 2020 at 4:38

As I understand it, I/Q data is the complex representation of any waveform.

Yes and no. I/Q data is the result of demodulating an RF signal (i.e. a signal riding on a carrier) with a pair of local oscillator signals that are 90 degrees out of phase. I think you're assuming that I/Q data must be represented as a stream of complex values -- this isn't necessary, it just makes the analysis easy. Instead of having to carry the local oscillator signals around and proving things with trigonometric identities, you just note that I/Q data acts like (not is) complex data, and then you can follow the rules for complex arithmetic.

This in mind, what sorts of modulations/demodulations would be impossible with real data instead of I/Q data?

I/Q data is real data. It's just two real channels that are obtained simultaneously and bear a specific relationship with one another that can be profitably thought of as a single channel of complex data.

So yours is a false dichotomy.


I tend to group the advantages of using I/Q into two main categories. These can however be combined depending on the system being implemented:

  1. Exploiting the properties of I/Q for spectral efficiency. This is all about having two signals independently "ride" on their respective in-phase (I) and quadrature (Q) channels. It is possible to transmit two separate signals of bandwidth $B$ within the same channel that supports a bandwidth $2B$.
  2. Exploiting the mathematical properties of complex numbers. This is especially true when a real signal is converted to I/Q, or complex, where the mathematical properties of complex numbers make certain tasks easier and/or more intuitive. There are some real advantages to this as well, such as leveraging an increase in SNR in certain types of systems.

The first revolves around using I/Q with multiple signals of interest with the intent of efficiently transmitting/receiving the signals. The second usually concerns one signal of interest and exploiting the various advantages of complex arithmetic to perform operations on that signal.

I like to break it down like this due to intent. When someone asks the question "Why use I/Q?", the answer can be broken down on whether you're concerned with (1) or (2). Sometimes trying to convolve the two into one answer can be confusing or even misleading when trying to pin it down to a specific application. For example, your comment

As I understand it, I/Q data is the complex representation of any waveform.

Is not an accurate statement. Despite that I/Q modulation/demodulation uses the underlying properties of complex numbers, it is really more appropriate for (2) than it is for (1), where many times we are no-kidding converting a real signal to its complex form. I think your concerns are really with this use of I/Q. The various general advantages of (2) over "real" modulation/demodulation include but are not limited to:

  1. Two ADCs sample each I and Q branch at a lower rate. This can reduce total number of samples collected per branch, reduce decimation requirements, and can save power due to lower clock speeds.

  2. Using I/Q allows us to move signals to be centered around 0 Hz, where we can further reduce sampling requirements exploit other properties.

  3. Immediate recovery of amplitude and phase (and potentially frequency) with manipulation of the I/Q components. This is especially helpful in systems that must be coherent.

  4. Digital signal processing is intuitive in the complex domain. All those nice properties of the Fourier transform and spectrums can be applied directly, such as frequency shifting. Some examples are here where we design a bandpass filter using frequency shifting and perform pulse compression via autocorrelation.

  5. Some algorithms are optimized to perform operations on complex data.


I wanted to add something that might be missing from other answers.

Real and Complex Signals

A signal that you can see on an oscilloscope is always a real signal, meaning it can be represented by real numbers. There's no intuitive way to have a complex number transmitted through a medium, unless we take two signals and interpret them as two components of a single complex-valued function. We can label channel 1 as $I$ and channel 2 as $Q$ and we can imagine the results of signal processing operations when we feed them a theoretical complex signal with these two components, but again, this is a matter of interpretation.

A phasor is a representation of a real signal by complex numbers. This is not the same as a complex signal, it is the representation of a real signal which encodes the amplitude and phase relative to a known reference (usually tacitly assumed, like referring it to time $t=0$ when you have $\cos \omega t$). The Fourier transform of a real signal is also complex (although for the Fourier series we can either use the $\sin$ and $\cos$ form or the complex $e^{jk\omega}$ form) but still, the FT of a real signal is only a complex representation of a real signal.

Basic IQ Modulation

With this background understood: there are two places where you'll often see I and Q. The first is in software-defined radio (SDR) or, generally speaking, anything with a digital downconverter (one example being real-time spectrum analyzers). For everything that happens in the processing chain after the signal becomes an IQ signal, we treat that signal as a sequence of complex numbers. The second is in RF modulation/demodulation schemes (like double sideband suppressed carrier, DSB-SC) where two signals are encoded into a single real signal which can be demodulated to recover both the originals.

It sounds like I'm contradicting myself: previously I said that a signal you see on an oscilloscope is always a real signal, but if I probe the output of a DSB-SC modulator, I can see the signal on the scope, and when I demodulate it I get two data streams back! Is this is an example of a complex signal, with two independent signal components? The answer is again: it's a matter of interpretation. Here's the secret to IQ modulation (as opposed to IQ samples in an SDR): the only way to "recover" the original two signals is to be synchronous with the transmitter's local oscillator. If you're not, then trying to demodulate will just produce garbage, and you'll have no way of knowing what information was there before. Therefore, by locking to the transmitters LO, we can interpret the demodulated signal as if it was a complex signal, because it sort of is, as long as you know what the reference is.

You might reasonably think that if a real signal can encode two other signals, then we can imagine that all real signals are actually complex signals, as long as we know how to use them properly. But then consider the case where four signals, or eight, or 128, are encoded in a single real signal. Maybe use amplitude shift keying, or QAM, or time division multiplexing. Point is: just because we can encode information into a real signal does not mean the signal is complex- the only way to make a real signal complex is to interpret it that way.

Answer to Your Question

When you refer to IQ data, I assume you mean in the DSP context, as opposed to the RF modulation/demodulation context. You can, obviously, perform the operations of a modem with a digital down-converter, in which case the reason IQ data is used is because that's the only way to demodulate. (And IQ modulation is used in general for spectral efficiency, etc, see other answers).

But we can consider this in a different scenario: a real signal is converted to IQ samples because, for DSP routines, we can work with signals with amplitudes and phases (relative to the synthesized LO, which might lock to an external reference or might just be free-running), instead of simply "the most recent $N$ samples" in a vector. That is, to get the instantaneous amplitude of the real signal input to the ADC, we take $\sqrt{I^2+Q^2}$, and to get the instantaneous phase (which keeps increasing and wrapping over and over) we take $\arctan(\frac{Q}{I})$. It's another complex representation of a real signal, and it's mathematically convenient to use, especially when the synthesized LO has some significance in the system (like locking to a transmitter's carrier, or serving as the center frequency in a spectrum analyzer so that the center frequency maps to 0 Hz/baseband).

These two interpretations (IQ modulation, used for its useful RF properties, and conversion to IQ data, used for its convenience) are explained more in @Envidia's answer.


the main advantage of using I and Q data is that you can receive and transmit every kind of analog or digital modulation simply changing amplitude of the I and Q components. Take a look to the Phasor theory to better understand the whole matter. A signal can be seen as a moving vector in the IQ plane from the origin. When the amplitude of the signal I and Q component is the same over time you have ad AM modulation. when a vector of magnitude R move back and forth around an angle you have Phase modulation. If the vector rotate around the center more than 2pi angle you have a frequency modulation. If the amplitude of the two components I and Q are discretised you have digital modulation. For example .. say the I, Q component can assume only the values -1 and 1 you have four points in the IQ plane (-1,-1) (-1,1) (1,1) (1,-1) and so you have 4QAM or 4PSK modulation. There are many other advantages to use IQ representation i.e frequency translation and other mathematical elaboration. The matter is pretty complex to be addressed in a single message, however, should you have any question ask community. I suggest you an introductory text book about Digital Signal Processing.

P.S. Hilbert Filtering is easy with the IQ signal ... it is not using real signals.

Take a look to this introductory video https://youtu.be/h_7d-m1ehoY



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.