Skip to content
shipanysaas

Retainer hours portal for freelancers and consultants

Retainer hours portal for freelancers and consultants is a SaaS idea for freelancers and consultants who sell monthly retainers, priced to test at $15 a month per freelancer, unlimited clients. Clients forget what a retainer covers and dispute invoices when hours run over. With it, clients see how many retainer hours are left and where they went, and both sides get a warning before they run out.

. A starting point we wrote, not market research: run the 7-day test before you build.

What problem does it solve?

Clients forget what a retainer covers and dispute invoices when hours run over. Freelancers send spreadsheets nobody reads and have awkward talks at the end of the month.

Why now: Retainers smooth a freelancer’s income, but only while clients trust how the hours are counted.

What do they use today?

Most freelancers track hours in a notes file or a spreadsheet and share the total only when asked. The client sees no live count, so the invoice is often the first sign the hours ran out.

How does it work?

A consultant finishes a call and logs the time against the client’s retainer, with a short note on what was done. The client opens their own page to see the hours used, the hours left and what they paid for. Both sides get a warning as the hours run low and when they run out, and a summary email arrives each month.

What goes in the first version?

  • Log time against a client’s retainer
  • A client page with hours used, hours left and what they paid for
  • Warnings to both sides at 80% and 100%
  • A monthly summary email
  • Roll-over rules per client

Who pays, and how much?

Who pays
Freelancers and consultants who sell monthly retainers
Price to test
$15 a month per freelancer, unlimited clients

The price is per freelancer because a retainer is sold by one person, who decides alone and needs no seats for others. Unlimited clients mean adding the next retainer never raises the bill.

How to test it in 7 days

  1. 1Ask in r/freelance how people handle retainer overruns.
  2. 2Interview five consultants about their last disputed invoice.
  3. 3Share a mock client page and ask if they would send it to a client.

Where to find the first customers

  • r/freelance and r/consulting
  • Freelance communities on Slack
  • Accountants who work with freelancers

What are the risks?

  • Time-tracking tools could add the same feature.
  • Freelancers already pay for several tools and resist one more.

How to build it on shipanysaas

5 of the parts it needs are already in the kit. Get the kit, open it in Claude Code, Codex or Cursor, and paste the starting prompt.

Already in the kit
  • Sign-in
  • Teams and roles
  • Billing
  • Emails
  • In-app notifications
You build
  • Time log against retainers
  • Client hours page
  • Threshold warnings and roll-over rules
Get the kit
See the starting prompt
You are in a fresh copy of the shipanysaas starter kit, a pnpm and Turborepo monorepo: the Next.js web app is in apps/web and the Supabase database, with its migrations, in apps/web/supabase. Help me build the first version of Retainer hours portal for freelancers and consultants.

Read AGENTS.md first, then the AGENTS.md in every folder you work in: the kit's rules there win over your defaults. When a skill in .agents/skills (also in .claude/skills and .cursor/skills) matches a task, use it.

## The product
- What it does: Clients see how many retainer hours are left and where they went, and both sides get a warning before they run out.
- Who pays: Freelancers and consultants who sell monthly retainers
- Their problem: Clients forget what a retainer covers and dispute invoices when hours run over. Freelancers send spreadsheets nobody reads and have awkward talks at the end of the month.
- Price to test: $15 a month per freelancer, unlimited clients (a plan in apps/web/config/billing.config.ts)

## Build only this first version
1. Log time against a client’s retainer
2. A client page with hours used, hours left and what they paid for
3. Warnings to both sides at 80% and 100%
4. A monthly summary email
5. Roll-over rules per client

## Already in the kit: reuse it, never rebuild it
- Sign-in: email and password or Google, plus magic links and passkeys you can switch on
- Teams and roles: team accounts with members, roles and invitations
- Billing: Stripe or Lemon Squeezy subscriptions, per seat or usage-based, and one-off payments
- Emails: transactional email through Resend or Nodemailer
- In-app notifications: a notifications bell in the web app

## New code it needs
- Time log against retainers
- Client hours page
- Threshold warnings and roll-over rules

## How to work
1. Plan first: list the database tables (with row-level security, so each team only sees its own rows), the pages and the server actions for the first feature. Then stop and wait for my OK.
2. Build one feature at a time with the kit's own UI and form components, with a migration for every schema change and user-facing text in the translation files.
3. After each feature, run the verification steps in AGENTS.md, fix what they find, and tell me what you built and what comes next.

## Rules
- Ask me before you add a dependency, delete a file, or change sign-in, billing or the admin panel.
- Leave the parts of the kit this product doesn't use as they are.

Done when every first-version feature works for a signed-in team and the AGENTS.md checks pass.

Guides for the parts it uses

Want ideas for your own skills?

The free generator writes three while you watch, each with a plan and a starting prompt. Or paste this idea into it for two sharper versions.

Try the free generator

More ideas: Agencies

All SaaS ideas

Found your idea? Start from a SaaS that already works.

shipanysaas is a starter kit where sign-in, teams with roles, billing, emails, an admin panel and a blog already work, with an iPhone and Android app in the All-in plan. Your coding agent builds your idea on top.

From $49 once, no subscription

Live demo

Resets hourly

Get the kit