Projects are how you structure multi-phase work for a customer — onboarding rollouts, hardware refreshes, license migrations, server installs. A Project ties together a budget, a schedule, the Phases needed to deliver it, and the Tasks your team works underneath each Phase. This article covers creating a Project, breaking it into Phases and Tasks, tracking progress, and generating an invoice when it's done.
What's in a Project
Each Project record has:
- Title and Description — what the Project is.
- Customer Company — who it's for.
- Primary resource — the Member who owns delivery.
- Reporter — the customer Contact who's the project sponsor (with optional VIP contact flag).
- Start date and End date — the planned timeline.
- Estimated hours — the project-level estimate.
- Budget — the dollar budget.
- Billing type — Non billable or Billable.
- Status — Draft when you're still planning, progressing through to Completed when the work is done.
- Phases and Tasks — the breakdown of work.
- Materials — billable parts, licenses, or other line items.
The right sidebar also shows a rolled-up Tasks total estimated hours (sum of all Phase estimates) and a % completed progress bar.
Open the Projects list
Go to Projects in the left nav.
Columns: Project Title, Start date, Estimation, Budget, Company name, Primary resource, Billing type, Status. Click any Project to open its detail page.
Create a Project
- Click + Create new project.
- Enter the Title, Description, Start and End dates, Estimated hours, Budget, and Billing type.
- Set the Customer Company and the Primary resource.
- Save.
The Project gets a P- ID and opens in Draft status. You can refine the fields, add Phases, and only move it out of Draft when you're ready to start work.
Build out Phases and Tasks
The Phases and Tasks section sits inside the Project detail and is where most of the planning happens.
Each Phase has:
- Order — sequence number.
- Phase name — e.g., First Contact, Receive and Activate License, Onboard end users.
- Start / end date — Phase timeline.
- Estimated hours — how long the Phase should take.
- Description — context for the team.
- Status — Pending, In Progress, or Completed.
To add a Phase, click + Create new phase and fill in the fields.
To break a Phase down into actionable work, click Create task on the Phase row. The Task is created linked to the Project, and your team works it like any other Task. See Manage Tasks alongside Tickets for the Task workflow.
Tip: Treat Phases as milestones, not work items. A Phase like Procurement groups every Task involved in ordering and receiving hardware. Individual Tasks (Place PO with vendor, Confirm ship date) hang under it.
Track progress
The Project sidebar shows:
- Tasks total estimated hours — the sum of all Phase estimates. Compare against your Project-level Estimated hours to spot scope creep.
- % completed — auto-calculated based on resolved vs. open Tasks.
- Status — the Project's overall state.
For a deeper look at where time is going, open the underlying Tasks individually and check their Time entries tabs.
Bill for project work
Two billing models, set by the Project's Billing type:
- Non billable — for internal initiatives, no-charge customer onboarding, or anything covered by a flat-rate contract.
- Billable — for projects you'll invoice separately from the customer's recurring agreement.
When a Billable project is ready to invoice, click Generate invoice in the top-right of the Project detail. ZestMSP rolls up:
- Time entries from the Project's Tasks (at the rate defined on the customer's contract or your default rates).
- Materials attached to the Project.
The generated invoice lands in the Invoices module. See Generate and send Invoices for what happens from there.
Tip: Add Materials as you spend money during the Project, not all at the end. It's much easier to capture an order or a license purchase the day it happens than to reconstruct it before invoicing.
Communicate with the customer
The Activity → Comments section on a Project supports both internal comments and customer-facing replies (with the Send reply to customer toggle). Use this for periodic status updates to the project sponsor without creating a separate Ticket thread.
Close a Project
When the work is done:
- Confirm every Phase is marked Completed and any open Tasks are Resolved.
- Update the Project Status to Completed.
- If billable, click Generate invoice to produce the final invoice.
- Optionally export or document the Project for the customer record.
The Project stays in the system for history and reporting.
Tips for clean Project hygiene
- Use templates in your head — most MSPs have a handful of repeatable Project shapes (hardware refresh, new office, migration). Build out the standard Phases the first time, then duplicate the structure for the next one.
- Estimate before you start, re-estimate at each Phase boundary. Comparing original vs. actual hours is where the learning is.
- Keep customer-facing Tasks visible. A Project with 40 internal Tasks and 2 customer-visible ones still benefits from making those 2 obvious in your titles and descriptions.
Related articles
- Manage Tasks alongside Tickets
- Log time with Timesheet and Time Entries
- Generate and send Invoices
- Set up Services and Products