La solicitud

De Angela Rivera, Directora de Atención al Cliente
Tu objetivo
Usa pedidos registrados (status IN ('completed', 'refunded')). Un cliente ha abandonado si su último pedido registrado es anterior a 2025-07-04, es decir, no tiene ningún pedido registrado en los 180 días hasta 2025-12-31. Solo pueden abandonar los clientes cuyo primer pedido registrado es anterior a 2025-07-04, así que solo ellos se cuentan. Devuelve segment (de customers), customers (clientes elegibles), churned y churn_pct (churned × 100 / customers, redondeado a 1), ordenado por segment.
- Lee de la tabla
customerspendiente - Lee de la tabla
orderspendiente - Muestra exactamente
segmentcustomerschurnedchurn_pctpendiente
Tu consulta
Cargando el editor…
Solución de referencia
| customer_id | first_name | last_name | city | |
|---|---|---|---|---|
| 1 | Owen | Hudson | owen.hudson@icloud.com | San Francisco |
| 2 | Douglas | Mendoza | dmendoza69@gmail.com | Atlanta |
| 3 | Henry | Brooks | hbrooks@lakesidecafe.com | Los Angeles |
| 4 | Brian | Graham | bgraham@bluecedarhomes.com | Seattle |
Mote revisa tu resultado
Presiona Ejecutar. Cada fila que cumple el objetivo se vuelve una luciérnaga en tu linterna.
Lo que recibe Angela, y por qué
Tablas
Datos de la tienda Harbor & Pine, listos para consultar.
customers2,018 filas · 9 columnas
customer_idintegerfirst_namevarcharlast_namevarcharemailvarcharcityvarcharstatevarcharsignup_datedatesegmentvarcharreferral_sourcevarchar
| customer_id | first_name | last_name | city | state | signup_date | segment | referral_source | |
|---|---|---|---|---|---|---|---|---|
| 1 | Owen | Hudson | owen.hudson@icloud.com | San Francisco | CA | 2022-06-02 | consumer | search |
| 2 | Douglas | Mendoza | dmendoza69@gmail.com | Atlanta | GA | 2022-06-02 | consumer | NULL |
| 3 | Henry | Brooks | hbrooks@lakesidecafe.com | Los Angeles | CA | 2022-06-04 | business | NULL |
| 4 | Brian | Graham | bgraham@bluecedarhomes.com | Seattle | WA | 2022-06-06 | business | |
| 5 | Kyle | Jimenez | kjimenez27@yahoo.com | Indianapolis | IN | 2022-06-07 | consumer | NULL |
orders12,000 filas · 7 columnas
order_idintegercustomer_idintegerorder_datetimestampstatusvarcharchannelvarcharshipping_feedecimalcoupon_codevarchar
| order_id | customer_id | order_date | status | channel | shipping_fee | coupon_code |
|---|---|---|---|---|---|---|
| 1001 | 125 | 2023-01-01 20:51:19 | completed | web | 0.00 | NULL |
| 1002 | 156 | 2023-01-02 07:58:46 | completed | web | 0.00 | NULL |
| 1003 | 22 | 2023-01-02 10:25:27 | completed | marketplace | 4.99 | WELCOME10 |
| 1004 | 48 | 2023-01-02 11:21:51 | completed | marketplace | 4.99 | WELCOME10 |
| 1005 | 82 | 2023-01-02 11:43:36 | completed | web | 0.00 | WELCOME10 |
products120 filas · 8 columnas
product_idintegernamevarcharcategoryvarcharsubcategoryvarcharunit_pricedecimalunit_costdecimallaunched_ondateis_activeboolean
| product_id | name | category | subcategory | unit_price | unit_cost | launched_on | is_active |
|---|---|---|---|---|---|---|---|
| 101 | Vale Velvet Loveseat | Furniture | Sofas | 1659.00 | NULL | 2023-09-11 | true |
| 102 | Alder Oak Coffee Table | Furniture | Tables | 919.00 | 503.50 | 2024-05-16 | true |
| 103 | Orchard Rattan Dining Chair | Furniture | Chairs | 789.00 | 429.87 | 2023-05-27 | true |
| 104 | Upland Oak Bookcase | Furniture | Storage | 429.00 | 214.70 | 2022-12-20 | true |
| 105 | Avery Leather Bed Frame | Furniture | Beds | 449.00 | 232.70 | 2021-08-31 | true |
order_items30,338 filas · 6 columnas
order_item_idintegerorder_idintegerproduct_idintegerquantityintegerunit_pricedecimaldiscount_pctdecimal
| order_item_id | order_id | product_id | quantity | unit_price | discount_pct |
|---|---|---|---|---|---|
| 1 | 1001 | 121 | 9 | 31.99 | 0.00 |
| 2 | 1001 | 154 | 3 | 11.99 | 0.00 |
| 3 | 1002 | 154 | 4 | 11.99 | 0.00 |
| 4 | 1002 | 194 | 1 | 149.00 | 0.00 |
| 5 | 1002 | 193 | 2 | 19.99 | 0.00 |
returns1,673 filas · 5 columnas
return_idintegerorder_item_idintegerreturned_ondatereasonvarcharrefund_amountdecimal
| return_id | order_item_id | returned_on | reason | refund_amount |
|---|---|---|---|---|
| 1 | 14 | 2023-01-10 | damaged | 83.69 |
| 2 | 42 | 2023-01-10 | wrong_item | 19.99 |
| 3 | 105 | 2023-01-14 | wrong_item | 10.99 |
| 4 | 24 | 2023-01-16 | changed_mind | 26.99 |
| 5 | 126 | 2023-01-16 | late | 20.99 |
employees60 filas · 8 columnas
employee_idintegerfirst_namevarcharlast_namevarchardepartmentvarchartitlevarcharmanager_idintegerhire_datedatesalaryinteger
| employee_id | first_name | last_name | department | title | manager_id | hire_date | salary |
|---|---|---|---|---|---|---|---|
| 1 | Catherine | Hale | Executive | Chief Executive Officer | NULL | 2016-03-01 | 285000 |
| 2 | Robert | Kim | Executive | Chief Operating Officer | 1 | 2017-01-09 | 235000 |
| 3 | Megan | Collins | Sales | Head of Sales | 1 | 2018-04-16 | 172000 |
| 4 | Chloe | Gutierrez | Sales | Account Executive | 3 | 2020-01-21 | 72000 |
| 5 | Frank | Bell | Sales | Account Executive | 3 | 2023-05-21 | 73000 |
web_sessions40,000 filas · 7 columnas
session_idintegercustomer_idintegerstarted_attimestampdevicevarcharsourcevarcharpages_viewedintegerconvertedboolean
| session_id | customer_id | started_at | device | source | pages_viewed | converted |
|---|---|---|---|---|---|---|
| 1 | NULL | 2023-01-01 23:02:24 | mobile | paid | 1 | false |
| 2 | 18 | 2023-01-01 15:07:49 | desktop | paid | 1 | false |
| 3 | NULL | 2023-01-01 16:55:46 | desktop | direct | 7 | false |
| 4 | NULL | 2023-01-01 12:43:28 | mobile | organic | 3 | false |
| 5 | NULL | 2023-01-01 13:06:21 | mobile | social | 2 | false |
marketing_spend3,276 filas · 3 columnas
spend_datedatechannelvarcharamountdecimal
| spend_date | channel | amount |
|---|---|---|
| 2023-01-01 | paid | 492.99 |
| 2023-01-01 | 37.38 | |
| 2023-01-01 | social | 200.53 |
| 2023-01-02 | paid | 709.13 |
| 2023-01-02 | 64.13 |
La lección
Nadie cancela un sofá
Un negocio de suscripción sabe exactamente cuándo se va un cliente: cancela. Una tienda no. Sus clientes simplemente dejan de pedir, y la única evidencia es el silencio. Así que el abandono hay que definirlo: un cliente ha abandonado si no ha hecho un pedido registrado en cierto número de días.
Aquí esa ventana es de 180 días, medida hacia atrás desde la fecha de corte, 2025-12-31. Resta 180 días y obtienes 2025-07-04. Un cliente cuyo último pedido registrado es anterior a esa fecha ha abandonado:
COUNT(*) FILTER (WHERE last_at < DATE '2025-07-04') AS churned
El nivel 5 trata de cómo elegir la ventana. Por ahora, toma los 180 días como dados.
Quién puede abandonar siquiera
El denominador es lo que la gente hace mal. Un cliente que compró por primera vez el 2025-11-20 no ha tenido 180 días para quedarse en silencio. Contarlo como “no abandonó” es como contar a un recién nacido como “nunca ha ido al hospital”: cierto, pero sin sentido. Solo son elegibles los clientes cuyo primer pedido registrado es anterior a la fecha de corte:
WHERE p.first_at < DATE '2025-07-04'
Si omites ese filtro, la tasa baja unos diez puntos, simplemente porque muchos clientes nuevos llegaron en el segundo semestre de 2025. Una temporada de fiestas fuerte “reduciría el abandono” en el panel (dashboard) sin que vuelva un solo cliente antiguo.
Solo los pedidos pagados cuentan como actividad
La recencia usa pedidos registrados. Un cliente cuyo único pedido reciente se canceló, o sigue pendiente, no ha comprado nada en la ventana. Si cuentas esos pedidos, un pago fallido mantiene a alguien fuera de la lista de recuperación.
Dividir por segmento
Las cuentas de empresa de Harbor & Pine piden seguido y en volumen, así que los silencios largos son menos frecuentes en ellas. Los consumidores compran un sofá, quizá una lámpara, y luego a menudo nada durante mucho tiempo. Una sola tasa de abandono mezcla a ambos y, como los consumidores son la mayor parte de la base, reporta sobre todo el comportamiento del consumidor. Divide por el segmento al que irá dirigida la acción: el correo de recuperación va a personas, no a un promedio.
Errores comunes
- Todos los clientes en el denominador. Los clientes nuevos todavía no pueden haber abandonado.
- Contar pedidos cancelados o pendientes como actividad.
- Llamar “perdidos” a los clientes que abandonaron. Algunos vuelven tras una pausa larga. El nivel 6 los cuenta.
¡Linterna encendida!
Practicaste: churnrecencyas of datesegmentcte
- Resuelto
- Sin pistas
- Al primer intento
