Z-Transform Calculator

Compute Z-transforms and simple inverse Z-transforms for common discrete sequences with ROC, terms, and pole-zero plots.

Results are calculated automatically as you enter data.

Formula and ROC
Transform Choose a sequence.
Sequence terms
Pole-zero plot

▼ See explanations and tips below ▼

What Is a Z-transform?

A Z-transform represents a discrete-time sequence as a function of the complex variable \(z\). Instead of studying only the sample values \(x[0]\), \(x[1]\), \(x[2]\), and so on, the Z-transform rewrites the sequence as a series in powers of \(z^{-1}\). This makes many signal-processing problems easier because shifts, impulses, exponentials, finite sequences, and simple recurrences become algebraic expressions.

For a general discrete-time sequence, the bilateral Z-transform is

$$ X(z)=\sum_{n=-\infty}^{\infty} x[n]z^{-n} $$

For causal or right-sided sequences that start at \(n=0\), the same idea is usually written as

$$ X(z)=\sum_{n=0}^{\infty} x[n]z^{-n} $$

The symbol \(X(z)\) is the transform of the sequence \(x[n]\). The variable \(z\) is complex, so the transform lives in the \(z\)-plane rather than on a single real-number line.

The Z-transform is especially useful in signals and systems, digital signal processing, and difference equations. It connects a sequence in time to a formula whose poles, zeros, and region of convergence describe important behavior.


Why Z-transforms Matter

Z-transforms matter because many discrete-time systems are built from delays, weighted sums, and feedback. In the time domain, those relationships can look like long recursions. In the \(z\)-domain, the same relationships often become rational expressions that are easier to inspect, simplify, or invert.

For example, a geometric sequence such as \(a^n u[n]\) is an infinite sequence in time, but its Z-transform is a compact rational expression. A finite impulse response sequence becomes a finite polynomial in \(z^{-1}\). A first-order recurrence can be separated into a transient part and a steady part.

This is why Z-transforms are used when studying digital filters, causal systems, pole-zero plots, inverse transforms, and discrete-time system stability.


Key Terms to Know

  • Discrete-time sequence: A list of sample values indexed by integers, usually written as \(x[n]\).
  • Sample index: The integer \(n\) that identifies a sequence value.
  • Causal sequence: A sequence treated as starting at \(n=0\), with no generated negative-index samples.
  • Unit impulse: A sequence \(\delta[n]\) that is \(1\) at \(n=0\) and \(0\) elsewhere. A delayed impulse \(\delta[n-k]\) occurs at sample \(k\).
  • Unit step: A sequence \(u[n]\) that is \(1\) for \(n\ge 0\) and \(0\) before that.
  • Region of convergence: The part of the \(z\)-plane where the Z-transform series converges.
  • Pole: A value of \(z\) where a rational transform becomes unbounded.
  • Zero: A value of \(z\) where the numerator of a rational transform becomes zero.
  • Pole-zero plot: A graph of pole and zero locations in the complex \(z\)-plane.
  • Inverse Z-transform: The process of finding a sequence \(x[n]\) from a transform expression \(X(z)\).

How Z-transforms Work

The Z-transform works by weighting each sample \(x[n]\) by \(z^{-n}\) and adding the terms. For causal sequences, this creates a power series in \(z^{-1}\):

$$ X(z)=x[0]+x[1]z^{-1}+x[2]z^{-2}+\cdots $$

A finite sequence stops after a finite number of terms. An infinite sequence needs a region of convergence because the infinite sum may converge for some values of \(z\) and diverge for others.

Geometric sequences

A common causal model is

$$ x[n]=A a^n u[n] $$

where \(A\) is the amplitude and \(a\) is the geometric ratio or pole location. Its Z-transform is found from the geometric series:

$$ X(z)=A\sum_{n=0}^{\infty}a^n z^{-n} $$
$$ X(z)=\frac{A}{1-a z^{-1}}=\frac{Az}{z-a} $$

The region of convergence is

$$ |z|>|a| $$

This means the transform converges outside a circle of radius \(|a|\) in the \(z\)-plane. The pole is at \(z=a\).

Delays and shifted sequences

Multiplying by \(z^{-k}\) represents a delay of \(k\) samples. A shifted causal geometric sequence can be written as

$$ x[n]= \begin{cases} 0, & n

Its transform is

$$ X(z)=A z^{-k}\frac{z}{z-a} $$

The delay changes the powers of \(z^{-1}\), but for this right-sided geometric model the ROC still depends on the pole radius:

$$ |z|>|a| $$

Impulses and finite sequences

A delayed impulse has a particularly simple transform:

$$ x[n]=A\delta[n-k] $$
$$ X(z)=A z^{-k} $$

A finite sequence is also direct. If the sequence values are \(x[0]\), \(x[1]\), ..., \(x[N]\), then

$$ X(z)=\sum_{n=0}^{N}x[n]z^{-n} $$

or, expanded,

$$ X(z)=x[0]+x[1]z^{-1}+x[2]z^{-2}+\cdots+x[N]z^{-N} $$

This is why finite sequences are often easy to read from their transform: the coefficients of powers of \(z^{-1}\) are the sequence values.

Step sequences

A constant causal sequence can be expressed as

$$ x[n]=A u[n] $$

Its transform is the geometric case with \(a=1\):

$$ X(z)=\frac{Az}{z-1} $$

with region of convergence

$$ |z|>1 $$

The pole at \(z=1\) explains why the ROC boundary is the unit circle for this model.

Simple first-order recurrences

A first-order recurrence with constant input can be described by a transient part and a steady part. For a recurrence of the form

$$ x[n]=a x[n-1]+A, \quad n\ge 1 $$

with initial value \(x[0]=x_0\) and \(a\ne 1\), the steady component is

$$ \text{steady}=\frac{A}{1-a} $$

The sequence can be written as

$$ x[n]=\text{steady}+\left(x_0-\text{steady}\right)a^n $$

Its transform is

$$ X(z)=\left(x_0-\frac{A}{1-a}\right)\frac{z}{z-a}+\frac{A}{1-a}\frac{z}{z-1} $$

This form shows two possible poles: one at \(z=a\) and one at \(z=1\). For a right-sided model, the ROC is outside the largest relevant pole radius.

When \(a=1\), the recurrence is handled separately as \(x[n]=x_0+nA\). Its transform is \(x_0z/(z-1)+Az/(z-1)^2\), with ROC \(|z|>1\) when the sequence is nonzero.


Examples of Z-transforms in Practice

Example 1: A causal geometric sequence

Suppose

$$ x[n]=2(0.5)^n u[n] $$

Here, \(A=2\) and \(a=0.5\). Substitute those values into the geometric sequence formula:

$$ X(z)=\frac{Az}{z-a} $$
$$ X(z)=\frac{2z}{z-0.5} $$

The ROC is

$$ |z|>0.5 $$

The first few sequence values are

\(n\) \(x[n]\)
\(0\) \(2\)
\(1\) \(1\)
\(2\) \(0.5\)
\(3\) \(0.25\)

The pole at \(0.5\) means the ROC starts outside the circle with radius \(0.5\).


Example 2: A finite sequence

Suppose the finite sequence is

$$ x[0]=1,\quad x[1]=2,\quad x[2]=0,\quad x[3]=-1,\quad x[4]=0.5 $$

The Z-transform is built term by term:

$$ X(z)=1+2z^{-1}+0z^{-2}-z^{-3}+0.5z^{-4} $$

The zero coefficient can be omitted:

$$ X(z)=1+2z^{-1}-z^{-3}+0.5z^{-4} $$

This example shows why finite sequences are straightforward: each sample becomes the coefficient of the matching delay power.


Example 3: A recurrence with a steady value

Suppose a recurrence has \(a=0.8\), \(A=2\), and \(x_0=0\). The steady component is

$$ \text{steady}=\frac{A}{1-a}=\frac{2}{1-0.8}=10 $$

The transient coefficient is

$$ c=x_0-\text{steady}=0-10=-10 $$

So the sequence is

$$ x[n]=10-10(0.8)^n $$

The transform is

$$ X(z)=-10\frac{z}{z-0.8}+10\frac{z}{z-1} $$

The poles are at \(z=0.8\) and \(z=1\). For the causal right-sided form, the ROC is outside the largest pole magnitude:

$$ |z|>1 $$

The sequence starts at \(0\) and approaches \(10\) as the transient term becomes smaller.


How to Interpret the Result

The primary formula \(X(z)\) tells you how the selected sequence model appears in the \(z\)-domain. In inverse mode, the primary result is the recognized sequence \(x[n]\).

The ROC tells you where the transform converges. For right-sided geometric and recurrence models, the ROC is outside the pole radius that controls convergence. For recognized inverse geometric forms, selecting the left-sided interpretation instead gives the inside-pole ROC. The same algebraic formula can sometimes correspond to different sequences if the ROC is different, so the ROC is not optional background information.

Poles are the transform’s singular locations. In many causal models, the largest pole magnitude determines the inner boundary of the ROC. A pole closer to the origin often corresponds to a faster-decaying exponential term; a pole with magnitude near or above \(1\) is important when the expression is being interpreted as a causal filter or frequency-response model.

Zeros are the values of \(z\) where the transform numerator becomes zero. They are useful for understanding cancellation, frequency-response behavior, and the shape of a pole-zero plot. Some models may not report finite zeros when the calculation is not designed to solve for them.

The sequence table and stem plot show generated sample values. They are useful for checking the time-domain behavior, but a displayed table is only a finite preview. Changing the displayed term count changes how many samples you see; it does not change the mathematical transform.


Common Mistakes and Misconceptions

  • Confusing \(a\) and \(A\): The lowercase \(a\) is usually the geometric ratio, pole location, or recurrence coefficient. The uppercase \(A\) is usually an amplitude or constant input.
  • Ignoring the ROC: A formula without its ROC can be incomplete. The ROC helps distinguish causal, anti-causal, and two-sided interpretations in general Z-transform work.
  • Using \(z^k\) when a delay is intended: A causal delay of \(k\) samples is represented by \(z^{-k}\), not \(z^k\).
  • Expecting every inverse transform to be recognized directly: General inverse Z-transforms can require inspection, partial fractions, power series, or contour integration. A limited calculator may only recognize standard patterns.
  • Assuming the term count changes the transform: The term count controls display length, not the underlying formula.
  • Expecting complex coefficients in a real-valued input model: Many educational calculator models accept real-valued parameters only, even though the theory of Z-transforms can handle complex values.
  • Using \(a=1\) in a recurrence formula with \(\frac{A}{1-a}\): That expression divides by zero when \(a=1\), so the model must be handled separately.
  • Assuming finite-sequence zeros are always computed: A finite transform can have zeros, but solving for roots of the resulting polynomial is a separate calculation.

When to Use Z-transforms

Use Z-transform models when you want to:

  • Convert a causal discrete-time sequence into a compact \(z\)-domain formula.
  • Study geometric sequences, delayed sequences, impulses, steps, or finite sequences.
  • Understand the connection between a formula, its ROC, and its pole locations.
  • Analyze simple recurrences as a combination of transient and steady components.
  • Prepare for digital signal processing topics such as transfer functions, pole-zero plots, and inverse transforms.

Z-transforms are most useful when the sequence is part of a discrete-time signal or system. For purely continuous-time problems, a Laplace transform or Fourier transform may be the more appropriate tool.


Limitations and Things to Keep in Mind

Forward models are causal or right-sided with sample index \(n\) starting at \(0\). For recognized inverse geometric forms, the inverse interpretation control can instead select the left-sided sequence and its inside-pole ROC. Arbitrary two-sided sequences are not supported.

A limited inverse mode should not be treated as a full symbolic algebra system. Scaled standard forms such as \(C\frac{z}{z-a}\), \(\frac{C}{1-a z^{-1}}\), \(Cz^{-k}\), and a constant \(C\) are recognized, but arbitrary rational expressions may require partial-fraction expansion or another inverse method.

Delays are nonnegative integers in these models. A negative or fractional delay is a different signal-processing topic and should not be interpreted as the same kind of causal sample delay.

Displayed numeric values may be rounded. Very small values can be shown as \(0\), ordinary values may be limited to a fixed number of decimal places, and very large or very small values may use exponential notation. Rounding helps readability, but it can hide tiny residual values.

Only a finite number of sequence terms can be displayed at once. For infinite sequences, the table and stem plot are a preview, not the full sequence.

Some zeros may be marked as not computed. This does not mean zeros cannot exist mathematically; it means the selected model or calculation does not solve for them.

For engineering, control, DSP, or safety-related work, double-check formulas, assumptions, numerical values, and implementation details. A calculator result is an educational aid, not a substitute for a full design review.


How to Use This Calculator

  1. Choose the forward or inverse operation.
  2. In forward mode, choose the sequence or model type: geometric, shifted, impulse, step, finite, or recurrence.
  3. Enter the required values, such as \(a\), amplitude \(A\), delay \(k\), recurrence initial value \(x_0\), and the number of displayed terms.
  4. For a finite sequence, enter the values in order as \(x[0]\), \(x[1]\), \(x[2]\), and so on. Spaces, commas, or semicolons may be used as separators.
  5. In inverse mode, enter a supported expression such as \(C\frac{z}{z-a}\), \(\frac{C}{1-a z^{-1}}\), or \(Cz^{-k}\), then choose the right- or left-sided sequence when the expression has a pole. The left-sided choice uses the inside-pole ROC.
  6. Review the formula, ROC, poles, zeros, explanatory note, sequence table, stem plot, and pole-zero plot.
  7. Use the graph download option when you need a PNG copy of the stem plot or pole-zero plot.

Frequently Asked Questions

What is the difference between the Z-transform and the DTFT?

The Z-transform uses the complex variable \(z\) and can describe convergence over regions of the complex plane. The DTFT is closely related to evaluating the transform on the unit circle, when that evaluation exists. In practice, the Z-transform gives a broader algebraic and convergence-based view of discrete-time signals.


Why does the region of convergence matter?

The ROC tells where the Z-transform series converges. It also helps determine whether a formula represents a right-sided, left-sided, or two-sided sequence in general Z-transform theory. Two expressions can look algebraically identical but imply different time-domain behavior if their ROCs are different.


What does a pole at \(z=a\) mean for a geometric sequence?

For the causal sequence \(A a^n u[n]\), the transform has a pole at \(z=a\). The ROC is outside \(|a|\), and the magnitude of \(a\) controls whether the samples decay, stay constant, or grow in magnitude. When this kind of expression is interpreted as part of a causal filter, pole location is also important for stability analysis.


Why does \(z^{-k}\) represent a delay?

In a Z-transform, each sample \(x[n]\) is paired with a power \(z^{-n}\). Moving a sequence \(k\) samples later increases the delay powers by \(k\), which multiplies the transform by \(z^{-k}\). That is why a delayed impulse at sample \(k\) has transform \(z^{-k}\).


Can every inverse Z-transform be found by pattern matching?

No. Pattern matching works for simple standard forms, but many inverse Z-transforms require transform tables, partial-fraction expansion, power-series expansion, or more advanced complex-variable methods. A limited inverse calculator should be used for the specific forms it supports.


Sources and References

Books

  1. Steven W. Smith. The Scientist and Engineer’s Guide to Digital Signal Processing. 2nd ed., California Technical Publishing, 1999. Chapter 33, “The z-Transform.” https://www.analog.com/media/en/technical-documentation/dsp-book/dspbookch33.pdf
  2. Julius O. Smith III. Introduction to Digital Filters with Audio Applications. Online book, Center for Computer Research in Music and Acoustics, Stanford University; DSPRelated.com. Sections used: “Transfer Function Analysis,” “Partial Fraction Expansion,” “Frequency Response Analysis,” and “Stability Revisited.” https://www.dsprelated.com/freebooks/filters/

Online and Open Educational Sources

  1. Richard Baraniuk et al. “12: Z-Transform and Discrete Time System Design.” Engineering LibreTexts, accessed July 4, 2026. https://eng.libretexts.org/Bookshelves/ElectricalEngineering/SignalProcessingandModeling/SignalsandSystems%28Baraniuketal.%29/12%3AZ-TransformandDiscreteTimeSystem_Design
  2. Richard Baraniuk et al. “12.6: Region of Convergence for the Z-Transform.” Engineering LibreTexts, accessed July 4, 2026. https://eng.libretexts.org/Bookshelves/ElectricalEngineering/SignalProcessingandModeling/SignalsandSystems%28Baraniuketal.%29/12%3AZ-TransformandDiscreteTimeSystemDesign/12.06%3ARegionofConvergenceforthe_Z-Transform
  3. Carl Greco. “5.4: Inverse Z-Transform.” Engineering LibreTexts / Arkansas Tech University, last updated June 4, 2024; accessed July 4, 2026. https://eng.libretexts.org/Courses/ArkansasTechUniversity/Discrete-TimeSignalProcessing/05%3AZ-TransformandDiscreteTimeSystemDesign/5.04%3AInverseZ-Transform