In short

A translation slides a graph without stretching, compressing, or flipping it. Replacing x with x - a in a function shifts the graph right by a units (left if a < 0). Adding b to the function shifts the graph up by b units (down if b < 0). Together, y = f(x - a) + b translates the graph a units right and b units up.

Picture a rangoli pattern drawn on a large sheet of paper. You slide the entire sheet 3 tiles to the right and 2 tiles up. Every dot, every curve, every petal moves by the same amount. Nothing stretches. Nothing rotates. The shape is identical — it is just in a new position.

That slide is a translation. In the language of graphs, a translation takes the curve y = f(x) and relocates it to a new position on the coordinate plane. The shape of the curve is preserved exactly; only its address changes.

Vertical shift: y = f(x) + b

Start with a function you know well: f(x) = x^2, the standard parabola. Its vertex sits at the origin (0, 0).

What does y = x^2 + 3 look like? For any input x, the output is 3 more than x^2. Every point on the parabola is lifted 3 units higher. The vertex moves from (0, 0) to (0, 3). The shape is unchanged.

What does y = x^2 - 2 look like? Every point drops 2 units. The vertex moves to (0, -2).

Vertical shifts of y equals x squaredThree parabolas on the same axes. The original y equals x squared has vertex at the origin. The curve y equals x squared plus 3 is the same shape shifted 3 units up, with vertex at (0, 3). The curve y equals x squared minus 2 is shifted 2 units down, with vertex at (0, negative 2). x y 1 2 −1 −2 1 2 3 −1 x² (dashed) x² + 3 x² − 2
Vertical shifts of $y = x^2$. Adding $3$ lifts the entire curve up (vertex at $(0, 3)$). Subtracting $2$ drops it down (vertex at $(0, -2)$). The parabola's shape does not change.

The rule is straightforward:

Vertical translation

The graph of y = f(x) + b is the graph of y = f(x) shifted up by b units if b > 0, or down by |b| units if b < 0.

This makes intuitive sense: adding b to every output increases every y-coordinate by b. The x-coordinates are untouched.

Horizontal shift: y = f(x - a)

This one trips up more students than any other transformation. The rule is:

Horizontal translation

The graph of y = f(x - a) is the graph of y = f(x) shifted right by a units if a > 0, or left by |a| units if a < 0.

The counter-intuitive part: subtracting a from x shifts the graph to the right, not the left. "Minus means right" feels backwards. Here is why it works.

Consider f(x) = x^2 again, with its vertex at x = 0. The vertex is the point where the input to the squaring operation is zero — that is, x = 0. Now consider g(x) = (x - 3)^2. The input to the squaring operation is x - 3, and this is zero when x = 3. The vertex has moved to x = 3 — three units to the right.

Think of it this way: every feature of the original graph that happened at x = c now happens at x = c + a, because the new function needs x - a = c, so x = c + a. The "-a" inside the function delays every feature by a units.

An analogy: imagine a cricket match is broadcast live on TV but your stream has a 3-second delay. Every event — every boundary, every wicket — happens 3 seconds later on your screen. The delay does not change the match; it shifts everything forward in time. The "-3" in f(x - 3) is the same kind of delay, applied to the x-axis.

Horizontal shifts of y equals x squaredThree parabolas on the same axes. The original y equals x squared has vertex at the origin. The curve y equals (x minus 3) squared has vertex at (3, 0), shifted right by 3. The curve y equals (x plus 2) squared has vertex at (negative 2, 0), shifted left by 2. x y 1 2 3 −1 −2 1 2 x² (dashed) (x − 3)² (x + 2)²
Horizontal shifts of $y = x^2$. Replacing $x$ with $x - 3$ shifts right by 3 (vertex at $(3, 0)$). Replacing $x$ with $x + 2$ (which is $x - (-2)$) shifts left by 2 (vertex at $(-2, 0)$).

Notice that y = (x + 2)^2 is a shift to the left by 2. Writing it as y = (x - (-2))^2 makes the pattern clear: a = -2, so the shift is -2 units to the right, which is 2 units to the left.

Why the horizontal shift feels backwards

The vertical shift is direct: add b to the output, every point goes up by b. It acts on y, and y is the vertical axis. Straightforward.

The horizontal shift acts on the input. Replacing x with x - a does not add a to anything visible; it changes the question the function is being asked. At x = 5, the new function evaluates f(5 - 3) = f(2) — it is answering the question that the original function answered at x = 2. The output that used to appear at x = 2 now appears at x = 5. Everything slides right.

The key insight: operations on x (the input) act in the opposite direction to what the sign suggests. Operations on y (the output) act in the same direction.

This principle extends to all transformations. When you study reflections and scaling later, the same reversal appears: operations inside the function argument (x side) behave oppositely to what you expect; operations outside (y side) behave directly.

Summary of direction rules for translationsTwo boxes. Left box: y = f(x) + b, arrow up labelled b positive, arrow down labelled b negative. Right box: y = f(x - a), arrow right labelled a positive, arrow left labelled a negative. A note says operations on x act opposite to the sign. y = f(x) + b b > 0 → shift UP b < 0 → shift DOWN acts on y: same direction y = f(x − a) a > 0 → shift RIGHT a < 0 → shift LEFT acts on x: opposite direction
Vertical translations (left) act in the intuitive direction. Horizontal translations (right) act opposite to the sign — subtracting shifts right, adding shifts left.

Combined translations: y = f(x - a) + b

When both translations are applied at once, each acts independently. The graph shifts a units horizontally (right if a > 0, left if a < 0) and b units vertically (up if b > 0, down if b < 0). The order does not matter — translations commute.

Take f(x) = |x|, the V-shaped absolute value function with vertex at the origin. The function y = |x - 2| + 3 shifts the V right by 2 and up by 3. The new vertex is at (2, 3).

Combined translation of y equals absolute value of xTwo V-shaped graphs on the same axes. The original y equals absolute x has vertex at the origin. The translated graph y equals absolute value of (x minus 2) plus 3 has vertex at (2, 3). Dashed arrows show the rightward and upward shift. x y 1 2 3 4 1 2 3 right 2 up 3 |x| |x − 2| + 3
The V-graph of $|x|$ (dashed) translated to $|x - 2| + 3$ (red). The vertex moves from $(0, 0)$ to $(2, 3)$ — right 2, up 3. Every other point on the curve moves by the same amount.

The general combined translation: y = f(x - a) + b moves the graph of f by the vector (a, b). Think of (a, b) as a displacement arrow: a units horizontally, b units vertically.

Two worked examples

Example 1: Translating a parabola

The original function is f(x) = x^2. Write the equation of the parabola obtained by shifting f left by 4 and down by 1. Identify the new vertex.

Step 1. Apply the horizontal shift. Shifting left by 4 means a = -4, so replace x with x - (-4) = x + 4:

y = (x + 4)^2

Why: a leftward shift of 4 is the same as a rightward shift of -4, giving x - (-4) = x + 4 inside the function.

Step 2. Apply the vertical shift. Shifting down by 1 means b = -1, so subtract 1:

y = (x + 4)^2 - 1

Why: shifting down decreases every y-value by 1.

Step 3. Find the new vertex. The vertex of x^2 is at (0, 0). Applying the translation (a, b) = (-4, -1):

\text{new vertex} = (0 + (-4),\; 0 + (-1)) = (-4, -1)

Why: the translation vector is added to every point, including the vertex.

Step 4. Verify with a specific point. On the original parabola, (2, 4) is a point (since 2^2 = 4). After translation: (2 - 4, 4 - 1) = (-2, 3). Check: (-2 + 4)^2 - 1 = 4 - 1 = 3. Correct.

Result: The translated parabola is y = (x + 4)^2 - 1 with vertex at (-4, -1).

Graph of x squared shifted left 4 and down 1Two parabolas. The original y equals x squared has vertex at the origin. The translated parabola y equals (x plus 4) squared minus 1 has vertex at (negative 4, negative 1). Dashed arrows show the shift left 4 and down 1. The point (2, 4) on the original maps to (negative 2, 3) on the translated version. x y 1 2 −1 −2 −3 −4 1 2 3 −1 (−4, −1) (2, 4) (−2, 3)
The dashed parabola $y = x^2$ slides left 4 and down 1 to become the red parabola $y = (x+4)^2 - 1$. The point $(2, 4)$ maps to $(-2, 3)$. The vertex moves from $(0, 0)$ to $(-4, -1)$.

Every point moved by exactly (-4, -1) — the shape is perfectly preserved, just relocated.

Example 2: Reading a translation from the equation

The function y = \sqrt{x - 5} + 2 is a translated version of y = \sqrt{x}. Identify the translation and find the new domain and range.

Step 1. Identify the horizontal shift. Inside the square root, x is replaced by x - 5, so a = 5. The graph shifts right by 5 units.

Why: x - 5 in the argument means every feature is delayed by 5 units along the x-axis.

Step 2. Identify the vertical shift. Outside the square root, +2 is added, so b = 2. The graph shifts up by 2 units.

Why: adding 2 to the output lifts every point by 2.

Step 3. The starting point of y = \sqrt{x} is (0, 0) (the leftmost point of the curve). After translation: (0 + 5, 0 + 2) = (5, 2).

Step 4. Domain and range. For \sqrt{x - 5} to be defined, x - 5 \ge 0, so x \ge 5. The domain is [5, \infty). The square root output is \ge 0, and adding 2 gives y \ge 2. The range is [2, \infty).

Why: the domain shifts by the same amount as the horizontal translation. The range shifts by the vertical translation.

Result: The translation is right 5, up 2. Domain: [5, \infty). Range: [2, \infty).

Graph of square root of x shifted right 5 and up 2Two curves. The dashed original y equals square root of x starts at the origin and rises to the right. The solid red translated curve y equals square root of (x minus 5) plus 2 starts at (5, 2) and rises with the same shape. Dashed lines show the shift right 5 and up 2. x y 1 4 5 6 8 1 2 3 4 √x (5, 2) right 5 up 2 √(x − 5) + 2
The dashed curve $y = \sqrt{x}$ starts at $(0, 0)$. After shifting right 5 and up 2, the red curve $y = \sqrt{x - 5} + 2$ starts at $(5, 2)$. Domain shifts from $[0, \infty)$ to $[5, \infty)$; range shifts from $[0, \infty)$ to $[2, \infty)$.

The translation moved the starting point, the domain boundary, and the range boundary all by the same amounts. This is always the case: translations shift every geometric feature uniformly.

Common confusions

Going deeper

If you can read off the translation from a given equation, write the equation from a given translation, and identify the new domain/range, you are ready for the other transformations: reflections and scaling. The rest of this section covers the formal framework.

Translations as vector addition

A translation by (a, b) can be written as a map on points:

(x, y) \mapsto (x + a, y + b)

This is vector addition: every point on the graph is displaced by the vector \begin{pmatrix} a \\ b \end{pmatrix}. The entire graph moves as a rigid body.

Two consecutive translations compose by adding their vectors:

\text{translate by } (a_1, b_1) \text{ then by } (a_2, b_2) = \text{translate by } (a_1 + a_2, b_1 + b_2)

This is why translations commute and form a group under addition.

Effect on key features

Feature How it changes
Vertex / turning point Shifts by (a, b)
x-intercepts Shift horizontally by a, then recalculate if b \neq 0
y-intercept Shifts vertically by b, then recalculate if a \neq 0
Asymptotes Horizontal asymptotes shift by b; vertical asymptotes shift by a
Domain Shifts by a: [p, q] \to [p + a, q + a]
Range Shifts by b: [r, s] \to [r + b, s + b]
Period (for periodic functions) Unchanged

Interactive: sliding a graph

Drag the sliders below to shift the parabola y = x^2 horizontally and vertically. The equation updates in real time.

Interactive translation of y equals x squaredA parabola y equals x squared that can be shifted horizontally and vertically by dragging. The equation label updates to show the current translated form. x y 1 2 −1 −2 drag the vertex
Drag the vertex of the parabola. The dashed curve is the original $y = x^2$. As you drag, the red curve slides to the new position. The equation updates to $y = (x - a)^2 + b$.

Where this leads next

You now know how to translate any graph horizontally, vertically, or both. The remaining graph transformations build on the same framework.