{
  "report_id": "027-weekend-demand",
  "status": "validated",
  "version": "1.1",
  "publication": {
    "headline": "El fin de semana reúne un asistente más por bloque, pero pierde 4,8 puntos de asistencia",
    "canonical_url": "https://wodbuster.com/observatorio/demanda-fin-semana-centros-deportivos/",
    "date_modified": "2026-07-18"
  },
  "articles": [
    {
      "id": "077-saturday-schedule",
      "headline": "Las 9:00 y las 10:00 concentran el pico del sábado; a las 12:00 la clase mediana reúne casi la mitad",
      "path": "articles/horarios-sabado.html",
      "question": "En qué tramo de la mañana se concentra la demanda del sábado"
    }
  ],
  "period": {
    "start": "2025-01-01",
    "end": "2025-12-31"
  },
  "sample": {
    "centers": 2132,
    "classes": 6976797,
    "reservations": 47892897,
    "all_non_canceled_classes": 7000684,
    "all_reservations": 47900444
  },
  "definition": {
    "weekend": "Sábado y domingo según la hora local del centro.",
    "attendances_per_class": "Asistencias efectivas divididas entre bloques celebrados.",
    "attendance_rate": "Reservas que terminan en asistencia divididas entre resultados funcionalmente válidos.",
    "ever_full": "Bloque que estuvo completo al menos una vez antes de celebrarse."
  },
  "findings": {
    "centers_with_weekend_offer": 1615,
    "centers_with_weekend_offer_pct": 75.75,
    "centers_without_weekend_offer": 517,
    "centers_without_weekend_offer_pct": 24.25,
    "median_weekend_class_share_all_centers_pct": 2.49,
    "median_weekend_reservation_share_all_centers_pct": 3.37,
    "median_weekend_class_share_active_centers_pct": 3.49,
    "median_weekend_reservation_share_active_centers_pct": 4.64
  },
  "paired_weekday_vs_weekend": {
    "first": "WEEKDAY",
    "second": "WEEKEND",
    "centers": 1097,
    "metrics": {
      "attendances_per_class": {
        "first_median": 4.77,
        "second_median": 6.08,
        "median_within_center_difference": 1.04,
        "centers_where_second_higher_pct": 72.65
      },
      "attendance_pct": {
        "first_median": 70.04,
        "second_median": 65.61,
        "median_within_center_difference": -4.82,
        "centers_where_second_higher_pct": 21.15
      },
      "nonattendance_pct": {
        "first_median": 29.96,
        "second_median": 34.39,
        "median_within_center_difference": 4.82,
        "centers_where_second_higher_pct": 78.85
      },
      "ever_full_classes_pct": {
        "first_median": 19.54,
        "second_median": 27.21,
        "median_within_center_difference": 6.35,
        "centers_where_second_higher_pct": 67.82
      },
      "waitlist_entries_per_class": {
        "first_median": 0.1,
        "second_median": 0.14,
        "median_within_center_difference": 0.03,
        "centers_where_second_higher_pct": 60.53
      }
    }
  },
  "paired_saturday_vs_sunday": {
    "first": "SATURDAY",
    "second": "SUNDAY",
    "centers": 151,
    "metrics": {
      "attendances_per_class": {
        "first_median": 6.05,
        "second_median": 4.63,
        "median_within_center_difference": -0.85,
        "centers_where_second_higher_pct": 27.15
      },
      "attendance_pct": {
        "first_median": 68.33,
        "second_median": 67.56,
        "median_within_center_difference": -0.09,
        "centers_where_second_higher_pct": 49.67
      },
      "nonattendance_pct": {
        "first_median": 31.67,
        "second_median": 32.44,
        "median_within_center_difference": 0.09,
        "centers_where_second_higher_pct": 50.33
      },
      "ever_full_classes_pct": {
        "first_median": 20.0,
        "second_median": 9.76,
        "median_within_center_difference": -1.77,
        "centers_where_second_higher_pct": 35.1
      },
      "waitlist_entries_per_class": {
        "first_median": 0.08,
        "second_median": 0.03,
        "median_within_center_difference": -0.0,
        "centers_where_second_higher_pct": 30.46
      }
    }
  },
  "saturday_schedule": {
    "period_primary": "2025-01-01/2025-12-31",
    "definition": "Hora local de comienzo; benchmark por centro con al menos 10 clases y 50 reservas del sábado en esa hora.",
    "sample": {
      "centers_with_saturday_activity": 1607,
      "classes": 265804,
      "reservations": 2084690
    },
    "hour_profile_2025": [
      {
        "hour": 8,
        "centers": 199,
        "median_attendances_per_class": 5.78,
        "median_attendance_pct": 66.01,
        "median_ever_full_classes_pct": 23.53
      },
      {
        "hour": 9,
        "centers": 832,
        "median_attendances_per_class": 6.65,
        "median_attendance_pct": 64.86,
        "median_ever_full_classes_pct": 36.31
      },
      {
        "hour": 10,
        "centers": 1115,
        "median_attendances_per_class": 6.66,
        "median_attendance_pct": 64.75,
        "median_ever_full_classes_pct": 35.29
      },
      {
        "hour": 11,
        "centers": 725,
        "median_attendances_per_class": 5.4,
        "median_attendance_pct": 65.48,
        "median_ever_full_classes_pct": 25.71
      },
      {
        "hour": 12,
        "centers": 300,
        "median_attendances_per_class": 3.42,
        "median_attendance_pct": 67.01,
        "median_ever_full_classes_pct": 8.33
      }
    ],
    "paired_10_vs_12_2025": {
      "centers": 268,
      "median_attendances_per_class_10": 6.42,
      "median_attendances_per_class_12": 3.42,
      "median_attendances_difference": 2.16,
      "centers_10_higher_pct": 82.84,
      "median_ever_full_difference_pp": 15.99,
      "centers_ever_full_10_higher_pct": 77.24,
      "median_attendance_rate_difference_pp": -2.42
    },
    "paired_9_vs_10_2025": {
      "centers": 681,
      "median_attendances_difference": 0.01,
      "centers_10_higher_pct": 50.07
    },
    "year_robustness_10_vs_12": [
      {
        "year": 2024,
        "centers": 226,
        "median_attendances_difference": 2.09,
        "centers_10_higher_pct": 77.88
      },
      {
        "year": 2025,
        "centers": 268,
        "median_attendances_difference": 2.16,
        "centers_10_higher_pct": 82.84
      }
    ],
    "privacy": {
      "minimum_centers_per_published_hour": 100,
      "maximum_center_share_classes_pct": 1.77
    },
    "interpretation": "El análisis describe clases ya ofrecidas y no demuestra que mover una sesión cree demanda."
  },
  "series": {
    "by_weekday": [
      {
        "iso_weekday": 1,
        "weekday": "Lunes",
        "centers": 2115,
        "median_attendances_per_class": 5.05,
        "median_attendance_pct": 76.07,
        "median_ever_full_classes_pct": 21.95,
        "median_waitlist_entries_per_class": 0.09
      },
      {
        "iso_weekday": 2,
        "weekday": "Martes",
        "centers": 2107,
        "median_attendances_per_class": 4.91,
        "median_attendance_pct": 72.98,
        "median_ever_full_classes_pct": 21.36,
        "median_waitlist_entries_per_class": 0.09
      },
      {
        "iso_weekday": 3,
        "weekday": "Miércoles",
        "centers": 2122,
        "median_attendances_per_class": 4.85,
        "median_attendance_pct": 70.37,
        "median_ever_full_classes_pct": 21.79,
        "median_waitlist_entries_per_class": 0.09
      },
      {
        "iso_weekday": 4,
        "weekday": "Jueves",
        "centers": 2118,
        "median_attendances_per_class": 4.67,
        "median_attendance_pct": 68.68,
        "median_ever_full_classes_pct": 21.95,
        "median_waitlist_entries_per_class": 0.09
      },
      {
        "iso_weekday": 5,
        "weekday": "Viernes",
        "centers": 1998,
        "median_attendances_per_class": 4.34,
        "median_attendance_pct": 66.07,
        "median_ever_full_classes_pct": 19.23,
        "median_waitlist_entries_per_class": 0.07
      },
      {
        "iso_weekday": 6,
        "weekday": "Sábado",
        "centers": 1274,
        "median_attendances_per_class": 6.32,
        "median_attendance_pct": 66.11,
        "median_ever_full_classes_pct": 27.91,
        "median_waitlist_entries_per_class": 0.13
      },
      {
        "iso_weekday": 7,
        "weekday": "Domingo",
        "centers": 208,
        "median_attendances_per_class": 3.95,
        "median_attendance_pct": 70.61,
        "median_ever_full_classes_pct": 7.48,
        "median_waitlist_entries_per_class": 0.02
      }
    ]
  },
  "quality": {
    "invalid_outcomes_in_eligible_sample": 0
  },
  "privacy": {
    "personal_identifiers_exported": false,
    "center_identifiers_exported": false,
    "minimum_centers_in_public_day": 208,
    "maximum_center_share_weekend_classes_pct": 2.81
  },
  "limitations": [
    "El fin de semana puede ofrecer actividades, horarios y tamaños de grupo distintos a los días laborables.",
    "Las comparaciones se realizan dentro de los mismos centros, pero no demuestran causalidad.",
    "La presión se mide con la marca de haber estado completo y la lista de espera; no se calcula ocupación.",
    "Una mayor asistencia por bloque puede coexistir con una menor tasa de cumplimiento si la oferta es más escasa o diferente.",
    "Las actividades y el tamaño de los grupos pueden cambiar entre días.",
    "La muestra representa centros activos que usan WodBuster y no todo el mercado español."
  ]
}