stacktr.ee
By · Founder, Stacktree Last updated

Client spaces

A client portal your client will actually open.

Portal software fails at one step: the client has to log in, and mostly they do not. A client space is the same idea with that step removed. One address on your domain, everything you have delivered sitting behind it, and a passcode they type once.

No account for your client · Clients are never seats · Grouping is free on every plan

What is a client space?

A client space is one client’s work at one permanent address on your own domain, such as acme.youragency.com. Every page you publish for that client collects there, newest first, and the address never changes for the life of the relationship. Your client opens it in a browser and, if you have set a passcode, types it once. There is no account to create, no invite to accept and no seat to pay for. Grouping work by client is free on every plan; giving a client their own address starts on Solo, which includes one space.

The step that kills portals

Ask around and the complaint about client portals is never that the software lacked a feature. It is that the client never used it. You configure the modules, brand the login screen, send the invite, and the client opens it once during onboarding. After that every “it’s in the portal” comes back as “can you just email it”. You bought software for your client, and your client declined to become its user.

The category’s own advice about this is telling: put something the client cannot get any other way behind the login, so they are forced to go in. That is a workaround for a design problem, and the design problem is the login.

The same job, minus the account

Take the login out and most of what the portal was doing survives intact:

  • One address, permanently. acme.youragency.com goes in the client’s bookmarks once. It still opens next quarter.
  • The work accumulates. Each deliverable you publish for that client appears in the ledger, newest first, with the date. Six months in, the address is a record of the engagement rather than a folder.
  • One gate for the whole area. Put a passcode on the space, or restrict it to the client’s company email domain, and every page under that address inherits it. They authenticate once and stay in for thirty days.
  • Your name on it. Your domain in the address bar and nothing of ours on the page. Even the passcode prompt is a plain page rather than the browser’s grey credential box.

What does not survive is the part they were never going to use anyway: the account, the invite, the password reset, and the per-seat line on your invoice.

What the address actually looks like

One hostname per client. The portal sits at the root; every deliverable gets its own path underneath it.

acme.youragency.com

The portal. Everything delivered for this client, newest first, with dates. This is the link you give them once.

acme.youragency.com/june-report

A deliverable at its own path. Send it directly when you want to point at one thing, and it still lives in the ledger above.

acme.youragency.com/brand-audit

The next one. Publishing adds it to the portal; you do not maintain an index by hand.

Verify youragency.com once and add a single wildcard CNAME, and every client hostname after that skips the DNS step entirely. The tenth client takes no longer to set up than the second.

Setting one up

  1. Publish something for a client. Pick the client when you publish, or pass client: "Acme" from an agent. The space is created on first use, so there is no setup call and nothing to configure first.
  2. Point a subdomain at it. Add acme.youragency.com in the dashboard and add the DNS record it shows you. Under a verified parent domain there is no per-client DNS at all.
  3. Switch the portal on and set the passcode. The portal generates itself from what you have published, and regenerates whenever you publish again. The passcode covers everything at that address.

If you work through an agent, steps one and three are the only ones it needs to know about: Claude Code, Codex, Cursor and any other MCP client can publish straight into a client space and read back what is already there. The MCP tool surface has the detail.

What this is not

Client spaces deliver work. They do not collect files from the client, hold contracts for signature, or take payment. If your engagement needs two-way document exchange, e-signatures or invoicing in the same place as the work, a portal suite is the right machinery and you should buy one without guilt. Plenty of practices run both: the suite for paperwork, a client space for the work itself, because the deliverable deserves better than a PDF in a filing cabinet the client avoids. We have written up when a portal suite is worth it honestly.

What it costs

Filing pages under a client is free on every plan, including Free, because grouping your own work should not be a paid feature. What a paid plan buys is the address: Solo at $19 a month includes one activated client space, Studio at $79 includes ten and Firm at $249 is unlimited. A space counts as activated once it has a hostname bound or its portal switched on, and archiving one gives the slot back. Clients are never seats, so a space costs the same whether one person opens it or nine do. Full numbers on the pricing page.

FAQ

Frequent questions

Does my client need an account or a login? +
No. They open the address in any browser. If you have put a passcode on the space they type it once, and that browser stays open to the whole client area for thirty days. There is no invite to accept, no password to reset, and no seat to pay for. This is the whole point: portal software mostly fails at the login step, not the feature list.
What is the difference between a client space and a custom domain? +
A custom domain points at one page. A client space is a client: it holds every page you publish for them, serves a portal at the root of its own hostname, and carries one gate that all of those pages inherit. They are counted separately: Solo includes one of each, and Studio includes ten client spaces and ten custom domains. A space hostname does not consume one of your domain slots.
Do I have to set a space up before I can publish? +
No, and this is deliberate. Publish with a client name and the space is created on first use. From an agent that is one call: publish the HTML with client: "Acme" and the page files itself. Grouping your work by client is free on every plan, including Free. The paid part is the address: binding a hostname or switching the portal on.
What happens to the client's link when the engagement ends? +
Nothing breaks. Archiving a space frees the plan slot but every page keeps serving, so a bookmark from eight months ago still opens. Deleting a space removes the space and its portal; the pages detach and keep their own URLs. Deleting a client's space never deletes the client's work.
Can I use my own branding on the portal? +
The address is yours and nothing of ours appears on the page: no footer, no "powered by", and the passcode prompt is a plain page rather than the browser's credential dialog. Applying your logo, typeface and colours across every page is a separate feature that is being built and is not available yet, so the portal today is a clean, neutral layout under your domain.
How much does it cost? +
Filing work under a client is free on every plan. Activated spaces, meaning a space with a hostname bound or a portal switched on, are one on Solo at $19 a month, ten on Studio at $79 and unlimited on Firm at $249. Clients are never seats, so a space costs the same whether one person at the client opens it or nine do. Full detail on the pricing page.
Keep reading

Related guides

Give your next client an address, not an attachment.

Start free and group your work by client today. Solo at $19 a month adds the client’s own hostname, the portal, and one passcode across the lot.

Start free