---
title: "cronTrigger()"
description: "`cronTrigger()` is set as a [Job's trigger](/docs/sdk/job) to trigger a Job on a recurring schedule using a CRON expression."
---
## Development
## CRON expressions
CRON expressions are strings that define when something should happen.
Some examples:
- `"0 0 * * *"`: will run the Job every day at 12:00am UTC.
- `"30 14 * * 1"`: will run the Job every Monday at 2:30pm UTC.
A useful tool when writing CRON expressions is [crontab guru](https://crontab.guru).
## Parameters
A CRON expression that defines the schedule. Note that the timezone used is always UTC.
```typescript 9am UTC everyday
client.defineJob({
id: "scheduled-job-1",
name: "Scheduled Job 1",
version: "0.1.1",
// 9am every day
trigger: cronTrigger({
cron: "0 9 * * *",
}),
run: async (payload, io, ctx) => {
await io.logger.info("Received the scheduled event", {
payload,
});
return { foo: "bar" };
},
});
```
```typescript First day of month
client.defineJob({
id: "scheduled-job-2",
name: "Scheduled Job 2",
version: "0.1.1",
// The first day of the month at 2am UTC
trigger: cronTrigger({
cron: "0 2 1 * *",
}),
run: async (payload, io, ctx) => {
await io.logger.info("Received the scheduled event", {
payload,
});
return { foo: "bar" };
},
});
```