How to Set Up Seasons and Programs (New Company Guide)

Last updated June 10, 2026 · Admins and office staff

This guide shows you how to set up seasons and programs from scratch — the way a brand-new company would on day one. By the end you’ll have a season for the current service year, a program with rounds, customers enrolled, and visits on the schedule.

If your seasons and programs are already set up and you’re rolling into a new year, see How to Roll Seasons and Programs into a New Year instead.


How the pieces fit together

Term What it is Example
Season Type A reusable category for seasons Spring, Summer, Fall, Winter, Snow
Season A dated service period for one year “Summer 2026” (May 1 – Sep 30, 2026)
Program Type A reusable category for programs Fertilization, Pest Control
Program A multi-round service plan for one year “Fertilization 2026” with 5 rounds
Round One step inside a program, with a date window “Round 1 – Pre-emergent” (Mar 15 – Apr 15)
Job One customer’s work for the year — this is how a customer joins a program “Harbor View — Turf fertility 2026”
Visit A single trip to the customer’s property, generated from a round Round 1 visit on Mar 20

The flow is: types categorize, seasons and programs define the year, jobs enroll customers, and rounds generate visits.

Season Type ──> Season (the year's calendar)
Program Type ──> Program ──> Rounds (date windows)
                      ▲           │
Customer ──> Job ─────┘           └──> Visits (generated per round)

Do you need all of it?

Not always. Pick the setup that matches the work:

  • Multi-round treatment work (fertilization, plant health care, scheduled chemical applications): use a Program with rounds — rounds drive visit generation and per-round billing.
  • Event-driven winter work (snow plowing, salting): use a Season only (type Snow/Winter). Storm Events generate the visits — no program or rounds needed.
  • Simple recurring work (weekly mowing on a flat monthly bill): you can skip both and schedule visits directly on the job — though linking jobs to a season keeps year-end renewals much easier.

Best practice: Even when a season isn’t strictly required, link your recurring jobs to one. The renewal tools find next year’s candidates by season, so jobs without a season are harder to roll forward later.

Prerequisites

  • An operator account with access to the Work and Financials menus.
  • Customers (and ideally estimates/jobs) entered, if you want to enroll them as part of this setup. You can also set up seasons and programs first and enroll customers later.

Steps

1. Review your Season Types

Season types are categories like Spring, Summer, Fall, Winter, and Snow. The system ships with these defaults already in place, so most companies don’t need to create any.

  1. Go to Work > Seasons and click Add Season — next to the Season Type dropdown you’ll see a Manage Season Types link that opens the Season Types page. (You can also browse to /SeasonType/SeasonTypes directly.)
  2. Review the list. Entries marked System default are built in — they can’t be edited or deleted.
  3. If your business uses a category that isn’t there (for example “Irrigation” or “Year-Round”), click Add Season Type and fill in:
    • Season Type Name (required) — names must be unique, ignoring capitalization.
    • Description (optional).
    • Sort Order (optional) — lower numbers appear first in dropdowns.

2. Create your season(s)

A season is the dated container for one service year.

  1. Go to Work > Seasons and click Add Season.
  2. Fill in the form:
    • Season Name (required) — include the year, e.g. “Summer 2026” or “Winter 2026-27”.
    • Season Type — pick the matching category (e.g. Summer).
    • Start Date and End Date (required) — the real operating window, e.g. May 1 – Sep 30. The end date must be on or after the start date.
    • Year — fills in automatically from the start date; you can leave it alone.
    • Status — leave as Planned while you’re still setting up. (New seasons can only start as Planned or Active.)
  3. Click save. You’ll land back on the Seasons list with your new season showing a Planned badge.

Note: If your new season’s dates overlap another season, you’ll see a heads-up warning. That’s informational only — overlapping seasons are allowed (Spring and Summer often overlap).

Best practices for seasons:

  • Create one season per service period per year — e.g. “Summer 2026” for green-season work and “Winter 2026-27” for snow.
  • Keep seasons in Planned status until crews actually start. Activation is always a manual decision — the system reminds you with a banner on the Seasons list when a planned season’s start date arrives, but it never activates one for you. (It will automatically end an active season once its end date passes.)
  • Snow companies: a winter season that crosses the calendar year (“Winter 2026-27”, Nov 1 – Apr 30) is normal and fully supported.

3. Review your Program Types

Program types categorize programs the same way season types categorize seasons. Defaults are pre-seeded here too.

  1. Open the Manage Program Types link next to the Program Type dropdown on the Add Program form (see step 4), or browse to /ProgramType/ProgramTypes.
  2. If you need a category that isn’t listed, click Add Program Type and enter a Name (e.g. “Aeration”), optional Description, and Sort Order.

Note: You can’t delete a program type while any program is using it — you’d have to move those programs to a different type first.

4. Create your program

A program is the year’s plan for multi-round work — e.g. “Fertilization 2026”.

  1. Go to Work > Programs and click Add Program.
  2. Fill in the form:
    • Program Name (required) — include the year, e.g. “Fertilization 2026”. The year in the name makes annual renewals cleaner.
    • Program Type — e.g. Fertilization.
    • Year — defaults to the current year.
    • Season (Optional) — link the program to the season you created in step 2.
    • Start From Template (Optional)recommended for new companies. Pick an industry template (e.g. a 5-step lawn treatment) and the program is created with all of its rounds pre-filled, with the date windows mapped onto your chosen year. Windows that cross the year boundary (like a Nov–Apr snow window) are handled automatically.
  3. Click save. If you used a template, the success message tells you how many rounds were pre-populated.

5. Add or adjust rounds

Rounds are the steps of the program, each with a date window that controls when its visits happen.

  1. From the Programs list, click your program to open the Program Summary page.
  2. In Quick Actions, click Add Round (or edit the template rounds in the Program Rounds table).
  3. For each round, fill in:
    • Round Number (required) — controls the order.
    • Round Name (required) — make the intent obvious, e.g. “Round 1 – Early Spring Pre-emergent”.
    • Window Start and Window End (required) — the end must be on or after the start.
    • Notes (optional) — application rates, weather rules, etc.
    • Status — leave as Not Started. Rounds advance to In Progress and Completed as their windows open and close (automatically each night, or you can update them by hand).

Best practices for rounds:

  • Plan all rounds up front (or start from a template) rather than adding them mid-season.
  • Make windows realistic for weather and crew capacity — visits are generated inside these windows.

6. Enroll customers by linking jobs

Customers join a program through their jobs — one job per customer per year.

  1. Create the customer’s job the way you normally do (typically: estimate → Convert to Job, or create the job directly under the customer).
  2. Open the job’s Job Summary page and click Link to Program, then pick your program.
  3. Repeat for each customer on the program.

Best practice: Make sure each job has its products/services and pricing on it (usually inherited from the estimate). Program billing uses the job’s pricing, so a job with no line items will bill nothing.

7. Activate the season

Visit generation only runs for Active seasons, so activate before you generate:

  1. Open the season from Work > Seasons (click its name to open the Season Summary).
  2. In Quick Actions, click Activate Season.

The Seasons list also shows a reminder banner when any Planned season has reached its start date — but activation is always your call; the system never activates a season for you.

Note: The season’s status can only be changed with the Activate Season / Suspend Season / End Season buttons on the Season Summary — it’s intentionally read-only on the edit form. An Ended season cannot be reopened, so only end a season when the year is truly wrapped up.

8. Generate visits

Once jobs are linked and the season is active, the program can put visits on the schedule.

  1. On the Program Summary page, either:
    • Click the generate visits action on a single round (the calendar icon in that round’s row), or
    • Click Generate All Visits in Quick Actions to do every round at once.
  2. Confirm the prompt. Visits are created for every active job linked to the program, inside each round’s window.
  3. Check Schedule > Calendar — you should see the new visits, ready to assign to crews and routes.

Best practice: Link one test job first, generate visits for one round, and confirm the dates look right before enrolling your whole customer list. Re-running generation won’t duplicate visits that already exist.

Billing (during the year)

As rounds complete and visits are done, generate invoices from Financials > Sales:

  • Generate Visit Invoices — invoices completed, uninvoiced visits (per-visit billing).
  • Generate Monthly Fixed — generates the current month’s invoices for fixed-monthly jobs.

Verify it worked

  • Work > Seasons shows your season with the right dates and an Active badge (after step 7).
  • The Program Summary shows all rounds with correct windows and your enrolled job count.
  • Schedule > Calendar shows generated visits falling inside each round’s window.
  • Each enrolled customer’s Job Summary shows the program link.

Common issues

  • “Cannot delete” when removing a season — the season has jobs, programs, or storm events attached. Reassign or delete those first; this guard protects your history.
  • Can’t edit or delete a season type / program type — entries marked System default are built in and locked. Create your own type instead. Company types also can’t be deleted while in use.
  • Can’t change a season’s status on the edit form — by design. Use the Activate / Suspend / End buttons on the Season Summary.
  • Generated visits are missing for some customers — only active jobs linked to the program get visits, and the program’s season must be Active (generation is skipped for Planned, Suspended, or Ended seasons). Check the job’s status, its program link, and the season status.
  • A program shows its type as “(no longer in type list)” — the program type it used was deleted. Pick a current type on the program’s edit form and save.

Put it to work in your own account

14-day free trial · No credit card required