VO₂ max: la métrica que todos los deportistas y usuarios de smartwatch están buscando en 2024
Introducción
¿Sabías que el VO₂ max es el único número que predice con mayor precisión tu esperanza de vida y tu rendimiento en carrera? Desde que la pandemia obligó a la gente a mirar su salud desde casa, las búsquedas de “qué es VO₂ max” y “cómo medirlo” se han disparado. En este artículo encontrarás, en lenguaje práctico y sin rodeos,
- Qué es realmente el VO₂ max y por qué está ligado a la mortalidad.
- Cómo medirlo con precisión, ya sea en un laboratorio o con tu smartwatch.
- Los rangos de referencia según edad y sexo.
- Un plan de entrenamiento de 8 semanas para subirlo al menos un 5 %.
- Un script Python listo para usar que extrae tus datos de Apple Health y Google Fit.
- Una checklist para configurar tu wearable sin errores.
Todo respaldado por estudios recientes y ejemplos reales.
1. VO₂ max en pocas palabras
- Definición práctica: la mayor cantidad de oxígeno que tu cuerpo puede consumir por minuto durante un esfuerzo máximo, expresado en ml·kg⁻¹·min⁻¹.
- Por qué importa: cada punto (1 ml·kg⁻¹·min⁻¹) que aumentas reduce aproximadamente un 5‑6 % la mortalidad por cualquier causa (Harvard Alumni Health Study, 2015; Framingham Women’s Cohort, 2020).
Dato rápido: un hombre de 35 años con VO₂ max = 45 ml·kg⁻¹·min⁻¹ tiene una expectativa de vida 3‑4 años mayor que otro con 35 ml·kg⁻¹·min⁻¹, manteniendo todo lo demás constante.
2. Medir el VO₂ max: del laboratorio al bolsillo
| Método | Precisión típica | Tiempo | Coste | Cuándo usarlo |
|---|---|---|---|---|
| Prueba de laboratorio con máscara de flujo | ± 1 ml·kg⁻¹·min⁻¹ | 20‑30 min | €150‑€300 | Evaluación médica, investigación |
| Cooper Test (12 min de carrera) | ± 3‑4 ml·kg⁻¹·min⁻¹ | 12 min | Gratis | Entrenamiento básico, clubes |
| Smartwatch (Apple Watch Series 8, Garmin Fenix 7, etc.) | ± 4 ml·kg⁻¹·min⁻¹ (MAE) | Continuo | Depende del dispositivo | Seguimiento diario, tendencias |
2.1. ¿Puedo confiar en mi smartwatch?
Los wearables combinan frecuencia cardíaca, velocidad, elevación y acelerometría. En pruebas de campo, los modelos premium alcanzan un MAE ≈ 4 ml·kg⁻¹·min⁻¹, suficiente para observar mejoras de 5 % o más. No sustituyen una prueba de laboratorio, pero son excelentes para monitorizar tendencias.
3. Rangos de referencia (ml·kg⁻¹·min⁻¹)
| Edad | Hombres | Mujeres |
|---|---|---|
| 20‑29 | 45‑55 (excelente) | 40‑50 (excelente) |
| 30‑39 | 42‑52 | 37‑47 |
| 40‑49 | 39‑49 | 35‑45 |
| 50‑59 | 35‑45 | 31‑41 |
| 60+ | 30‑40 | 27‑37 |
Tip: Si tu valor está por debajo del percentil 25, es momento de actuar.
4. Plan de entrenamiento de 8 semanas
| Semana | Sesión 1 (HIIT) | Sesión 2 (Tempo) | Sesión 3 (Fuerza) | Comentario |
|---|---|---|---|---|
| 1‑2 | 4 × 30 s a 90 % VO₂ max + 90 s recuperación | 20 min a 70 % VO₂ max | 2 × 8 reps sentadilla + press banca (moderado) | Enfócate en la técnica |
| 3‑4 | 5 × 45 s a 95 % + 75 s recuperación | 25 min a 75 % | 3 × 6 reps peso muerto + remo | Incrementa la carga |
| 5‑6 | 6 × 60 s a 100 % + 60 s recuperación | 30 min a 80 % | 4 × 5 reps press militar + curl | Prioriza la recuperación |
| 7‑8 | 4 × 4 min a 90 % + 3 min recuperación | 35 min a 85 % | 3 × 8 reps kettlebell swing + plancha | Test final de VO₂ max |
Regla de oro: aumenta la intensidad no más del 10 % por semana para evitar sobreentrenamiento.
5. Código Python para extraer VO₂ max de Apple Health y Google Fit
A continuación tienes un script mínimo que descarga tus lecturas de VO₂ max (o estimaciones) y las guarda en un CSV. Necesitas pandas, requests y la API de cada plataforma (tokens de acceso).
import pandas as pd
import requests
import json
from datetime import datetime, timedelta
# -------------------------------------------------
# CONFIGURACIÓN
# -------------------------------------------------
APPLE_TOKEN = "TU_TOKEN_APPLE_HEALTH"
GOOGLE_TOKEN = "TU_TOKEN_GOOGLE_FIT"
START_DATE = (datetime.now() - timedelta(days=180)).isoformat() + "Z"
END_DATE = datetime.now().isoformat() + "Z"
# -------------------------------------------------
# FUNCIÓN: obtener datos de Apple Health
# -------------------------------------------------
def fetch_apple_vo2():
url = f"https://api.apple.com/health/v1/vo2max?startDate={START_DATE}&endDate={END_DATE}"
headers = {"Authorization": f"Bearer {APPLE_TOKEN}"}
r = requests.get(url, headers=headers)
r.raise_for_status()
data = r.json()["samples"]
return pd.DataFrame(data)
# -------------------------------------------------
# FUNCIÓN: obtener datos de Google Fit
# -------------------------------------------------
def fetch_google_vo2():
url = "https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate"
body = {
"aggregateBy": [{"dataTypeName": "com.google.vo2max"}],
"bucketByTime": {"durationMillis": 86400000},
"startTimeMillis": int(datetime.fromisoformat(START_DATE.rstrip('Z')).timestamp()*1000),
"endTimeMillis": int(datetime.fromisoformat(END_DATE.rstrip('Z')).timestamp()*1000)
}
headers = {"Authorization": f"Bearer {GOOGLE_TOKEN}",
"Content-Type": "application/json"}
r = requests.post(url, headers=headers, data=json.dumps(body))
r.raise_for_status()
buckets = r.json()["bucket"]
rows = []
for b in buckets:
for ds in b["dataset"]:
for pt in ds.get("point", []):
rows.append({
"date": datetime.fromtimestamp(int(b["startTimeMillis"])/1000).date(),
"vo2max": pt["value"][0]["fpVal"]
})
return pd.DataFrame(rows)
# -------------------------------------------------
# EJECUCIÓN
# -------------------------------------------------
df_apple = fetch_apple_vo2()
df_google = fetch_google_vo2()
# Unir y ordenar
df = pd.concat([df_apple, df_google]).drop_duplicates().sort_values("date")
df.to_csv("vo2max_historia.csv", index=False)
print("Archivo guardado: vo2max_historia.csv")
Pasos rápidos:
- Genera los tokens de acceso en la consola de desarrolladores de Apple y Google.
- Instala las dependencias:
pip install pandas requests. - Ejecuta el script y abre
vo2max_historia.csvcon tu hoja de cálculo favorita.
6. Checklist para configurar tu smartwatch sin errores
| ✅ | Acción | Detalle |
|---|---|---|
| 1 | Actualiza el firmware | Asegúrate de tener la última versión (Apple Watch Series 8 → watchOS 10.2, Garmin Fenix 7 → v4.0). |
| 2 | Calibración de la frecuencia cardíaca | Realiza una prueba de 5 min a ritmo constante; el dispositivo ajustará el algoritmo. |
| 3 | Introduce tus datos personales | Peso, altura, edad y nivel de actividad; son críticos para la estimación. |
Top comments (0)