Operations
May 25, 2026

Secure client portal permissions for service businesses

Marta Prunés
Content Marketing Manager at Noloco

Summarize with AI

Secure client portal permissions for service businesses

You set up a client portal. You spent a weekend configuring it, sent the login links, and felt like you had finally got things under control. Then, two weeks later, a client replies to a document link and mentions they can see another client's files. Or your account manager accidentally approves something they were never supposed to touch. Or a new junior hire logs in and has access to every project, every margin, every internal note.

None of these sound catastrophic at first, but in a service business, where client trust is the product, getting permissions wrong is expensive.

This guide explains why permissions break in most client portals, and walks you through how to design them so they hold up as your team and client list grows.

TL;DR

  • Most client portals were adapted from internal project management tools and handle permissions at the page level, not the field or record level. That is the root cause of most permission failures in service firms.
  • A proper permission structure controls what someone can do, which records they can access, and which fields they can actually see.
  • Approvals need their own permission logic, separate from standard read and write access.
  • If you are already on Airtable, you can add proper permission layers on top without migrating your data.
  • Noloco handles all of this without code, and without charging per external client seat.
  • See how Noloco handles permissions for service firms

Why do most client portals get permissions wrong?

An accounting firm, ten people, set up a client portal in an afternoon. They used the default roles the tool shipped with: admin for the directors, editor for the team, viewer for clients. Six weeks in, a client emailed to say they could see another firm's documents in the shared files tab: The viewer role was not filtered by client. Every viewer could see every record. The fix took three hours, but rebuilding the client's trust took longer.

That is not an unusual story.

Most tools were built for internal teams first. The client-facing layer was added later, usually as a feature, not a foundation. That matters because the permission model that works for internal users, where everyone broadly trusts each other and works on the same data, is completely different from the one you need when clients are in the system.

According to Verizon's 2024 Data Breach Investigations Report, 43% of cyberattacks target small businesses, specifically because smaller firms tend to have weaker access controls while still holding genuinely sensitive client data.

The risk is real, and it's not just an enterprise problem.

The second issue is structural. Most off-the-shelf portal tools give you three options: admin, editor, or viewer. That works fine when you have five people and two clients. It falls apart when you have fifteen people, twenty clients, and three different types of users who each need different access to different parts of the same record.

Here is what that looks like in practice. An account manager needs to see the project budget but should not be able to edit it. A client should see the project status but not the internal margin. A junior team member needs to update task notes but should not see the deliverable sign-off history.

Most firms end up doing one of two things: over-sharing or under-sharing.

If everyone gets too much access, sensitive information leaks into places it should not. If clients cannot see the information they actually need, they fall back to emailing your team for updates.

Both outcomes cost time. One of them can cost you a client.

What does a proper permission structure actually look like?

Most permission systems break because they try to solve everything with one role setting. In practice, there are three separate permission problems you need to handle.

Layer 1: Roles

A role defines what a type of user can do: submit a request, update a status, approve a deliverable, delete a record.

Roles are assigned to people, not individual records.

Layer 2: Record-level access

This controls whose data someone can see.

A client logged into your portal should only be able to retrieve records linked to their own company. Not because the other records are hidden behind a menu, but because the system never returns them in the first place.

Hiding data in the interface is not the same as securing it. Real security starts at the data layer.

Layer 3: Field-level visibility

Within a record someone is allowed to access, this controls which fields are visible to them.

Your internal margin field should not appear greyed out or locked in the client view. It simply should not appear at all.

Same record, different views, each showing only what that person needs.

Most portal tools handle basic roles reasonably well. Very few handle record-level filtering properly. Almost none handle field-level visibility without custom development.

In Noloco, all three layers are configurable without code through granular permissions. You set them up once, and they apply consistently across every record, every page, and every user in that role.

How do you design roles that actually match how your firm works?

The mistake most firms make is copying a generic role structure from the tool's documentation and trying to fit their team into it.

It rarely works, because how a ten-person consultancy operates is nothing like how a software company's internal team operates, which is what most of these tools were designed for.

Start from your actual org chart, not the tool's default settings. Ask:

  • who needs to see what?
  • what do they need to do with it?
  • what should they never have access to?

A useful starting point for most service firms is four roles: Client, account manager, project team, and director.

Client: Can submit requests, view their own project records and documents, and leave comments. Cannot see other clients, internal costs, or team notes. Cannot change any status field.

Account manager: Can see all records linked to their assigned clients. Can update status, add internal notes, assign tasks, and move requests through the pipeline. Cannot approve deliverables that require director sign-off. Cannot see firm-level financial data.

Team member: Can see the tasks and projects assigned to them. Can update task status and add delivery notes. Cannot see client contact details, billing records, or other team members' assignments.

Director or ops lead: Sees everything. Can approve or reject deliverables, adjust permissions, configure the system, and access financial and margin data.

This is a starting point, not a template. A legal firm will have different role constraints than a marketing agency. An accounting practice will need different field-level controls than a digital transformation consultancy.

The principle is simple: build roles around what each person actually needs to do their job, and nothing beyond that. The table below maps this out.

Role Can see Can do Cannot see or do
Client Their own projects, requests, documents, and status updates Submit requests, view status, leave comments, download approved documents Other clients' records, internal costs, team notes, margin fields, approval history
Account manager All records linked to their assigned clients; internal notes and delivery status Update status, assign tasks, add notes, move requests through the pipeline Firm-level financials, other account managers' client lists, director-only approvals
Team member Tasks and projects assigned to them; delivery notes for their work Update task status, add delivery notes, upload work files Client contact details, billing records, other team members' assignments, approval controls
Director / ops lead Everything: all clients, all projects, all financials, all team assignments Approve or reject deliverables, adjust permissions, access and export all data Nothing is restricted at this level

How do you handle permissions for approvals specifically?

Approvals are where generic permission systems tend to break down.

Most tools treat an approval as just another status update. Someone changes a field from “pending” to “approved.” But if anyone with edit access can make that change, your approval process is not really controlled. It is just a label.

A proper approval workflow works differently.

The ability to move a record into an approved state should be a separate permission assigned only to the people responsible for making that decision.

In practice, this means:

  • Your account manager can see that a deliverable is waiting for approval, but cannot approve it themselves.
  • Your client can see the final decision, but not the internal review process behind it.
  • Your delivery team can flag issues or request escalation without changing the approval outcome directly.

This is not just about security, but professionalism too.

A client who can watch your internal review process unfold in real time starts second-guessing the work before it is even finished.

In Noloco, approval actions are configured as workflow steps with permission conditions. A status field can be set so only certain roles can move it into specific states, while notifications automatically alert the next person in the process

What does compliance-ready actually mean for a service firm?

The global average cost of a data breach reached $4.88 million in 2024, with small businesses facing an average of $149,000 per incident when you factor in legal costs, notification requirements, and lost clients. GDPR fines alone can run up to 4% of annual turnover, which for a 20-person firm is not an abstract number.

Compliance-ready does not mean you need an enterprise security team.

For most service businesses, compliance-ready really comes down to four things:

A clear audit trail

Every status change, field edit, comment, and login should be logged with a timestamp and user history.

If a client disputes what was approved and when, you have a record.

Real data isolation

Client data should be filtered at the query level, not just hidden visually inside the interface.

Strong authentication

Any portal handling sensitive deliverables, contracts, or financial information should support multi-factor authentication.

Clear compliance documentation

If clients ask where their data is stored, who can access it, or how long it is retained, you should have a clear answer ready.

None of this requires an enterprise security team: it requires choosing a platform designed with these things in mind and configuring it properly from the start.

What if you are already on Airtable?

A lot of service firms are already on Airtable. They built their project trackers, client records, and delivery workflows there because they can share views and have everyhting centralized. But it is much harder to control exactly what different clients should see inside those views.

The good news is you do not need to migrate from Airtable to fix your situation. Your records stay in Airtable. Noloco adds the interface, the permission structure, the client portal, and the approval workflows on top.

Your team keeps working in Airtable the way they already do. Your clients log into a branded portal with properly scoped access.

This is often the fastest path from “our permissions are held together with hope” to a system that actually scales cleanly.

See how Noloco connects to Airtable.

How do you know when your current setup is about to break?

Permission failures rarely announce themselves. They build quietly until something eventually slips through.

These are the warning signs:

  • You manage access manually by sending different links to different people
  • Someone has to remember to revoke permissions when projects end
  • New hires inherit whatever default access the tool assigns
  • Clients have already seen something they were not supposed to
  • Account managers still forward updates manually because the portal does not show the right information

If three or more of these are already happening, the problem usually gets worse as the business grows, because every new client and every new team member adds another layer of access complexity to manage.

The second table below maps the common failure patterns against what the fix looks like.

What you are seeing What is actually broken The fix
Client sees another client's files or records Record-level access is not filtered by client ownership; data isolation is UI-only Filter records at the query level so each user only retrieves their own data
Team members can approve things they should not be able to Approval is treated as a status field edit, available to anyone with write access Restrict status transitions to specific roles; make approval a separate permission
Clients can see internal cost or margin fields Field-level visibility is not configured; the same view is shown to all roles Create separate views per role; hide sensitive fields from client-facing pages entirely
No record of who changed what or when The platform has no audit trail; changes are not logged Use a platform with built-in activity logging; make it a non-negotiable when evaluating tools
Access is manually managed per person, not per role No role structure; permissions are set individually and drift over time Define roles first, assign people to roles second; never manage permissions person by person
Offboarding a client or team member requires manual cleanup across multiple tools Access is fragmented across disconnected systems with no central control Centralise access management in one system; deactivating a user should remove access everywhere

Final thoughts

Permissions are the kind of thing nobody notices when they work properly.

When they fail, a client calls. Someone apologizes. Or your team loses half a day figuring out who changed what and why.

The firms that get this right are not the ones with the biggest IT budgets. They are the ones that designed the permission structure before inviting clients into the system.

Start with roles that match how your firm actually works. Add record-level filtering so clients only see their own data. Hide sensitive fields completely from client-facing views. Give approvals their own permission controls. Log every important action.

Done properly, permissions fade into the background. Clients only see what is relevant to them. Your team knows what they can edit, approve, or escalate. And nobody is manually managing access every time a project changes hands.

If your current portal is already showing cracks, the question is not whether to fix it. It is whether to keep patching the current setup or move to something built for this from the start. See how Noloco handles client portal permissions for service firms.

FAQ

Why do client portal permissions matter so much for service firms?
Because in a service business, your clients' data is sitting next to every other client's data in the same system. If permissions are misconfigured, one client can see another's files, a junior team member can approve a deliverable they were never supposed to touch, or a client can see your internal margin on their own project. None of those are just technical errors. They are trust problems. Permissions are the mechanism that keeps each person in their own lane.

Why do client portals fail at secure data permissions?
Most portal tools were designed for internal teams, where everyone broadly trusts each other and works on shared data. The client-facing layer was added later, and the permission model did not keep up. The result is a generic role structure (admin, editor, viewer) that cannot handle the nuance of a real service business, where different people need different access to different parts of the same record.

What is the difference between hiding data and actually securing it?
Hiding data means it does not appear in the interface, but it can still be retrieved if someone knows the right URL or manipulates the session. Securing it means the system only returns data the user is authorized to see, at the database level, before it ever reaches the screen. For a client portal, only the second approach is acceptable. UI-level hiding is a design decision. Database-level filtering is a security control.

Does GDPR apply to client portals for small service businesses?
Yes, if you are handling personal data belonging to individuals in the EU, GDPR applies regardless of your firm's size. The practical requirements for a service firm include knowing where client data is stored, being able to demonstrate who can access it, having a retention and deletion policy, and being able to respond to a subject access request. Your portal platform's compliance documentation is part of your evidence trail.

Can I add proper permissions to my existing Airtable setup?
Yes. If your data lives in Airtable, you do not need to migrate it. Noloco connects directly to your Airtable bases and adds a proper permission layer, branded client portal, and approval workflows on top. Your team keeps using Airtable. Your clients get a portal with properly scoped access. See how the Airtable integration works.

How do I know if my current portal permissions are good enough?
Ask yourself: does each client only see their own records, enforced at the data level rather than the UI level? Are internal cost and margin fields completely invisible in client-facing views? Can only specific roles approve deliverables? Is every change logged with a timestamp and a user name? If the answer to any of those is no or "I think so," your permissions have gaps.

Related resources

Ready to Transform Your Client Delivery?

Noloco is the Agency Operating System that helps growing B2B agencies run delivery, people, and client collaboration on one integrated platform. Build custom workflows, share professional branded portals, track profitability in real-time, and scale your systems as you grow—all without writing code.

Join agencies across North America and Europe who are winning more clients and improving margins by delivering like premium firms while eliminating manual work.

Get Started for Free

Author

Marta Prunés
Content Marketing Manager at Noloco

Your most common
questions—answered!

Who is Noloco best suited to?
+
-

Noloco is perfect for small to medium-sized businesses in non-technical industries like construction, manufacturing, and other operations-focused fields.

Do I need tech experience to use the platform?
+
-

Not at all! Noloco is designed especially for non-tech teams. Simply build your custom application using a drag-and-drop interface. No developers needed!

Is my data secure?
+
-

Absolutely! Security is very important to us. Our access control features let you limit who can see certain data, so only the right people can access sensitive information

Do you offer customer support?
+
-

Yes! We provide customer support through various channels—like chat, email, and help articles—to assist you in any way we can.

My business is growing fast—can Noloco keep up?
+
-

Definitely! Noloco makes it easy to tweak your app as your business grows, adapting to your changing workflows and needs.

Is there any training or support available to help my team get up to speed?
+
-

Yes! We offer tutorials, guides, and AI assistance to help you and your team learn how to use Noloco quickly.

Can I make changes to my app after it’s been created?
+
-

Of course! You can adjust your app whenever needed. Add new features, redesign the layout, or make any other changes you need—you’re in full control.

Ready to boost
your business?

Build your custom tool with Noloco