Wellrun | Help Center

How can we help?

Everything you need to know about setting up Wellrun, understanding your metrics, and managing your agency's profitability.

Getting Started

What is Wellrun?

This tool helps agencies and independent operators understand how profitable their retainer clients actually are.

It's not a time tracker or billing tool. Instead, you enter your time and costs as inputs, and the tool gives you clarity on profit margins, effective hourly rates, and utilization so you can make better business decisions.

What do I need to set up before I can see anything useful?

You need four things set up to see meaningful data:

  1. At least one Employee (with a cost rate — their hourly cost to you)
  2. At least one Client
  3. At least one Retainer Component on that client (the agreement terms)
  4. Some Time Entries logged against that client

Once those are in place, the Dashboard will start showing you profit, margins, and utilization data.

What's the difference between an Employee and a Client?

Employees are the people on your team who do the work. You set their hourly cost rate so the system can calculate your labor costs.

Clients are the people or companies paying you. You set up retainer agreements for them, and log time against their retainers.

Can I deactivate an employee or client without deleting them?

Yes. Both employees and clients have an active/inactive toggle. Deactivating them keeps all their historical data intact — they just won't appear in dropdowns for new time entries or retainers.

Retainer Components

What is a Retainer Component?

A retainer component is the specific agreement you have with a client. Each client can have multiple retainer components. For example, a client might have one retainer for "SEO Services" and another for "Content Writing."

Each component defines: - A monthly fee (what you charge) - The type: "Time-based" (includes a set number of hours) or "Value-based" (flat fee, no hour tracking) - Contract dates, renewal terms, and other settings

What's the difference between Time-based and Value-based retainers?

Time-based retainers include a set number of hours per month. For example, "$5,000/month for up to 40 hours of SEO work." The system tracks how many of those hours you use and calculates your effective rate and utilization.

Value-based retainers are a flat monthly fee with no hour quota. For example, "$2,000/month for social media management." Profit is simply revenue minus the labor cost of any time logged against it.

What do the contract date fields mean?

Start Month: The month this retainer becomes active. The system won't count revenue or hours for months before this.

End Month: The last month the agreement is active. What happens after this depends on the Auto-Renew setting.

Auto-Renew: If turned on, the retainer keeps going even after the end month (like a month-to-month continuation). If off, the retainer effectively stops contributing revenue after the end month.

Why are retainer dates set by month instead of exact date?

All retainers in Wellrun operate on full-month billing cycles. When you set a start or end date, you're choosing a month, not a specific day.

This is by design. Allowing mid-month starts would require prorating revenue, costs, hours, and utilization for partial months — which cascades into every calculation: margins, effective rates, rollover/borrowing, ad spend markup, and trend reporting. The complexity would make the numbers harder to trust and harder to act on.

In practice, most agencies bill by the full month anyway. If a contract is signed on the 15th, you either bill the full first month or start billing the following month — either way, you just pick the month that matches your arrangement.

What is Cancellation Notice Days?

This is how many days' notice the client must give before they can cancel. It's used by the risk analysis feature on the Dashboard.

For example, if a retainer ends in 25 days and requires 30 days' notice, the system flags it as "high risk" because you're already past the notice window.

Can I have multiple active retainers for the same client?

Yes. A client can have as many retainer components as you need. They'll all be tracked separately — each with their own hours, fees, and utilization metrics.

Renewals & Predecessor Linking

Best practice: What should I do when a client's rate changes?

When a client's retainer rate changes (new fee, different hours, updated terms), the best approach is:

  1. Edit the current retainer and set its End Month to the last month the old rate applies
  2. Click "Renew" on that retainer to create a new one with the updated rate and terms
  3. Set the new retainer's Start Month to the first month the new rate takes effect

This ensures there's no overlap between the old and new retainers. The system will count revenue from the old retainer up to its end month, and from the new retainer starting on its start month — giving you clean, accurate profit tracking across the rate change.

The two retainers are automatically linked in a renewal chain so you can see the full history of how terms evolved over time.

If you use the Harvest integration, remember to update your project mapping after renewing. A Harvest project can only be mapped to one retainer at a time, so you'll need to remove the mapping from the old retainer and add it to the new one. This ensures synced hours flow into the correct retainer going forward.

What happens when I renew a retainer?

When you click "Renew" on an active retainer, the system creates a brand new retainer component with updated terms (you can change the fee, hours, dates, etc.). The old retainer is automatically deactivated.

The new retainer is linked to the old one as its "successor," so you have a clear history of how terms changed over time.

What do the 'Renewed' and 'Renewal' badges mean?

"Renewed" (on an older retainer): This retainer has been replaced by a newer one. It's no longer active but its data is preserved.

"Renewal" (on a newer retainer): This retainer was created as a renewal of an older one. It's linked back to its predecessor.

Can I link two existing retainers together after the fact?

Yes. If you created a new retainer manually (without using the Renew button), you can still link it to an older retainer using the "Renewed From (Predecessor)" dropdown in the Edit dialog.

This is called retroactive linking. The system validates that both retainers belong to the same client.

Why do renewals matter beyond just record-keeping?

Renewal links serve two important purposes beyond tracking history:

  1. Rollover & Borrowing (Team plan): When a time-based retainer is renewed, unused hours from the old retainer can roll forward into the new one. Without the renewal link, the system wouldn't know which retainer to pull rollover hours from.
  1. Risk Analysis (Dashboard): The Dashboard flags retainers that are approaching their end date without a renewal. If a retainer has been renewed (it has a successor), the risk analysis knows the client relationship is continuing and won't flag it as at-risk. Without the link, every expired retainer would appear as a warning — even ones you've already renewed.

Why does the risk analysis skip renewed retainers?

If a retainer has been renewed (it has a successor), that means it wasn't cancelled — it was replaced with new terms. So the Dashboard's risk analysis doesn't flag it as "at risk" since the client relationship is continuing.

Does the old retainer's data get deleted when I renew?

No. All historical time entries, revenue, and metrics tied to the old retainer are preserved. The old retainer is simply marked as inactive, and a "Renewed" badge appears on it. You can still view all its data.

Rollover & Borrowing

Team Plan

What is Rollover?

Rollover means that if your team doesn't use all the included hours in a month, the unused hours can carry over to the next month — but only for one month.

For example, if a retainer includes 40 hours/month and you only use 30 in January, then 10 hours roll over to February — giving you 50 available hours in February.

Rolled-over hours are strictly use-it-or-lose-it: they only last one month. If those 10 rollover hours aren't used in February, they expire. They do not cascade into March or any future month. Only unused base hours from a given month can roll forward, and only into the immediately following month.

You can cap how much can roll over using the "Rollover Cap %" setting. A 50% cap on a 40-hour retainer means at most 20 hours can roll over.

What is Borrowing?

Borrowing is the opposite of rollover. If you exceed the available hours in a month (including any rollover), the overage is deducted from the immediately following month's available hours — but only that one month.

For example, if you use 45 hours on a 40-hour retainer in January (with no rollover hours), that's 5 hours over. With borrowing enabled, February's available hours drop to 35 (40 minus 5). However, if January had rollover hours that brought the budget to 48, using 45 would not trigger borrowing — you'd still be within budget.

Borrowed hours only affect the next month. They do not cascade further — if February also goes over, that creates a separate borrowing event into March, but January's overage won't compound beyond February.

Like rollover, you can cap borrowing with a percentage to limit the impact.

Can I enable both Rollover and Borrowing at the same time?

Yes. They work together month to month, but each adjustment only affects one month forward. If you under-use hours one month, the unused base hours roll over to the next month only. If you over-use the next month beyond even the rollover budget, the overage is borrowed from the following month only.

Rolled-over hours expire if not used in the month they roll into — they never cascade further. Borrowing only kicks in when usage exceeds the full adjusted budget (base plus any rollover), and the deduction applies to one month ahead. The system processes months in order automatically.

Does Rollover apply to Value-based retainers?

No. Rollover and Borrowing only apply to Time-based retainers that have included hours. Value-based retainers don't have an hour quota, so there's nothing to roll over.

How are rollover/borrowing amounts shown?

On the Client Detail page, you'll see the adjusted included hours for each month. If rollover added hours, you'll see the original base hours plus the rollover amount. The same applies for borrowing deductions.

In the utilization section of the Dashboard, the "Available" hours already reflect these adjustments.

Time Entry

How do I log time?

Go to the Time Entry page. You'll see a grid where you can select a month, then enter hours for each employee against each client's retainer components.

The grid shows all active employees as rows and all active retainer components as columns. Just type the hours into the cells.

Can I enter time for multiple months at once?

You select one month at a time on the Time Entry page. To enter time for a different month, change the month selector at the top. Each month is saved independently.

What happens if I enter more hours than the retainer includes?

The system will track it and show you that you've exceeded the included hours. Your utilization percentage will go above 100%, which shows as a red indicator on the Dashboard.

If Borrowing is enabled on that retainer, the overage will be deducted from next month's available hours.

Can I edit or delete time entries after saving?

Yes, as long as the month isn't locked. You can go back to any month and change the hours in the grid. If a month has been locked (see Time Locking), you won't be able to make changes.

Can I sync this with my time tracking software?

Yes! We currently have an integration with Harvest, available on the Team plan. Once connected, you can sync your Harvest time entries directly into Wellrun — no manual re-entry needed. Scroll down to the Harvest Integration section below for full details on how to set it up.

If you use a different time tracking tool and would like us to support it, we'd love to hear from you. Reach out and let us know which integrations would be most useful — we're always looking to expand our supported tools.

Time Locking

What does locking a month do?

Locking a month for a specific retainer component means no one can add, edit, or delete time entries for that component in that month. It's like "closing the books" — once you're confident the numbers are final, you lock it to prevent accidental changes.

Can I lock individual months per retainer, or is it all-or-nothing?

Locks are granular — you can lock a specific month for a specific retainer component. So January might be locked for one retainer but still open for another.

Can I unlock a month after locking it?

Yes. Locking is a toggle. If you locked a month by mistake, you can unlock it from the Client Detail page to make edits again.

Where do I manage time locks?

Time locks are managed on each client's detail page. You'll see lock/unlock controls next to each month's time data for each retainer component.

Revenue Adjustments

Pro Plan

What is a Revenue Adjustment?

A revenue adjustment lets you add or subtract a one-time amount from a client's revenue for a specific month. This is useful for things like:

  • A bonus payment for extra work
  • A discount or credit you gave the client
  • A one-time project fee on top of the retainer
  • Correcting a billing error

The adjustment amount is added to (or subtracted from, if negative) the retainer revenue for that month.

Do revenue adjustments affect profit calculations?

Yes. Adjustments directly change the revenue figure for that client in that month. Since profit = revenue minus labor cost, any adjustment flows through to profit, margin, and effective hourly rate calculations on the Dashboard.

Can I delete a revenue adjustment?

Yes. You can delete any adjustment from the Adjustments page. Deleting it will reverse its effect on all calculations.

Pausing a Retainer

Pro Plan

What does pausing a retainer mean?

Pausing a retainer component for a specific month tells the system to skip that component entirely for that month's calculations. No revenue is counted, no utilization is tracked, and no hours are expected.

This is useful when a client takes a break (like a holiday month) but the retainer isn't cancelled — they'll resume the following month.

Does pausing affect rollover calculations?

A paused month is excluded from calculations entirely. Hours don't roll over from a paused month because no hours were expected or tracked.

Where do I pause or unpause a retainer?

You can pause a retainer from the Adjustments page. Select the client and retainer component, choose "Pause this month," and pick the month. The pause will appear as an adjustment entry that you can remove later if needed.

Dashboard & Metrics

What sections does the Dashboard include?

The Dashboard is made up of several sections, each showing a different angle on your business:

Stat Cards (at the top): Utilization, Revenue, Total Profit, and Effective Rate — these give you a quick snapshot of your key numbers for the selected period.

Client Utilization: A bar chart showing how much of each client's retainer hours are being used, color-coded by health.

Top Underutilized Clients: A list of clients using the least of their included hours — helpful for spotting where you have capacity.

Most Utilized Clients: A list of clients using the most hours — useful for identifying overworked accounts.

Performance Overview: A trend chart showing revenue and profit over time. You can switch between bar and line chart views.

Client Profitability: A horizontal bar chart ranking your clients by total profit, with detailed metrics on hover.

Projected Revenue: A forecast showing estimated revenue for 3, 6, and 12 months, based on your active retainers.

Risk Assessment: Flags retainers that are nearing expiry, so you can plan ahead for renewals or conversations with clients. Available on the Team plan.

Can I hide or show specific sections?

Yes! Click the gear icon in the top-right corner of the Dashboard. This opens a panel where you can toggle each section on or off using switches. Your preferences are saved, so the Dashboard will look the same way next time you visit.

This is useful if certain sections aren't relevant to your workflow — for example, if you don't need to see projected revenue or the underutilized clients list, just turn them off for a cleaner view.

What is Total Profit?

Total Profit = Total Revenue - Total Labor Cost

This is the simplest way to understand it. Revenue is what clients pay you, and labor cost is what you pay your team (hours worked x their hourly cost rate). The difference is your profit.

What are Labor Profit and Utilization Profit?

These break down your total profit into two parts:

Labor Profit: The profit from hours your team actually worked. It's calculated as: Hours Used x Retainer Hourly Rate minus the actual labor cost.

Utilization Profit: The profit from hours the client paid for but your team didn't use. Since no labor cost was incurred, these hours are 100% margin.

Together, Labor Profit + Utilization Profit always equals Total Profit.

What is Effective Hourly Rate?

Effective Hourly Rate = Total Revenue / Hours Actually Worked

This tells you what you're actually earning per hour of work. It's often higher than the retainer rate because clients don't always use all their included hours.

For example, if a client pays $5,000/month for 40 hours but only uses 25, your effective rate is $200/hour instead of the $125/hour retainer rate.

What is Utilization?

Utilization shows how much of the included retainer hours each client is actually using:

  • Green (under 85%): Client is using a comfortable amount. You have breathing room.
  • Yellow (85-100%): Getting close to the limit. Keep an eye on it.
  • Red (over 100%): Client is using more hours than included. You might be losing money unless they're paying for overages.

What are Projected Revenue numbers?

The Dashboard shows projected revenue for 3, 6, and 12 months. These are estimates based on your currently active retainers and their monthly fees.

If a retainer has an end date and auto-renew is off, the projection only counts months where the retainer is still active.

What does the At-Risk Retainers section show?

This section flags retainers that might end soon. Risk levels are:

High Risk: The retainer's end date is within the cancellation notice window. For example, if 30 days notice is required but the retainer ends in 20 days — that's high risk because you can't cancel in time even if you wanted to renegotiate.

Medium Risk: The retainer ends within a broader risk window (whichever is larger: the notice period or 90 days).

Retainers that have been renewed (have a successor) are automatically excluded since the client relationship is continuing.

What is Margin?

Margin = Total Profit / Total Revenue (shown as a percentage)

A 60% margin means you keep 60 cents of every dollar the client pays after covering labor costs. Higher is better. Most healthy agencies target 40-60% margins on retainers.

Privacy Mode

Team Plan

What does Privacy Mode do?

Privacy Mode obscures sensitive financial information on your screen. When enabled:

  • Client names are replaced with generic labels (Client A, Client B, etc.)
  • Dollar amounts and financial figures are blurred out

This is perfect for screen sharing, demos, or when someone is looking over your shoulder. You can toggle it on and off from the Settings page.

Does Privacy Mode affect the actual data?

No. Privacy Mode is purely visual. Your actual data is untouched — it just can't be read on screen while privacy is enabled. Turn it off and everything is back to normal instantly.

Employee Cost Rates

Pro Plan

What is an Employee Cost Rate?

This is what each team member costs you per hour. It should include their salary broken down to an hourly rate, plus any overhead (benefits, taxes, etc.) you want to factor in.

The system uses this rate to calculate your labor cost when that employee logs hours against a client.

Can cost rates change over time?

Yes. You can add multiple cost rates with different effective dates. The system uses the rate that was in effect during each month to calculate costs accurately.

For example, if an employee's rate was $50/hour until March and then increased to $60/hour, January and February will use $50 and April onwards will use $60.

What if I don't set a cost rate for an employee?

The system will fall back to your organization's Default Hourly Cost (set during onboarding or in Settings). If that's not set either, the cost is treated as $0 — which will make your margins look artificially high.

Client Hourly Rates

What is a Client Hourly Rate?

This is an optional reference field that records the hourly rate you charge a specific client. You can have different rates at different dates to track rate changes over time.

Note: The profit calculations primarily use the retainer's monthly fee and included hours to determine the "retainer hourly rate" — the client hourly rate is more of a reference for your records.

Common Scenarios

A client wants to pause their retainer for a month. What do I do?

Go to the Adjustments page, select the client and retainer component, and choose "Pause this month" for the specific month. The system will exclude that retainer component from all calculations for that month — no revenue, no expected hours, no utilization tracking.

A client's retainer is expiring and we're negotiating new terms. What do I do?

Keep the existing retainer active until you've agreed on new terms. Once finalized, use the "Renew" button on the existing retainer to create a new one with updated terms. The old retainer will automatically be deactivated and linked to the new one.

I accidentally logged time against the wrong client. How do I fix it?

Go to the Time Entry page, select the month where the mistake happened (make sure it's not locked), and change the hours. You can zero out the wrong entry and add the correct hours to the right client.

My team consistently uses fewer hours than included. Is that good or bad?

From a profit perspective, unused hours are great — they represent 100% margin revenue. But from a client relationship perspective, consistently low utilization might mean:

  • The retainer is larger than the client needs (risk of downsizing)
  • Your team could be doing more proactive work
  • The client might feel they're not getting their money's worth

Use the utilization data to have informed conversations with clients about scope and expectations.

A client paid extra for a one-time project. Where do I record that?

Use the Adjustments page to add a positive revenue adjustment for that client in the appropriate month. This adds the extra payment to their revenue without changing their retainer terms.

I want to compare two periods to see if profitability improved. How?

On the Dashboard, use the date range filters to select the first period, note the key metrics, then change to the second period. The monthly trend chart also shows how profit, revenue, and costs change over time.

I created a new retainer manually but forgot to use the Renew button. Can I still link them?

Yes. Edit the new retainer and use the "Renewed From (Predecessor)" dropdown to select the old retainer. This creates the same link as if you had used the Renew button — the system will treat it as a renewal chain.

Harvest Integration

Team Plan

How do I connect my Harvest account?

To connect Harvest, you need a Personal Access Token (PAT) and your Account ID:

  1. Go to id.getharvest.com and log in
  2. Click the "Developers" tab in the top navigation
  3. Under "Personal Access Tokens", click "Create New Personal Access Token"
  4. Give it a name (e.g. "Wellrun") and click "Create"
  5. Copy your token — you won't be able to see it again
  6. Your Account ID is shown right below the token

Then go to Settings in this app, find the Harvest Integration card, and enter both values.

What does project mapping do?

Project mapping links a Harvest project to one of your clients in this tool. Once mapped, you can sync time entries from that Harvest project directly into your retainer tracking.

You set up mappings on each client's detail page. You can optionally map to a specific retainer component — if you don't, synced hours will go to the client's default component.

What are employee mappings?

Employee mappings link your Harvest team members to the employees you've set up in this tool. This ensures that when time is synced from Harvest, the hours are attributed to the correct employee with their cost rate.

If a Harvest user isn't mapped to an employee, their hours will still sync but won't have employee cost attribution.

How does the sync and accept workflow work?

The Harvest sync uses an accept-before-use workflow to keep you in control:

  1. Click "Sync Now" on a client's detail page to pull the latest time entries from Harvest for that month
  2. A preview shows you what was found — total hours by user and any differences from what's already recorded
  3. Review the data and click "Accept" to write those hours into your retainer tracking
  4. Accepted hours appear in the time entry grid with a sync badge and are read-only

If Harvest data changes after you've accepted (e.g. someone logs more time), syncing again creates a new pending batch that supersedes the old one. You can review and accept the updated data.

Can I edit synced time entries?

No — time entries that come from Harvest are read-only and shown with a sync icon. This prevents your data from getting out of sync with Harvest.

If you need to adjust hours, either update them in Harvest and re-sync, or use Revenue Adjustments to account for the difference.

Is Harvest integration available on all plans?

Harvest integration is available on the Team plan only. Starter and Pro plans will see a teaser in Settings showing what's available when they upgrade.

What happens if I disconnect Harvest?

Disconnecting removes your stored credentials and stops all syncing. However, any time entries that were already accepted remain in your data — they won't be deleted.

If you reconnect later, you'll need to set up your project and employee mappings again.

What happens with archived Harvest projects?

Harvest allows you to archive projects that are no longer active. Here's how archived projects interact with this tool:

  • You cannot map an archived Harvest project to a retainer. Archived projects do not appear in the project selection dropdown when setting up or editing a mapping.
  • If a Harvest project is archived after it has already been mapped to a retainer, the existing connection continues to work normally. Syncing, time entry imports, and data display all function the same as before.
  • When a mapped project has been archived, you'll see an "Archived in Harvest" badge on the retainer's Harvest mapping section. This is informational only — it lets you know the project is no longer active in Harvest, but it does not block any functionality.

In practice, this means you can safely archive old Harvest projects without worrying about losing your historical data or breaking existing connections. The typical workflow is: when a retainer ends or renews with a new Harvest project, archive the old project in Harvest and map the new one to your new retainer.

Best practice: What should I do with my Harvest mapping when a retainer renews?

A Harvest project can only be mapped to one retainer at a time. When you renew a retainer (creating a new one with updated terms), you need to update your Harvest mapping:

  1. Go to the client's detail page
  2. Remove the project mapping from the old (now inactive) retainer
  3. Add the same Harvest project mapping to the new retainer

This ensures that when you sync time from Harvest, the hours flow into the correct active retainer with the right fee and hour terms. If you forget this step, synced hours may still be attributed to the old retainer.

This is the same principle as the general best practice for rate changes — always point your Harvest mapping at whatever retainer is currently active.

Plans & Pricing

What plans are available?

There are three tiers — all include a 7-day free trial:

  • Starter ($19/month): 1 user, up to 8 clients, 2 employees, core profitability metrics and basic dashboard.
  • Pro ($59/month): 2 users included ($8/extra seat), up to 20 clients, 10 employees, plus employee tracking, revenue adjustments, and reports.
  • Team ($110/month): 5 users included ($5/extra seat), up to 100 clients, 50 employees, everything in Pro plus Harvest integration, rollover & borrowing, privacy mode, and risk analysis & projections.

What features are gated behind paid plans?

The Starter plan gives you the core profitability tracking: create clients, set up retainers, log time, and see revenue/profit metrics on the dashboard.

Features available on Pro and above: - Employee Tracking & Labor Costs: Add employees with hourly cost rates to calculate true labor-based profit. - Revenue Adjustments: Log one-time charges, credits, or overages against a client's month. - Advanced Reports: Detailed reporting and analytics.

Team-only features: - Harvest Integration: Sync time entries directly from Harvest. - Rollover & Borrowing: Track how unused hours carry forward between months. - Privacy Mode: Mask client names for screensharing or shared spaces. - Risk Analysis & Projections: Identify retainers nearing expiry and at-risk revenue.

What happens when I hit the client limit on the Starter plan?

The Starter plan allows up to 8 clients. Once you've reached that limit, the "Add Client" button will be disabled and you'll need to upgrade to Pro or Team to add more. Your existing clients and data remain fully accessible.

Can I try Pro features before committing?

All plans include a 7-day free trial. During the trial, you have full access to all plan features. Payment integration is coming soon — for now, all plan features are available for demonstration purposes.

If I upgrade, will my existing data carry over?

Absolutely. Upgrading unlocks new features but never changes or deletes your existing data. All your clients, retainers, time entries, and metrics stay exactly as they are.

Still have questions?

Our team is here to help you get the most out of Wellrun.

Contact Support