Skip to main content

How to Structure Projects for Agencies and Multi-Client Teams

By Florian7 min read
projectstagsagenciesnamingorganization

A freelancer with three clients can get away with three projects called "Acme", "Beta", and "Gamma". An agency with forty clients, six departments, three pricing tiers, and a recurring retainer cannot.

The point of this guide is not the basic project + tag combination (covered in the Projects and Tags overview). The point is the next layer: naming conventions, tag taxonomies, archive strategy, and team sharing patterns that scale from three projects to three hundred without anyone needing a cheat sheet to find Tuesday's work.

Projects, Tags, and SharingFree
Projects, tags, rates, and project members. Plus team-wide visibility on Pro and up, and audit logs on Business. The same data model serves a freelancer and a 50-person agency.

#The Model in One Paragraph

Timesheet's data model is intentionally flat:

  • A Project is the billable container. Each time entry lives on exactly one project.
  • A Tag is a cross-cutting label. Each time entry can carry several tags.
  • A Rate is a cost or billing multiplier. Each time entry can have one rate.
  • Project Members are users with access to a project (Pro plans and up).

There is no parent project, no sub-project, and no client entity. The trick is to use project names and tag taxonomies to fake a hierarchy where you need one. Done well, it scales further than nested projects do.

#Project Naming Conventions That Work

A consistent project name is the single biggest readability win. Three patterns to choose from:

#Pattern A: Client · Engagement

Acme · Website Redesign
Acme · Brand Refresh
Beta · Q2 Roadmap
Gamma · Annual Retainer

Works for: agencies and consultants with a small number of distinct engagements per client. Lets you filter "everything Acme" with a search prefix and "all Q2 work" with a tag.

#Pattern B: Client · Department · Engagement

Acme · Marketing · Website
Acme · Marketing · Brand
Acme · Product · API Integration
Beta · Finance · Audit Support

Works for: agencies serving multiple departments inside the same client. Lets you split invoices and reports by client department. The middle level becomes the second sort key in lists.

#Pattern C: Code · Client · Engagement

AC-W · Acme · Website
AC-B · Acme · Brand
BE-R · Beta · Roadmap

Works for: teams that already use a project code in their PM tool (Jira, Asana, ClickUp). The prefix makes search instant and the rest of the name stays readable.

Pick one pattern and stick to it. Mixing conventions wrecks search and report grouping.

#A Tag Taxonomy That Doesn't Devolve

Tags are easy to overgrow. The discipline is to define a small set of axes, decide what each axis represents, and never let tags from one axis blur into another.

#A Useful Three-Axis Taxonomy

  • Phase: Discovery, Design, Build, Launch, Support
  • Activity: Frontend, Backend, Copywriting, Meeting, Admin, QA
  • Billable Status: Billable, Non-Billable, Internal, Pro-Bono

Every entry should carry one tag from each axis it applies to. The result is consistent, filterable data.

#Tags vs Project Names

If a label changes how you bill, it usually belongs in the project name. If it changes how you look at billing across projects, it usually belongs in a tag.

QuestionAnswer
What rate applies?Belongs to the rate field, not a tag
Which client?Project name
Which department or engagement?Project name
What kind of work was it?Tag (Activity axis)
What phase of the engagement?Tag (Phase axis)
Billable or internal?Tag (Billable axis)

#Naming the Tags

Two pitfalls:

  • Avoid synonyms: Meeting, Call, Sync create the same problem. Pick one.
  • Avoid duplicates with different cases: Frontend and frontend will look identical and split your reports in half.

A tag glossary in a shared doc, six lines long, prevents both.

#Rates: Tied to the Project, the User, or Both

Timesheet rates can apply to a project (everyone's hours bill at the rate) or to a project member (this person bills at this rate inside this project). For agencies, the second case dominates.

A typical agency setup:

  • Strategist rate: 180 EUR/h, applies to the strategist on every project
  • Designer rate: 120 EUR/h, applies to designers on every project
  • Developer rate: 140 EUR/h, applies to developers on every project
  • Pro-Bono rate: 0 EUR/h, applies to anyone on a pro-bono project

Each time entry inherits the right rate without manual switching. For the full setup, see Bill Clients with Custom Rates.

#Project Members and Team Visibility

On Pro plans and up, projects can be shared with team members. Three patterns dominate:

#Pattern 1: Everyone Sees Everything

Each project lists every active user as a member. Useful for small agencies where any consultant could be pulled into any project. The downside is privacy and report noise; on larger teams, prefer one of the next two.

#Pattern 2: Project Leads Plus Contributors

Each project has one or two leads (full access) and three to five contributors (track time, see their own). This mirrors how most agencies actually staff a project.

#Pattern 3: Client Pods

Projects are grouped by client into a pod. The pod's members work on all that client's projects. New projects for an existing client inherit the pod's membership. This is the pattern that scales best past 20 people.

For more on the team side, see Collaborate with Your Team on Shared Projects.

#Archiving: The Discipline That Keeps the List Short

A project list with 300 active items is a list with 0 useful items.

Once a project ends, archive it. Archived projects:

  • Stay in the data (entries, reports, exports)
  • Disappear from project pickers, including the timer
  • Can be unarchived if the client comes back

#When to Archive

  • Engagement closes and the invoice is paid
  • Client retainer ends and is not renewed
  • Internal initiative completes
  • Pro-bono engagement finishes

A monthly archive sweep (last Friday of each month, 15 minutes) keeps the active list manageable.

#How to Archive

  1. Open the project in the web app
  2. Click the three-dot menu
  3. Pick Archive

The mobile apps respect the archive state and stop showing the project in their pickers automatically.

#Examples From Real Use

#A Solo Consultant With Eight Clients

  • One project per client, named Client · Retainer
  • Tags: Strategy, Implementation, Meeting, Admin
  • Rates: one project-level rate per client
  • Archive at end of engagement

Time to set up: 20 minutes. Time to maintain: 15 minutes per quarter.

#A Five-Person Agency With Twelve Clients and 30 Engagements

  • Projects named Client · Department · Engagement
  • Tags: 3-axis taxonomy (Phase, Activity, Billable)
  • Rates: per-user rates on each project (Designer/Developer/Strategist)
  • Members: 2-3 leads, 3-5 contributors per project
  • Archive: monthly sweep

Time to set up: 2 hours. Time to maintain: 30 minutes per month.

#A 40-Person Consulting Firm With 100 Active Engagements

  • Projects named Code · Client · Engagement aligned with Jira codes
  • Tags: 3-axis taxonomy, enforced by a tag glossary
  • Rates: per-user rates with seniority modifiers
  • Members: client-pod model with 6-12 users per pod
  • Archive: weekly sweep, plus audit logs on Business plan

Time to set up: a week of work for one operations lead. Time to maintain: 1 hour per week.

#Common Questions

Can I use folders or nested projects? Not directly. The model is intentionally flat. The naming conventions in this post are how to fake hierarchy without losing the speed of a flat list.

What about renaming a project after it's started? Safe. The project name is a label; renames do not affect existing entries. The new name appears everywhere immediately.

How do I migrate from another tool that has clients? Use Pattern A or B. The first segment of the project name plays the role of the client.

Can tags be required? Not directly. The discipline is human, helped by the tag glossary. Some teams use Chronis to nudge missing tags at end of day.

What's the limit on tags per entry? There is no fixed limit. In practice, three to five is the sweet spot; more and the report gets noisy.

#Summary

  • Timesheet uses Projects, Tags, Rates, and Members, no nested projects
  • A consistent naming convention is the single biggest scale lever
  • A small tag taxonomy with clear axes beats sprawling free-text tags
  • Rates per user per project save the most time once you cross five users
  • Archive aggressively; an active list of 30 items beats an active list of 300

#Where to Go Next

Ready to get started?

Download free on iOS and Android

How to Structure Projects for Agencies and Multi-Client Teams | Timesheet Blog | timesheet.io