Scope Creep Tracker

Track original scope, change requests, approvals, and extra-billable work.

Auto saved
Requests0
Needs quote0
Approved0
Extra value$0.00
No scope changes yetLog client requests against the original scope before small changes become unpaid work.

Scope Creep Tracker - Freelance Change Request and Approval Log

Local change request log. Compare new requests against agreed scope.

Updated May 17, 2026
Share & Support

What's included

Features

Scope creep tracker for freelancers comparing new requests against original project scope
Change request log with client, project, requested date, and approval status
Approval workflow for New, Needs quote, Approved, Declined, and Included requests
Extra-billable amount tracking for approved changes and client revision requests
Decision log for email approvals, meeting notes, and scope clarification history
Original scope field for proposal, contract, brief, or statement-of-work excerpts
CSV export for change request reports and JSON backup for IndexedDB data
Sample scope creep records for testing quoted and approved change workflows
Auto saved indicator confirms when change requests are written to local storage
Change order management without the overhead — log every client request against the original scope, track approval status, and build a billable record of extra work without project management software
Connects proposal scope from Proposal Builder to billing in Local Invoice Tracker
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

Track Client Change Requests Before They Become Unpaid Work

Scope creep is the most common profitability problem in freelance project work. It rarely starts as a big request. It starts as one extra page, one more revision round, a different integration than originally specified, or a feature that was assumed but never written down. Each individual change feels small. The cumulative effect is hours of unbilled work and a project that costs more to deliver than the proposal covered.

A scope creep tracker solves this by creating a visible record for every client request that goes beyond the agreed scope. You see the original agreement, the new request, and the gap between them. That visibility is what lets you make an informed decision: absorb the change, quote extra work, or push back clearly with a reference to what was agreed.

The original scope field is the anchor. Paste the relevant portion from the proposal, contract, email, or statement of work next to the new request. You do not need the entire document - just the section that defines whether the new request is inside or outside the agreed work. This makes the comparison concrete and removes the "I thought it was included" ambiguity that drains freelancer confidence in those conversations.

The approval workflow protects your billing. Use New when a request arrives, Needs quote when you have not priced it yet, Approved when the client accepts the extra cost, Declined when they withdraw the request, or Included when you choose to absorb a small change. Approved changes carry an extra amount field, and the summary totals approved extra value across all records. That running total is what you review before updating an invoice.

The decision log creates a paper trail. Use it for email summaries, verbal approval notes, meeting outcomes, and dates. When a billing question comes up three weeks later - "I thought that was included" - the decision log shows exactly when and how the change was discussed and approved. This is the kind of record that prevents disputes from becoming relationship-damaging arguments.

Use this tool after scope is defined in Proposal Builder or Contract Template Manager. Log changes as they arrive during the project. Review approved extra-billable amounts before creating or updating invoices in Local Invoice Tracker. Export JSON backup before clearing browser data.

If you are a developer or designer freelancer looking to raise your rates through skill development, the React Playground, CSS Playground, and HTML Playground offer structured, interactive learning - no install, no setup required.

Step by step

How to Use

  1. 1
    Create a project change recordEnter the project name, client, and the client request. Keep the request wording close to what the client actually asked for so it is easy to reference later.
  2. 2
    Paste the original scopeAdd the relevant original scope from the proposal, contract, email, or project brief. This makes it clear whether the new request is included, unclear, or outside the agreed work.
  3. 3
    Set approval statusUse New, Needs quote, Approved, Declined, or Included. Needs quote is useful when you have not priced the request yet, while Included is useful for small changes you choose to absorb.
  4. 4
    Track extra-billable valueWhen a change is approved, enter the extra amount and currency. The dashboard totals approved extra value so you can review billing impact before invoicing.
  5. 5
    Keep a decision logUse the decision log for approval notes, dates, email summaries, meeting outcomes, and why the change was included or billed. Export CSV or JSON for records.
  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 scope change records sync automatically every 10 seconds after edits and are 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 change request tracker
Log every client request that changes the original agreement. This gives you a clean record when a small request grows into a new deliverable or revision round.
Track extra billable work before invoicing
Approved scope changes can be assigned an extra amount and currency. At invoice time, review the approved total instead of searching through messages.
Original scope comparison for client revisions
Paste the relevant proposal or contract scope next to the new request. This helps you explain whether the request is included, outside scope, or needs a quote.
Approval notes for client change requests
Use the decision log to summarize emails, calls, or chat approvals. A dated decision record reduces confusion when billing or delivery questions come up.
Revision round control for freelancers
Track when requests were made and when they were approved. This is useful when your proposal includes a fixed number of revision rounds.
Private local scope change log
Keep scope discussions in browser storage rather than another project management app. Export JSON backups before clearing browser data or archiving a project.

Got questions?

Frequently Asked Questions

Track each new client request separately, compare it against the original scope, decide whether it is included or needs a quote, and record the decision. This tool gives you fields for the request, original scope, approval status, decision log, and extra amount. That creates a local record before the change becomes unpaid work.

Scope creep is any request that adds work beyond what was agreed: extra pages, additional revisions, new integrations, expanded deliverables, faster timelines, or new formats. Some changes are small enough to include, but they should still be visible. Tracking them helps you see patterns and protect project profitability.

Reference the original scope, explain what the new request adds, and provide a clear option: quote it as extra work, swap it for something else, or schedule it for a later phase. A decision log makes that conversation easier because you can point to the exact request and agreed next step.

Yes. Set the request status to Approved and enter the extra amount. The summary metrics total approved extra value, which you can review before adding the charge to Local Invoice Tracker.

It is a lightweight tracker, not a legal document. It helps you organize requests and approvals, but you may still need a formal change order or contract addendum for larger projects. Use the exported data as supporting context.

Paste the relevant portion from your proposal, contract, email, or statement of work into the Original scope field. You do not need the entire document, only the part needed to judge the new request.

Yes. Export CSV for a spreadsheet view or JSON for a full backup. CSV is useful for end-of-project review, while JSON is better if you want to restore the tool data later.

No. Records are stored locally in IndexedDB. Client names, decision notes, and extra-billable amounts stay in the browser unless you manually export and share a file.

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.

Yes — if your only project management pain point is scope creep and unbilled extra work, this tool is a focused alternative to using Asana, Basecamp, or Notion just to track change requests. Log the original scope once, then add each client request with its approval status and extra amount. Export CSV for invoicing or client disputes. No subscription, no login.