Coming soon

Cron Jobs aren't live yet — we're finishing the runtime and the dashboard. Sign up and we'll ping you the moment it ships.

Compute

Managed Cron Jobs & Scheduled Tasks

Run scheduled tasks automatically. Set a schedule, we run your code — with logs and retries built in.

Overview

Runsite Cron Jobs runs scheduled tasks as containers, so backups, report generation, data syncs, and cleanup jobs happen without a server to babysit. Write a standard Unix cron expression, point it at a Docker image, and Runsite takes care of provisioning, timeouts, retries, and logging.

Jobs execute on infrastructure inside the European Union, so whatever data they read or write stays within EU borders. A signed GDPR Data Processing Agreement is included on every plan.

Every run is recorded with its exit code, output, and duration, and a failed run can alert you by email or webhook. Concurrency policies decide what happens when a run overlaps the previous one, so long jobs never pile up. Most jobs sit alongside the rest of your stack: dump a PostgreSQL backup to object storage, or refresh caches and data for your web services.

Last reviewed: June 2026
Features

Everything to Run Scheduled Jobs

Built-in tools and capabilities to deploy and manage with confidence.

Cron Schedule Syntax

Use standard Unix cron expressions to define when your jobs run — every minute, hourly, daily, weekly, or any custom interval.

Timezone Support

Schedule jobs in any timezone. Run reports at 9 AM local time or batch processes at midnight in your users' timezone.

Concurrency Policies

Choose Allow, Forbid, or Replace policies to control what happens when a new run is triggered while a previous one is still executing.

Custom Docker Images

Run any script or binary in a Docker container. Bring your own image or use Runsite's built-in runtime images for popular languages.

Execution History

Track every execution with status, duration, and logs. Set retention limits for successful and failed job history.

Failure Alerts

Get notified when a job fails or exceeds its timeout. Configure retry behavior and alert channels for critical tasks.

Execution Lifecycle

Schedule, run, monitor

Every scheduled job follows a predictable lifecycle with built-in safety nets for failures.

1

Schedule Defined

Set a cron expression (e.g. 0 2 * * * for daily at 2 AM) with a timezone. Choose a concurrency policy: Allow, Forbid, or Replace.

2

Container Provisioned

At the scheduled time, Runsite spins up a fresh container from your Docker image with your environment variables and secrets injected.

3

Execution & Timeout Guard

Your script runs inside the container. If it exceeds the timeout limit, the container is terminated and the run is marked as failed with an alert sent.

4

Logs & History Recorded

Exit code, stdout/stderr output, duration, and resource usage are recorded. Failed runs trigger configurable alerts via email or webhook.

Code

Get Started in Minutes

Simple integration with your existing tools and workflows.

# Schedule: 0 2 * * * (daily at 2 AM)
# Timeout: 3600s

#!/bin/bash
pg_dump $DATABASE_URL | gzip > backup.sql.gz
aws s3 cp backup.sql.gz s3://backups/$(date +%F).sql.gz
Use Cases

What You Can Automate

Common scenarios where this service shines.

Database Maintenance

Schedule backups, cleanup old records, run data migrations, and generate reports on a recurring basis.

Email Digests

Send daily or weekly digest emails, notification summaries, and scheduled marketing campaigns.

Data Sync

Synchronize data between services, pull from external APIs, update caches, and refresh materialized views.

Analytics & Reports

Generate daily analytics snapshots, compute aggregated metrics, and export reports to external systems.

EU-Sovereign

Your Jobs Run Inside the EU

Hosted in Frankfurt, Germany — your data stays under EU jurisdiction.

Scheduled containers are provisioned and executed in Runsite's Frankfurt, Germany region. Any database rows, files, or API responses your job touches are processed inside the EU, and execution logs are stored there too.

Every account is GDPR-compliant by default and includes a signed Data Processing Agreement at no extra cost and with no sales call. You can review how we handle data in our Privacy Policy and DPA terms. That makes Runsite a fit when you handle EU customer data or fall under the GDPR or the EU Digital Services Act.

EU data residencyGDPR-readySigned DPA on every plan
Planned pricing

Simple, transparent pricing

This service is still in development. The plans below are a preview — final pricing will be confirmed at launch.

Free

Free

  • 1 cron job
  • Hourly minimum interval
  • Basic logging
  • 7-day execution history
Join the waitlist

Starter

€3/mo

  • 5 cron jobs
  • Per-minute scheduling
  • Failure alerts
  • 14-day history
Join the waitlist

Pro

€12/mo

  • Unlimited cron jobs
  • Custom Docker images
  • Extended timeout (1 hour)
  • 30-day history
Join the waitlist
FAQ

Frequently Asked Questions

Common questions about this service.

The default timeout is 3600 seconds (1 hour). On the Business plan, you can request extended timeouts for long-running batch processes. If a job exceeds its timeout, it is terminated and marked as failed.

You can configure a concurrency policy: Allow (run in parallel), Forbid (skip the new run), or Replace (cancel the running job and start a new one). The default policy is Forbid.

Yes. You can trigger any cron job manually from the dashboard at any time, regardless of its schedule. This is useful for testing or running one-off executions.

Failed jobs are logged with their exit code and output. You can configure alert notifications via email or webhook. The execution history shows all past runs with their status, duration, and logs for debugging.

Your app deserves to be online

Free to start. Deploy in under a minute. No credit card needed.