Skip to content
Start free

If something goes up 50% and then down 50%, are you back where you started?

Find out why going up and down by the same percentage doesn't bring you back, and calculate each branch's sales change from the right base.

Free course. Your Maestro, an AI, .

You work at Tiendas La Ceiba, a chain of 24 branches spread across several municipalities. The chain is made up and its data is synthetic, but the numbers you'll see are the kind that land on every office desk: sales that went up, customers who came back, thefts from businesses in the towns where the stores are, salaries. They drive real decisions: where to open, who to congratulate, what gets published.

In this course you learn to read those numbers without getting fooled, and without statistics: just subtraction, division and the habit of asking "out of what?" You try each idea before anyone explains it, and you do the math yourself, right on the page.

If there's a number at work that has never quite added up for you, tell your Maestro and use it as your example throughout the course.

Let's start with the most common trap. Go with your gut: this isn't a test.

Check yourself: A product costs the same all through December. In January its price goes up 50%, and in July it goes down 50%. Compared with December, where does it end up in July?

If you answered "the same," you're in good company: it's the answer almost everyone's gut gives. Before we explain why, test it with a real price. Below are three short Python programs. You don't need to know Python to read them: precio = 200 stores a number, * multiplies and print shows the result. The names and comments in the code stay in Spanish, like the course's data: precio means price, sube means goes up and baja means goes down. Write down what you think each program will print and why, then see what comes out.

Multiplying by 1.50 means going up 50%; multiplying by 0.50 means keeping half, that is, going down 50%.

Multiplying by 1.50 means going up 50%; multiplying by 0.50 means keeping half, that is, going down 50%.

Up 50%, then down 50%

Example 1 of 3

sube_y_baja.py
precio = 200
precio = precio * 1.50   # sube 50%
print(precio)
precio = precio * 0.50   # baja 50%
print(precio)

A guess is fine: it's kept as you wrote it, so you can compare. Only you and your Maestro see your predictions.

Example 2 of 3, opens once you explain this one

Make your prediction

A percentage is always a percentage of something

What you just saw has a single cause: a percentage isn't an amount; it's a share of something. When the price goes up 50%, that's 50% of 200. When it goes down 50%, that's 50% of 300. Same percentage, different base, different number of pesos.

For a change over time, the base is always the earlier value:

percent change = (new value − earlier value) ÷ earlier value × 100

The subtraction tells you how much it changed in units (pesos, customers, thefts). The division tells you how big that change is compared with where you started. Sales at the Centro branch went from 41.2 to 43.8 million pesos: 2.6 million more, which divided by 41.2 gives 0.063, or 6.3%.

Three mistakes come out of this, and you'll see them in reports and in the news:

  • Dividing by the new value. With small changes you barely notice: Centro would come out at 5.9% instead of 6.3%. With big changes the difference is huge, as you'll see in the exercise.
  • Adding up percentages from back-to-back periods. If sales rise 10% one year and 10% the next, they didn't rise 20%: 100 goes to 110 and then to 121. They rose 21%, because the second 10% was taken from 110.
  • Believing a drop of X% is undone by a rise of X%. You've already seen it: after a 50% drop, getting back takes a 100% rise. After a 20% drop, it takes 25%.

None of this takes hard math. It takes asking yourself, every time: what number is this a percentage of?

How much did Malecón's sales grow?

Worked example · 5 steps

The Malecón branch sold 4,700,000 pesos in 2024 and 5,600,000 in 2025. By what percentage did its sales grow? Try each step before you open it.

Work out the next step yourself, then open it to compare.

Try it

Below is a query that calculates the sales change for each branch. It's written in SQL, a language for asking questions of a table, and it reads almost like English: SELECT says which columns you want, FROM sucursales says which table, and ORDER BY says in what order. Only one line matters here: the one that calculates cambio_pct.

That line divides by the wrong year. Run it first as is and look at Ceiba Express. Then change ventas_2025 to ventas_2024 only after the slash / and run it again.

If you can't tell which of the two ventas_2025 to change, ask your Maestro.

Fix the cambiopct line so it divides by 2024 sales, which is the base for a change from 2024 to 2025. Leave everything else as is. You're done when Ceiba Express is at the top with 133.3 and Malecón shows 19.1.

Your turn

Fix the cambio_pct line so it divides by 2024 sales, which is the base for a change from 2024 to 2025. Leave everything else as is. You're done when Ceiba Express is at the top with 133.3 and Malecón shows 19.1.

Tables: sucursales (sucursal, municipio, ventas_2024, ventas_2025, clientes_2024, recompraron_2024, clientes_2025, recompraron_2025)

sucursales · 24 rows

ColumnType
sucursal Nombre de la sucursal.VARCHAR
municipio Municipio (ficticio) donde está.VARCHAR
ventas_2024 Ventas del año 2024, en pesos.BIGINT
ventas_2025 Ventas del año 2025, en pesos.BIGINT
clientes_2024 Clientes con tarjeta que compraron en 2024.BIGINT
recompraron_2024 De esos clientes, cuántos volvieron a comprar en menos de 90 días (2024).BIGINT
clientes_2025 Clientes con tarjeta que compraron en 2025.BIGINT
recompraron_2025 De esos clientes, cuántos volvieron a comprar en menos de 90 días (2025).BIGINT

First rows

sucursalmunicipioventas_2024ventas_2025clientes_2024recompraron_2024clientes_2025recompraron_2025
CentroCiudad Ceiba412000004380000098002840104003120
ChapultepecCiudad Ceiba27900000261000007100220069002140
Plaza NorteCiudad Ceiba940000010100000260096027501070

Every run starts from fresh copies of the course's tables, so try anything.

Ready to run your query.

Run it yourself

Compare the two runs. For almost every branch the difference is a few tenths of a point: with changes of 5 or 10%, dividing by one year or the other barely matters. Ceiba Express jumps from 57.1% to 133.3%, because it opened at the end of 2024 and sold little that year. The bigger the change, the more it matters to pick the right base.

Hold on to this question, because it comes back throughout the course: what number is this a percentage of?

Five questions about what's ahead

This page doesn't explain these five; they're here to see what you already know. Go with your best guess. They come back at the end of the course with different numbers, so you can compare.

Check yourself: A city's unemployment rate goes from 4% to 6%. Which statement is correct?

Check yourself: In 2025 there were 2,272 thefts from businesses in Ciudad Ceiba and 611 in Villa Morena. Where is a business more likely to be robbed?

Check yourself: At a company of 40 people, the average salary is 21,000 pesos a month. What can you say about what most people earn?

Check yourself: Two branches: one has 10,000 customers and 30% of them buy again; the other has 300 customers and 65% buy again. What percentage of the two branches' customers, taken together, buy again?

Check yourself: A system flags 90 out of every 100 fraudulent purchases as suspicious, and by mistake it also flags 5 out of every 100 normal purchases. Only 1 in 200 purchases is fraud. It flags a purchase: how likely is it to be fraud?