Skip to main content
Accurate estimation is the foundation of profitable delivery and predictable client costs. CharleOS uses a structured t-shirt sizing system combined with scoping best practices to estimate work consistently.

Why Estimation Matters

Good estimation enables:

Profitability

Accurate estimates create margin when delivery is efficient

Client Trust

Realistic quotes build confidence and long-term relationships

Capacity Planning

Precise estimates enable better scheduling and resource allocation

Risk Management

Identifying complexity upfront prevents overruns

The Estimation System

CharleOS combines two complementary approaches:
Relative estimation using standardized time rangesInstead of precise hours, work is sized using XS, S, M, L, XL, and XXL categories. Each size maps to a time range with a minimum, maximum, and average.Benefits:
  • Faster than precise hourly estimates
  • Accounts for uncertainty with ranges
  • Consistent across the team
  • Easy to explain to clients
Example:
  • “Homepage update” → M (3-6 hours)
  • Simple, clear, and feeds into billing formula

How It Works Together

The estimation process follows a logical flow:
1

Understand the Requirement

Review the client’s request or requirement description. Ask clarifying questions if anything is ambiguous. Understand the desired outcome.
2

Scope the Work

Define what’s included:
  • What deliverables are expected?
  • What’s explicitly excluded?
  • Are there design and development components?
  • What dependencies exist?
Break large requirements into smaller, estimable pieces.
3

Apply T-shirt Sizes

For each scoped piece, select the appropriate t-shirt size:
  • Consider complexity, unknowns, and dependencies
  • Reference similar past work
  • Choose the size that fits the range
Remember: Each size includes core work PLUS QA/feedback buffer.
4

Validate the Estimate

Review the total estimate:
  • Does it feel reasonable compared to similar work?
  • Have you accounted for risks and complexity?
  • Is the scope clear enough to justify the estimate?
Adjust if needed before finalizing.

Estimation in CharleOS

Where Estimates are Used

When creating quotes, each requirement block is assigned a t-shirt size. The quote shows the time range to the client (e.g., “M: 3-6 hours”) and calculates the total estimated time.Requirements can have both design and development sizes for work with multiple components.
When quotes are converted to tasks, the t-shirt sizes carry over. Tasks inherit the estimate, which becomes the billing cap.Task-level estimates feed into:
  • Scheduling and capacity planning
  • Billing calculations (MIN/MAX formula)
  • Efficiency tracking (actual vs estimate)
Estimates are used to allocate capacity to the schedule. The system calculates how much time is needed and distributes it across available days.The 80/20 split (core work vs QA/feedback) helps allocate work to the right team members.

Common Estimation Scenarios

Scenario 1: Simple, Well-Defined Work

Example: “Update footer copyright year and add privacy link” Approach:
  • Work is clear and specific
  • No unknowns or dependencies
  • Quick change with minimal testing
  • Size: XS (0-30 minutes)

Scenario 2: Moderate Complexity

Example: “Add product filtering by category on shop page” Approach:
  • Requires backend query changes and frontend UI
  • Existing patterns to follow
  • Standard testing required
  • Size: M (3-6 hours)

Scenario 3: High Complexity

Example: “Build custom booking system with availability calendar” Approach:
  • Multiple components (calendar, booking form, admin)
  • Complex logic (availability, conflicts, notifications)
  • Extensive testing needed
  • Break it down:
    • Calendar UI: L (8-16 hours)
    • Booking logic: XL (24-40 hours)
    • Admin panel: M (3-6 hours)
    • Testing & polish: L (8-16 hours)
    • Total: 43-75 hours across multiple sizes
XXL sizes (40-120 hours) should be rare. If a requirement is XXL, consider breaking it into smaller deliverables to reduce risk and improve scheduling.

Scenario 4: Unknown or Discovery Work

Example: “Investigate API integration options for [third-party service]” Approach:
  • Treat discovery as its own task
  • Size the discovery phase separately (usually S or M)
  • Estimate the implementation after discovery is complete
  • Discovery: S (1-2 hours)
  • Implementation: TBD (after discovery)

Estimation Best Practices

If you’re torn between two sizes, choose the larger one. It’s better to deliver faster than expected (creating banked time) than to consistently overrun.Example: Feels like a large S or small M? → Choose M.
Smaller estimates are more accurate than large ones. Instead of one XL task, consider three M tasks. This also improves scheduling flexibility.Rule of thumb: If it’s XXL, try to split it.
Look at similar completed tasks:
  • How long did they actually take?
  • What was the estimated vs actual?
  • What unexpected issues arose?
Use history to calibrate your estimates.
Factors that increase complexity:
  • Working with unfamiliar tech
  • Client’s codebase is messy or undocumented
  • Multiple dependencies or stakeholders
  • High-risk changes (payment, auth, etc.)
Add buffer by sizing up when these factors are present.
T-shirt sizes include core work AND QA/feedback time. Don’t just estimate the happy path—account for:
  • Internal QA finding bugs
  • Client feedback requiring revisions
  • Multiple fix/review rounds
The 20% buffer is built in, but complex work may need a larger size.

How Estimates Feed Billing

Estimates directly impact billing through the value-based formula:
Billable = MIN(maximum, MAX(average, actual))
Example: M size (3-6 hours, average 4.5 hours)

Efficient Delivery

Actual: 3 hours
Billable: 4.5 hours (average)
Result: 1.5 hrs banked (profit)

On-Target Delivery

Actual: 5 hours
Billable: 5 hours (actual)
Result: No margin, but fair

Overrun

Actual: 7 hours
Billable: 6 hours (maximum)
Result: 1 hr overage (absorbed)
Why this matters:
  • Underestimating consistently creates chronic overruns, hurting profitability
  • Overestimating creates unrealistic client expectations and may lose deals
  • Accurate estimation balances risk and opportunity

Tools and Resources