There are many different ways to structure an agency and its processes—what works for us may not work for others. It might be useful if I outline a little about how we work to get a sense of the perspective from which I’m writing.
Historically we have billed our clients on an hourly time-and-materials basis. Invoices include a line item for every time someone worked for the client that month and a note about the nature of the work. This model is being strained by an increased amount of strategy and marketing work we’re doing, as well as development projects in which the team is following an agile methodology and billing by the week or month. Over the last 6-12 months we have shifted how we sell to flat-fees built around agile sprints. Expenses and media are pass-through for the most part.
We have about twenty people on the team; two are full-time remote out of Portland, and the rest are in-office in Jacksonville. Paid-time off (PTO) is accrued every pay period and includes one bucket for all types of leave. We have flexible scheduling, which isn’t tracked on its own.
Our core stack is currently JIRA, Harvest, Slack, G Suite (Gmail, Docs, Calendar, etc), Basecamp, and Confluence. We use a host of other tools which are noted in the list below.