Skip to Content
← All references Client · Mojo Brands
Creative agency Portugal 2 months  In progress

From briefing to billing.
One agency OS.

Mojo Brands is a Portuguese creative agency that runs on briefings, deadlines, and tight margins. We're rebuilding their entire operating stack on Odoo - CRM, quoting, projects, timesheets, billing, connected end-to-end. Goal: real-time project profitability, by the end of week 8.

Industry
Creative agency
Setup
Full scope
Project length
8 weeks 
Status
● Implementation in progress
— The starting point

Where Mojo stood,
and where they're heading.

⚠ The challenge

An award-winning agency, running on Excel and intuition.

  • Pipeline scattered across spreadsheets, emails, and a couple of notion boards.
  • Quotes built manually in Word/PDF — no margin matrix, no real cost basis, no template reuse.
  • Project profitability only visible at end-of-month, sometimes end-of-project.
  • Timesheets disconnected from invoicing — billable hours leaking every week.
  • Briefing → quote → project → invoice = 4 manual handoffs, every time.
✓ The build

An end-to-end Odoo backbone, deployed in 8 weeks.

  • Two pipelines (Clientes + Prospeção) with structured stages from Briefing recebido to Won.
  • Quote Calculator: margin-aware quoting with real hourly costs and resource matrix.
  • Auto Sales → Project conversion. Each Won deal opens a project with its analytic account.
  • Live cost tracking: Purchase, Timesheets, Expenses — all aggregated in analytic accounting.
  • Real-time profitability dashboards. Week 1 of the project. Not month 6.
— The build

8 phases. 8 weeks. 

A Proof of Concept methodology - start with 2 users (1 Mainsail consultant + 1 Mojo key user), measure real profitability with pilot project data, then scale. No 12-month roadmaps. No half-baked deliveries.

1
Week 1 · Setup

Foundation, hierarchies, real hourly costs

Data model audit. Departmental hierarchies. Real hourly costs computed per role (not budget-line averages). CRM pipeline configuration: 2 pipelines, structured stages, sub-statuses (extra, Lost, Reach again, revision).

CRMAccounting
2
Week 2 · Sales NEW

Quotation Builder + Quote Calculator

A quote engine with a built-in margin matrix: contribution margin = (sales price − theoretical cost) ÷ sales price. The Quote Calculator lets account managers test price scenarios, swap resources, and see margin impact in real time — before sending the proposal.

SalesQuote Calculator
3
Week 3 · Purchase

Subcontracting + external costs, linked to projects

Freelance illustrators, video production houses, print shops — every external PO linked to its project line. Margin and external cost tracked on the same record. No more lost POs.

Purchase
4
Week 4 · Project

Sales → Project, automatic

When a quote is Won, an Odoo Project opens with its analytic account, default tasks, milestones, and a Discuss/Documents hub. Briefing files attached, brand guides versioned, all in one place. Manual tasks supported alongside auto-generated ones.

ProjectDocuments
5
Week 5 · Timesheets + Planning

Hours and capacity, in the same view

Mobile timesheets per project & phase. Planning shows who's free, who's overbooked, who needs to backfill. Billable vs non-billable separated. Hours flow straight into invoices on T&M projects.

TimesheetsPlanning
6
Week 6 · Expenses

Expenses linked to projects, end-to-end

Photoshoot meals, taxis to client meetings, software licenses bought for a specific brand — every expense tagged to its project at submission. No spreadsheet reconciliation at month-end.

Expenses
7
Week 7 · Practice round

End-to-end run on a pilot project

Pick one live brief, run it through the whole stack: CRM → Quote Calculator → Won → Project → Timesheets → Invoice. Document gaps. Train management on dashboards. Adjust before go-live.

CRMSalesProject
8
Week 8 · Go-live

Daily presence, audit, planning beyond PoC

Daily on-call during the first week of live use. End-of-PoC audit: what worked, what to expand. Planning for scaling beyond the initial 2 users — onboarding the rest of the team, additional Odoo modules.

ProjectAnalytical Accounting
— Going further

Layering an AI agent on top.

Once the ERP backbone is live, we plug Odoo's native AI agent into the same database. No integration project, no separate vendor - the agent reads and writes the same records the team uses every day. For a creative agency, that turns the ERP from "system of record" into "system of action".

01 · Briefing → quote, instantly

The agent drafts the proposal.

A briefing email or PDF arrives. The agent reads it, surfaces 2-3 similar past projects, drafts a quote skeleton with hours, team and price — ready for the account manager to refine.

Recebi um briefing de rebranding da X. Esboça uma proposta com base nos projetos Y e Z, mantendo a margem em 35%.
02 · Margin guardrails

Catch overruns at 80%, not 100%.

The agent watches actual hours and external costs against the Quote Calculator estimate. Alerts the project lead — and only the project lead — before the margin disappears.

O projeto Lisboa Tower passou os 80% das horas estimadas e ainda restam 3 milestones. Alertar a Filipa?
03 · Auto status reports

Weekly client updates, on Friday morning.

The agent compiles project progress, milestones reached, blockers, and drafts a client-facing status update — in PT, EN or whatever the client speaks.

Sexta-feira 9h: gera um status update em PT para todos os projetos da Filipa. Tom profissional mas humano.
04 · Knowledge that compounds

Every past brief, searchable.

Briefings, mood boards, won quotes, lost quotes, post-mortems — all indexed. The agent surfaces relevant past work the moment a new brief lands.

Mostra-me os 3 projetos de packaging mais próximos deste briefing. Inclui margens reais e tempo real gasto.
Built on Odoo 19's native AI agent - pluggable LLM (OpenAI / Anthropic / Gemini), custom system prompts per role, knowledge sources from your own Documents app. Multilingual out of the box. PT, EN and FR - same agent, same database.
— Projected outcome

What week 8 will look like.

Goals defined upfront with the Mojo team. Each one tied to a concrete dashboard or workflow that didn't exist before.

Implementation in progress. The numbers below are the targets we agreed with Mojo's leadership at kick-off - we'll update this page with measured outcomes once the PoC closes.
8weeks
Audit to go-live
No timeline 8-week PoC
100%
Live project profitability
End-of-month reports Live dashboards
0spreadsheets
In daily operations
Excel everywhere One ERP

Ready to ship Odoo?

30 minutes. No commitment. Just answers. We tell you, candidly, how Odoo fits your agency (or doesn't).