Freelance Availability Planner

Track booked projects, weekly capacity, open slots, and overload risk.

Auto saved
Projects0
Active load0h
Open slots30h
OverloadNo
No booked projects yetAdd booked projects to estimate weekly load, availability, and overload warnings.

Freelance Availability Planner - Project Capacity, Open Slots, and Overload Warnings

Local capacity planner. Open slots and overload warnings for your schedule.

Updated May 17, 2026
Share & Support

What's included

Features

Freelance availability planner for booked projects, tentative work, and active workload
Weekly capacity and weekly hours fields for realistic project scheduling
Open slots metric to show remaining weekly availability
Overload warning when active project load exceeds available capacity
Start date, end date, status, priority, client, project, and notes fields
CSV export for schedule review and JSON backup for IndexedDB records
Sample availability records for active, tentative, and internal workload testing
Freelance workload and capacity planning — see at a glance whether you are overbooked before saying yes to the next project, without scheduling software or a project management subscription
Search across projects, clients, and scheduling notes
No account, no upload, and no cloud calendar connection required
GitHub Gist Backup
Sync data across devices via a private GitHub Gist. Paste your token, click Sync - edits auto-backup every 10 seconds. Restore instantly on any device with the Gist ID.

About this tool

Plan Freelance Capacity Before You Overbook the Week

The most common reason freelancers over-commit is not greed - it is poor visibility. A client asks for a start date and the answer comes from a mental model of how busy the coming weeks feel. That model misses retainer hours, revision rounds, sales calls, admin, support requests, and the buffer that every project actually needs. Two weeks later, the schedule is impossible and at least one client is waiting longer than promised.

This freelance availability planner gives you a local record of every project consuming time in your schedule: confirmed work, tentative proposals, retainer commitments, and internal admin blocks. Each record carries start date, end date, estimated weekly hours, weekly capacity, status, priority, and client. The summary calculates active load, open slots, and whether the total exceeds capacity - a simple early-warning system before you say yes to something that does not fit.

Weekly capacity is the honest number. It is not your total working hours - it is the hours realistically available for client and project work after admin, sales, support, revisions, and personal time. Most full-time freelancers find this is 25 to 30 hours, not 40. Setting an accurate capacity number makes the overload warning useful instead of constantly triggered.

Adding tentative projects protects start windows. When a proposal is sent, add the potential project as tentative with its likely start date and estimated hours. This prevents accidentally promising the same start window to two clients. When the proposal is declined or the start is confirmed, update the status. Tentative records make your availability planning realistic rather than optimistic.

The overload warning is a decision tool, not an alarm. When active load exceeds capacity, the summary flags overload. What you do with that information depends on the situation: push a start date, reduce scope, add hours to a retainer, or simply accept the crunch for a short sprint. The value is that the decision is conscious rather than discovered mid-delivery.

Use alongside Retainer Tracker for monthly retainer commitments, Client Portal Lite for project delivery tracking, Mini Kanban for task-level delivery work, and Milestone Payment Tracker for tying delivery windows to payment stages. Export JSON backup before clearing browser data.

If you are a developer or designer freelancer building skills to command higher rates, the React Playground, CSS Playground, and HTML Playground let you learn interactively - no install, no setup required.

Step by step

How to Use

  1. 1
    Add booked and tentative workCreate records for confirmed projects, tentative proposals, retainers, and internal admin blocks that consume weekly capacity.
  2. 2
    Set dates and hoursEnter start date, end date, estimated weekly hours, weekly capacity, project status, and priority. Use one shared capacity number for a realistic weekly limit.
  3. 3
    Review active loadThe summary totals active, booked, and tentative weekly hours so you can see how much work is already committed.
  4. 4
    Watch open slots and overloadOpen slots show remaining capacity. If active load exceeds capacity, the overload metric flags the schedule before you accept more work.
  5. 5
    Export the planExport CSV for planning meetings or JSON for backup and restore. Export before clearing browser data or moving devices.
  6. 6
    Back up to GitHub Gist (optional)Click the GitHub icon in the toolbar and paste a personal access token with gist scope. Your availability plan syncs automatically every 10 seconds after edits and is stored as a private Gist - restore on any device by entering the same token and Gist ID.
  7. 7
    Keep your Gist private — never store sensitive data in itGitHub private Gists are not truly encrypted — they are unlisted links. Anyone who has your Gist URL or Gist ID can read the full contents without logging in. Never share your Gist URL, Gist ID, or Personal Access Token with anyone. Avoid storing passwords, API keys, or highly sensitive credentials. For maximum privacy with no data leaving your device, skip Gist sync and use the Export and Import buttons to transfer files manually instead.

Real-world uses

Common Use Cases

?
Freelance capacity planning
Estimate weekly project load before taking on new work. This helps keep sales decisions connected to real delivery capacity.
?
Open slots tracker
See how many weekly hours remain after booked and tentative projects. Use the number to judge whether a new project start date is realistic.
?
Overload warning for freelancers
If active weekly hours exceed capacity, the summary flags overload so you can move dates, reduce scope, or delay a start.
=
Project booking tracker
Track confirmed, tentative, active, completed, and cancelled work in one local planner instead of relying only on memory.
?
Sales pipeline scheduling
Add tentative projects before proposals are approved so you can avoid promising the same availability to multiple clients.
?
Private local schedule planner
Client names and project timing stay in IndexedDB. Export JSON when you need a portable backup.

Got questions?

Frequently Asked Questions

Track each booked, tentative, and active project with start date, end date, estimated weekly hours, and weekly capacity. Compare active load against capacity before accepting more work.

Weekly capacity is the realistic number of hours you can spend on client and project work after admin, sales, support, personal time, and buffer. Many freelancers should set it below their total working hours.

Yes. The overload metric shows Yes when active booked hours exceed weekly capacity. It is a simple warning based on your own estimates.

Yes. Tentative projects help you avoid double-selling the same start window. Mark a project as tentative until the deposit or approval is confirmed.

Yes. Add retainers as recurring workload blocks, then use Retainer Tracker for agreement details such as included hours, fee, renewal date, and rollover rules.

No. This version is a local browser planner, not a calendar sync tool. It is designed for quick capacity review and CSV or JSON export.

Records are stored locally in IndexedDB in your browser. Export JSON before clearing site data, changing browser profiles, or moving devices.

Yes. If the planner is empty, Load sample data adds example active, tentative, and internal workload records for testing.

Yes - use the GitHub Gist backup. Click the GitHub icon in the header, paste a personal access token (gist scope only), and click Sync Now. Your data is saved as a private Gist and auto-syncs every 10 seconds after edits. On another device, paste the same token and Gist ID to restore.

GitHub "private" Gists are not encrypted — they are unlisted links. Anyone who has your Gist URL or Gist ID can read the full contents without needing a GitHub login. Never share your Gist URL, Gist ID, or Personal Access Token with anyone. Avoid storing passwords, API keys, or highly sensitive credentials. Use Gist sync for regular workflow data only. For maximum privacy with no data leaving your device at all, skip Gist sync and use the Export and Import buttons to move files manually via USB or your own encrypted storage.