Logo
GitHubCron es la librería open-source de Snowinch que usa GitHub Actions como scheduler gratuito para llamar endpoints de tu app. Sin servidores dedicados, sin infraestructura: solo 2000 minutos gratis al mes para automatizar cualquier proceso.

GitHubCron: Cron Jobs Serverless Gratuitos con GitHub Actions en 2025

By Snowinch Team16 de noviembre de 2025
githubcroncron jobs serverlessgithub actions croncron gratuitoscheduling serverlessautomatización githubnextjs cron jobsexpress cron jobsserverless schedulergithub actions automation

Déjame contarte una historia que probablemente conoces demasiado bien. Tienes una aplicación web en producción en Vercel, Netlify o Cloudflare. Funciona genial. Pero necesitas:

  • Enviar emails de carritos abandonados cada 2 horas
  • Generar reportes diarios a las 6:00 de la mañana
  • Hacer backup de la base de datos cada noche
  • Sincronizar datos de APIs externas cada hora

¿Qué haces? Tradicionalmente, las opciones eran:

  1. Mantener un servidor siempre encendido (€50-200/mes) solo para ejecutar scripts periódicos
  2. Usar AWS Lambda + EventBridge con alta complejidad y curva de aprendizaje empinada
  3. Pagar por Vercel Cron (solo en planes Pro/Enterprise a €20+/mes)
  4. Confiar en servicios externos (cron-job.org) que llaman endpoints públicos sin seguridad

Existe una mejor alternativa. Se llama GitHubCron.

GitHubCron es una librería open-source desarrollada por Snowinch que usa GitHub Actions como scheduler gratuito para llamar endpoints HTTP de tu aplicación. Sin servidores dedicados, sin infraestructura compleja, 2000 minutos gratis al mes.


El Problema con los Cron Jobs Tradicionales

Costos Ocultos de Servidores Dedicados

Tienes una app Next.js en producción en Vercel (plan Hobby gratuito). Funciona perfectamente. Pero ahora necesitas ejecutar 4 scripts periódicos.

Opción clásica: VPS de €50/mes.

Uso efectivo: El servidor trabaja unos 20 minutos al día y está inactivo el restante 98.6% del tiempo.

Estás pagando €50/mes por 20 minutos de trabajo efectivo. Costo por minuto: €2,50. ¿Absurdo, verdad?

La Complejidad de AWS Lambda

AWS Lambda + EventBridge es técnicamente "económico", pero requiere:

  • Configurar IAM roles y policies (30-60 minutos)
  • Crear reglas de EventBridge con sintaxis cron ligeramente diferente
  • Gestionar deployment (¿ZIP upload? ¿Container? ¿Serverless framework?)
  • Monitorear CloudWatch Logs (y pagar por almacenamiento)
  • Duplicar la lógica de negocio si ya tienes una app deployada

Es complejidad que no deberías tener que gestionar.

Vercel Cron: Solo para Quien Paga

Vercel ofrece Vercel Cron integrado, pero:

  • Solo Pro/Enterprise: No disponible en el plan Hobby gratuito
  • Costo: Desde $20/mes por usuario
  • Vendor lock-in: Solo funciona en Vercel

Servicios Externos: Seguridad Cuestionable

Servicios como cron-job.org parecen simples, pero:

  • Endpoints públicos: Debes exponer URLs sin protección
  • Confiabilidad: Dependes de servicios externos
  • Limitaciones: Planes gratuitos limitan a 5-10 ejecuciones al día
  • Privacidad: Un tercero conoce tus endpoints

GitHubCron resuelve todos estos problemas.


Qué es GitHubCron y Cómo Funciona

El Patrón "Webhook Programado"

GitHubCron implementa un patrón brillante:

  1. GitHub Actions actúa como scheduler (ejecuta el workflow en el horario programado)
  2. Hace una petición HTTP POST a tu endpoint
  3. Tu app ejecuta la lógica (usando tu código existente)
  4. Responde con el resultado (éxito/error)

Ventajas de este enfoque:

  • Sin duplicación de código: La lógica está en tu app
  • Acceso a todo: Base de datos, cache, variables de entorno, servicios externos
  • Framework-agnostic: Next.js, Express, Cloudflare Workers, Deno, Bun
  • Seguro: Token secreto para autenticar peticiones
  • Simple: Un endpoint HTTP es todo lo que necesitas
  • Sin vendor lock-in: Funciona con cualquier plataforma de hosting

Arquitectura Técnica

// 1. Define jobs en tu app import { ServerlessCron } from "@snowinch/githubcron"; export const cron = new ServerlessCron({ secret: process.env.GITHUBCRON_SECRET, baseUrl: process.env.NEXT_PUBLIC_APP_URL, }); cron.job("send-daily-emails", { schedule: "0 9 * * *", handler: async (ctx) => { const result = await sendDailyEmails(); return { sent: result.length }; }, }); // 2. Crea el endpoint (ejemplo Next.js) // app/api/cron/[job]/route.ts export const POST = cron.nextjs.appRouter(); // 3. Genera el workflow // npx githubcron generate // Crea .github/workflows/cron-jobs.yml automáticamente

GitHub Actions llama a tu endpoint en el horario programado. Tu app no sabe (y no le importa) que quien llama es GitHub Actions.


Comparación con Alternativas

GitHubCron vs Servidor Dedicado (VPS)

AspectoGitHubCronVPS
Costo mensual€0€50-200
Setup inicial10 minutos2-4 horas
MantenimientoCeroContinuo
EscalabilidadAutomáticaManual
Confiabilidad99.9% (GitHub)Variable
Security patchesAutomáticosManuales
Límites ejecución2000 min/mes (gratis)Ilimitados

Veredicto: GitHubCron gana para proyectos pequeños/medianos. VPS necesario solo para cargas extremas.

GitHubCron vs AWS Lambda + EventBridge

AspectoGitHubCronAWS Lambda
Complejidad setupBajaAlta
Costos€0~€0.20-2/mes
Curva de aprendizajeRápidaEmpinada
Vendor lock-inGitHubAWS
DebuggingSimple (logs claros)Complejo (CloudWatch)
Cold startsNo (llama a tu app)Sí (Lambda cold start)
Acceso a base de datosDirecto (tu app)Requiere configuración

Veredicto: GitHubCron es mucho más simple. Lambda ofrece más flexibilidad para arquitecturas complejas.

GitHubCron vs Vercel Cron

AspectoGitHubCronVercel Cron
Costo€0€20+/mes/usuario
PlataformasCualquiera (Vercel, Netlify...)Solo Vercel
Plan requeridoNingunoPro/Enterprise
ConfiguraciónArchivo TypeScriptvercel.json
Límites2000 min/mesSegún el plan
Vendor lock-inBajo (GitHub)Alto (solo Vercel)

Veredicto: Si ya estás en Vercel Pro/Enterprise, Vercel Cron está más integrado. Pero GitHubCron es gratuito y funciona en todas partes.


Casos de Uso Reales

E-Commerce: Carritos Abandonados

Problema: Recuperar clientes que abandonaron el carrito.

Solución: Job cada 30 minutos, encuentra carritos abandonados hace más de 1 hora, envía email con 10% de descuento.

Resultado: Tasa de recuperación +15-25% sin costos adicionales.

SaaS: Reportes Diarios

Problema: Generar y enviar reportes analíticos a clientes cada mañana.

Solución: Job a las 6:00 AM recolecta métricas, genera PDF, envía por email.

Resultado: Reportes automatizados profesionales sin infraestructura dedicada.

Plataforma de Contenido: Publicación Programada

Problema: Permitir a autores programar la publicación.

Solución: Job cada 15 minutos encuentra contenido programado y lo publica.

Resultado: Sistema de publicación programada enterprise-grade sin costo.

Monitoreo: Health Checks

Problema: Monitorear uptime y rendimiento de APIs críticas.

Solución: Job cada 5 minutos testea endpoints críticos y envía alertas.

Resultado: Sistema de monitoreo completo sin Datadog/NewRelic (€100+/mes).


Quick Start

Instalación y Setup (5 minutos)

# 1. Instalar npm install @snowinch/githubcron # 2. Inicializar (crea estructura automáticamente) npx githubcron init --framework nextjs-app # 3. Configurar jobs en lib/cron.ts # 4. Generar workflow npx githubcron generate # 5. Configurar GitHub Secrets y Variables # 6. ¡Deploy!

Documentación completa:

La documentación oficial incluye:

  • Guías paso a paso para todos los frameworks (Next.js, Express, Cloudflare Workers, Deno, Bun)
  • Ejemplos completos de código
  • Configuración avanzada (lifecycle callbacks, retry logic, monitoring)
  • Troubleshooting y best practices
  • Referencia API completa

Limitaciones y Cuándo NO Usar GitHubCron

1. Precisión del Timing

GitHub Actions tiene una latencia variable de 1-15 minutos.

  • No usar para: Bots de trading, subastas online, pagos time-sensitive
  • Funciona para: Reportes, backups, sync de APIs, email marketing, limpieza

2. Límites Mensuales

  • Cuentas gratuitas: 2,000 minutos/mes
  • Cuentas Team: 50,000 minutos/mes

Si un job tarda 5 minutos y corre cada hora: 5 × 24 × 30 = 3,600 min/mes → Supera el límite gratuito.

Solución: Optimiza el job, reduce frecuencia, o pasa a cuenta Team.

3. Timeout de la Plataforma

PlataformaMax TimeoutNotas
Vercel (Hobby)10 segundosUpgrade a Pro para más tiempo
Vercel (Pro)60 segundos-
Netlify (Free)10 segundosUpgrade para 26 segundos
Cloudflare Workers30 segundosLímite de CPU time
Express (self-hosted)IlimitadoDepende de tu configuración

Para jobs largos: Usa job queue, divide en tareas, o self-host con Express.


Conclusión

GitHubCron representa un cambio de paradigma en la gestión de cron jobs.

Antes de GitHubCron:

  • Servidor dedicado: €100/mes
  • Setup: 4 horas
  • Mantenimiento: 2 horas/mes
  • Costo anual: €1,200 + 28 horas

Con GitHubCron:

  • Costo: €0
  • Setup: 20 minutos
  • Mantenimiento: 30 minutos/mes
  • Costo anual: €0 + 6 horas

Ahorro: €1,200/año + 22 horas/año

Pero el verdadero valor no es solo económico. Es simplicidad. Es no tener que preocuparse por otra pieza de infraestructura que mantener. Es poder automatizar procesos sin pensarlo dos veces.

GitHubCron es:

  • Gratuito - 2000 minutos/mes sin costo
  • Simple - Setup en 10 minutos, sin DevOps
  • Seguro - Validación automática de token secreto
  • Framework-agnostic - Next.js, Express, Cloudflare Workers, Deno, Bun
  • Open-source - Código público, community-driven
  • Production-ready - Usado por cientos de proyectos

Si tienes procesos repetitivos que automatizar, tareas periódicas que ejecutar, o estás pagando demasiado por infraestructura de scheduling, GitHubCron es la solución más simple y económica en 2025.


¿Necesitas ayuda automatizando tu proyecto?

En Snowinch desarrollamos GitHubCron para resolver nuestro propio problema. Hoy lo usamos en producción para docenas de clientes, automatizando procesos que antes requerían horas de trabajo manual.

Si quieres implementar GitHubCron, optimizar tus workflows, o construir soluciones de automatización custom para tu negocio, hablemos.

Contáctanos

Construyamos Algo Increíble Juntos

En Snowinch, creamos integraciones de software personalizadas, soluciones impulsadas por IA y sitios web de alto rendimiento para impulsar el crecimiento de tu negocio. Construyamos el futuro, juntos.