Skip to Content
FeaturesMilestone Billing

Milestone Billing

Kiaro supports three billing types for projects: hourly, fixed price, and mixed. Fixed-price and mixed projects use milestones to define a payment schedule tied to your project budget.

Billing types

When creating or editing a project, choose a billing type:

  • Hourly — Track time and invoice based on hours worked at the project’s hourly rate. This is the default.
  • Fixed Price — Define payment milestones that break the project budget into phases. Invoice clients when milestones are completed.
  • Mixed — Combine both. Set an hourly rate for time tracking and define milestones for fixed-fee deliverables on the same project.

Creating milestones

When you select Fixed Price or Mixed as the billing type, a milestone builder appears on the project form.

For each milestone, enter:

  • Name — the payment phase (e.g., “Discovery”, “Design Delivery”, “Launch”)
  • Amount — the payment amount for this milestone (in your currency)
  • Due date — optional target date
  • Description — optional notes about what this milestone covers

The milestone builder shows a running total compared to the project budget. If your milestones exceed the budget, a warning appears.

Milestone statuses

Each milestone moves through four statuses:

  1. Pending — not yet started
  2. In Progress — work has begun
  3. Completed — work is done, ready to invoice
  4. Invoiced — an invoice has been generated for this milestone

You transition milestones from the Milestones tab on the project detail page. Click Start to begin, Mark Complete when the work is done, and Generate Invoice to create a draft invoice.

If a milestone is marked complete by mistake, Owners and Admins can click Reopen on the completed milestone to move it back to In Progress. Editing is re-enabled as soon as the milestone is no longer Completed or Invoiced. Members cannot reopen a completed milestone — if you hit this, ask an Owner or Admin to reopen it for you. Invoiced milestones cannot be reopened because the attached invoice has already been issued.

Generating invoices from milestones

When a milestone is marked as completed, a Generate Invoice button appears. Clicking it creates a draft invoice pre-filled with the milestone name and amount as a single line item, and automatically applies the default tax rate from Settings → Invoice Settings (so Dutch BTW, UK VAT, etc. don’t have to be re-typed each time). You can still review the draft and override the rate per invoice before sending.

Once the invoice is generated, the milestone status changes to “invoiced” and shows a link to the invoice.

Overbilling prevention

Kiaro enforces that the total invoiced amount for a project cannot exceed the project budget. If generating an invoice from a milestone would push the total over budget, you will see an error showing the remaining budget.

Budget tracking

Fixed-price and mixed projects show two additional cards on the project detail page:

  • Milestones — shows how many milestones are complete out of the total
  • Budget — shows the percentage and amount invoiced against the total budget

Editing milestones

You can add, remove, and reorder pending milestones from the project edit page. Completed and invoiced milestones are locked and cannot be edited or removed. They appear as read-only rows with a lock icon.

Time tracking on fixed-price projects

Time tracking works on all billing types. On fixed-price projects, tracked time is for internal use only (profitability analysis). It does not appear on milestone invoices. The project detail page shows both milestone payment progress and internal hours logged so you can see your effective hourly rate.

AI command bar

You can create fixed-price projects with milestones using natural language:

Create a $50,000 fixed price project called Brand Redesign for Acme Corp with 3 milestones: Strategy $15,000, Design $20,000, Delivery $15,000

The AI will stage the project creation with milestones for your review before executing.

Client portal

When a fixed-price or mixed project has milestones, the client portal project page shows a milestone progress bar with the completion status of each milestone.

Last updated on