Blog · Published · Updated
Company knowledge with sources: how the workflow works
Short answer
Permission-aware RAG checks access before the model sees a document: the search filters by the employee's groups, and PostgreSQL enforces the row access rule again. At Syntalith an AI application on company documents costs from €3,000 net. At 400 questions a month that each take 10 minutes of searching, it pays back in 1.5 months.
How we workDetails ↓
- 01Call30 minutes with an engineer, free
- 02PrototypeA working system on your process and data, free
- 03ImplementationTarget and fixed price in the contract; 50% at signing
- 04Acceptance50% once the agreed target is met
- net per application, fixed price before contract
- from €3,000
- from signing the contract to acceptance
- 4–10 weeks
- free prototype on your documents
- €0
We belong to the OpenAI and Anthropic partner programmes and learn through their official courses. What this means ↓
Author: Syntalith · 3 min read
Statistics
AI knowledge bases: statistics 2026
1.5 mo.
payback of a €3,000 application at 400 questions a month: €2,327 of searching today, €355 with the application. Scenario.
750
According to a test of the Syntalith demonstrator (2026), 750 question and identity pairs on 600 test documents gave no answer or source outside the asker's permissions.
Source: Syntalith, company memory with permissions demonstrator (2026) ↗
0.511
According to a test of the Syntalith demonstrator (2026), questions worded differently from the document found the right source at a rate of 0.511 across 45 pairs, with simple ranking and no embedding model.
Source: Syntalith, company memory with permissions demonstrator (2026) ↗
48.8%
According to Eurostat (2025), 48.8% of EU enterprises that considered AI but did not use it named concerns about data protection and privacy.
49%
According to Anthropic (2024), combining contextual embeddings with BM25 search cut failed retrievals by 49%, and by 67% with reranking.
Figures checked: 22 October 2026
The same company, two people, different access
An employee looks for the current leave procedure. The folder holds two versions, and some documents belong to HR alone. A manager from HR and a specialist from the warehouse ask the same question and should get different answers, each with sources that person can open.
The most common mistake when building such a search is hiding the citation only on screen. By then the model has read the closed document, and its content could shape the answer even if the link never appeared. The check has to run before the answer is generated, and the refusal has to read the same whether the closed document exists or not.
- 01Identitythe employee's groups taken from the session, from one source of truth
- 02Searcha query limited to the documents of those groups
- 03Databasethe RLS policy in PostgreSQL checks every row again
- 04Versionan outdated document and conflicting sources are separate states
- 05Answeronly from passages that passed both checks, or a refusal
What it costs and when it pays back
- Today
- 400 questions × 10 min = 66.7 h (€2,327)
- With the system, a person checks the output in 15% of the time
- €349
- Model, 1 call per case, Claude Sonnet 5.5
- €6
- Cost of one case
- €5.82 today, €0.89 with the system
- Saving
- €1,972 a month
Payback of €3,000
1.5 months
The volume, the time and the checking share are the scenario's assumptions. €34.90 an hour is the EU average hourly labour cost for 2025 according to Eurostat. Model: 6,000 input tokens and 500 output tokens per call at Anthropic's rates, at the ECB rate of 1.1205 USD per euro on 22 October 2026.
The model is a small item here. The result depends on the time that searching and asking around takes today, and on how much of it remains for checking the answer.
Before we quote a build, we run a test on 20 to 100 questions the team has already asked: we compare the application's answer with what an employee found by hand, and we count the time from question to source. The test takes 5 working days and costs €0.
What our demonstrator showed
In the demonstrator, with 600 test documents and five fictional accounts, we checked 750 question and identity pairs: no answer or source went outside the asker's permissions. A separate test measured accuracy. Questions worded differently from the document found the right source at a rate of 0.511 across 45 pairs, because simple ranking recognises synonyms poorly. The lesson for a rollout: access control and search quality are two different tests, and the second needs a good embedding model chosen for the company's vocabulary. The mechanism is described in the PostgreSQL documentation: once RLS is on, a table with no policy returns no rows, but the table owner and roles with the BYPASSRLS attribute skip the rules. So the application connects to the database through a separate role without those rights.
One team and a controlled folder
a test of 750 pairs on your groups
5 working days
Questions in people's own words, and access removed after a role change
accuracy and access results reported separately
a decision on the build
Groups from the company's identity system, versions, document owners
a search in the company's environment
from €3,000
Where to start
Before a pilot, prepare documents with their owners and versions, the employees' groups and permissions, and a few dozen questions with the correct sources. Also check whether removing a permission changes the result from the very next question, as described in the article on a knowledge base after permission changes. The demonstrator's screens are on the page about company memory with permissions, and we run the build as part of AI applications.
For the first call, one question that keeps coming back to colleagues and a note on where the team looks for the answer are enough. You do not need to send confidential documents, and you get a written plan within 2 working days.
Worked example · Scenario
How we count the payback: answers from company documents
We run the same count for your documents in the free analysis.
€3,723
a month for finding answers to 800 questions in documents
Payback: 1 mo.
Our assumptions are 8 minutes to find an answer in documents or ask a colleague, and checking in 15% of the old time. €34.90 an hour is the EU average hourly labour cost for 2025 according to Eurostat, for companies with 10 or more employees. Model cost: Claude Sonnet 5.5, about 6,000 + 500 tokens per answer from documents, at the ECB rate of 1.1205 USD per euro on 22 October 2026.
See the full calculation →