Pick where your data lives, point us at it, and score it against the DAMA data-quality dimensions. The run report, scores and failed records are saved and appear in History.
No data source matches that search.
Upload a spreadsheet (.xlsx / .xlsm) straight from your computer - no SharePoint or database needed. We read one worksheet (the first, or one you name), infer data-quality rules from it, and score it across the DAMA dimensions just like any other dataset. If your workbook has several tabs, pick which one to assess below.
Higher weight = the dimension counts more toward the overall score; 0 excludes it. Range 0–5; defaults shown.
Added on top of the auto-detected rules, so nothing else is lost. Leave empty to skip.
A column and its full set of allowed values - anything outside the list counts as inaccurate.
A column whose values must exist in a reference file - upload the reference and it's stored with this run.
Point us at a Redshift table. Via the Data API and a cross-account IAM role, the assessment runs as SQL inside Redshift - only aggregate results (and up to 50 sample failing rows per check) come back. Your data is never copied out, and full tables are profiled (no 100k sampling cap).
Qlik Open Lakehouse? If this engine already reads your Iceberg tables as an external schema over the Glue catalog, point the Table field at one and it is assessed in place like any other. Otherwise use the Qlik Open Lakehouse source, which reads the Glue catalog directly.
Point us at a single object (Parquet, CSV, JSON/NDJSON or QVD). A same-account bucket needs only the URI; a cross-account bucket needs a role ARN or read-only access keys.
Score an Apache Iceberg table where it already lives. Qlik Open Lakehouse writes Iceberg into your own object storage and registers it in a catalog (usually AWS Glue); this reads it through Amazon Athena, so checks push down as SQL and no data is copied. Works against any Glue-catalogued Iceberg lakehouse, not only Qlik's.
There is no password: Athena authenticates with IAM. Supply a role to assume only if the lakehouse lives in another AWS account.
Read a Snowflake table with a read-only role. Checks push down as SQL so only results return.
Qlik Open Lakehouse? If this engine already reads your Iceberg tables as an Iceberg table with an external catalog, point the Table field at one and it is assessed in place like any other. Otherwise use the Qlik Open Lakehouse source, which reads the Glue catalog directly.
Read a Unity Catalog / SQL-warehouse table via a personal access token.
Qlik Open Lakehouse? If this engine already reads your Iceberg tables as a Unity Catalog foreign/Iceberg table, point the Table field at one and it is assessed in place like any other. Otherwise use the Qlik Open Lakehouse source, which reads the Glue catalog directly.
Read an Oracle table or view with a read-only user. Checks push down as SQL so only counts and a capped sample of failing rows return. The listener must be reachable from our worker.
Oracle stores unquoted names in upper case, so hr.employees
and HR.EMPLOYEES both work. Note that Oracle treats an empty string as NULL,
so a blank cell is counted as missing by Completeness.
A parquet or CSV file on a share only your own network can see. The agent opens it where it sits and sends back the scores - the file itself never leaves. It must be inside a folder that machine was told to allow when its service was installed, or the agent refuses the run and says which folders it may read.
The full path as that machine sees
it, drive and all. Forward or back slashes both work, and case does not
matter.
It has to sit inside a folder that machine allows. The two go together:
dq-agent-service.cmd INSTALL "C:\data" is run once on the machine, and
then C:\data\sales\sales.parquet goes here. A folder covers everything
beneath it. For a network share prefer \\fs01\finance\sales.parquet over a
mapped drive letter, which a service often cannot see.
Parquet and CSV are assessed in place on that machine, so their
size is not really a limit.
Read a Postgres table with a read-only user. The endpoint must be reachable from our worker, or from an on-premises agent you run inside your own network.
Read a MySQL table with a read-only user. In MySQL the database is the schema. The endpoint must be reachable from our worker.
Read a SQL Server or Azure SQL table with a read-only login. The endpoint must be reachable from our worker, or from an on-premises agent you run inside your own network. Note: T-SQL has no regex before SQL Server 2025, so pattern/format validity checks are skipped - every other DAMA dimension is assessed in full.
Read a table from a Fabric Warehouse or Lakehouse through its SQL analytics endpoint. Sign in with a SQL login or an Entra service principal - whichever your tenant allows; many disable SQL logins entirely. Fabric speaks T-SQL, so - as with SQL Server and Synapse - pattern/format validity checks are skipped rather than approximated, and are not scored as passing; every other DAMA dimension is assessed in full.
Read a table from an Azure Synapse dedicated SQL pool with a read-only SQL login. The host is your workspace SQL endpoint (<workspace>.sql.azuresynapse.net), reachable from our worker. Synapse speaks T-SQL, so - as with SQL Server - pattern/format validity checks are skipped; every other DAMA dimension is assessed in full.
Assess a BigQuery table in place via SQL pushdown. Authenticate with a service-account key JSON that has BigQuery Data Viewer + BigQuery Job User on the project. The key is applied server-side and never stored in the browser.
Qlik Open Lakehouse? If this engine already reads your Iceberg tables as a BigLake Iceberg table, point the Table field at one and it is assessed in place like any other. Otherwise use the Qlik Open Lakehouse source, which reads the Glue catalog directly.
Assess a file (Excel / CSV / …) stored in SharePoint or OneDrive. Our worker fetches it via Microsoft Graph using an Entra app registration (app-only). Your IT admin needs to register an app with Graph Sites.Read.All + Files.Read.All (admin-consented) and a client secret. The secret is applied server-side and never stored in the browser.
Assess a file (Parquet / CSV / JSON / Excel / …) stored in a Google Cloud Storage bucket. Our worker downloads the object using a service-account key with read access (Storage Object Viewer on the bucket). The key is applied server-side and never stored in the browser.
Assess a file (Parquet / CSV / JSON / Excel / …) stored in Azure Blob Storage or ADLS Gen2. Our worker downloads the blob using a storage connection string (it carries the account name + key - the single complete credential). It is applied server-side and never stored in the browser.
Added on top of the auto-detected rules for this run - leave empty to skip. Lights up the Accuracy and Referential Integrity dimensions.
Assess a database, or a file, that is not reachable from the internet. The customer runs a small Windows service on a machine inside their own network; it polls us for work, runs the assessment locally, and sends back the scores. Nothing inbound is opened, and the database password stays on that machine rather than with us.
A key lets a pipeline or a script call the API as you. It can see and do exactly what you can, in your organisation only, and if your access changes, so does the key's. Every key expires, and you can revoke one at any time.
Name it after what will use it, so you know which one to revoke later. The key is shown once, when you create it.
As an admin you can see and revoke any key in your organisation. You never see the key itself: nobody can, once it has been created.
Your portal account details.
Connect to our MCP from an AI assistant (such as Claude or ChatGPT), then just ask - “what’s the latest score for orders?”, “which datasets are failing their gate?”, “any open incidents and how do I fix them?”
Add this as a custom connector / MCP server in your assistant.
-
Generate a one-time code, then paste it into the sign-in page your assistant opens. The connection is limited to this app - it can never see another app or another Qlik tenant.
Your assistant will open a sign-in page. Log in with the same portal account you use here. The connection is limited to your organisation, and it inherits your role - so it can only do what you can do in this UI.
How to do everything in Data Assurance, step by step. Search for what you need, or browse with the arrows, then open a guide to read it below.
What this platform is for, in one page.
Data Quality • Governance • ComplianceOur mission
Most data-quality, governance and compliance tools grade a sample and call it green. We score every row, at the source - and we’re honest about what we can and can’t prove.
Our platform doesn’t just check if data looks good - it inspects it, validates it, and gives you the full picture, so you can trust the results and take action with confidence.
Quality tools typically profile a few thousand rows and extrapolate. On a million-row table that green score can hide thousands of broken records - and you only find out when a report is wrong, a regulator asks, or a customer complains.
Worse, quality is usually measured after data has been copied and reshaped, so what gets graded is the pipeline’s output rather than the data you actually own.
Assessment is pushed down into the warehouse, so the whole table is scored where it already lives - no extracts, no copies, no data movement. You get exact failing-row counts instead of estimates, the records that failed, and a plain-English reason for each. Dimensions we cannot legitimately evidence from your data are marked not assessed and excluded from the score, never quietly counted as full marks.
Evidence based. Transparent. Actionable.
How it all fits together
Evidence toward compliance, not a certification. Scores describe what the data can demonstrate - where something isn’t assessable, we say so rather than guess.
Every assessment you've run, full-app health checks and individual dataset runs. Open any run to see its full report.
Assessments where every table in the app was selected, grouped by run. Click a run to see each table's result.
Loading…
Loading…
Recurring quality alerts, grouped into tracked issues, opened when a dataset first breaches its expected range, recovered when it returns to normal.
Configure how and when you receive incident notifications.
Post this app's failures (opened incidents, recoveries, staleness) to a chat channel - each message shows the app, dataset, score, reasons, owner, and a link. Paste an incoming-webhook URL from Slack, or a Workflows URL from Teams. Point multiple apps at the same webhook to share one channel.
Loading…
Where this app's data comes from (upstream sources) and what depends on it (downstream), traced from Qlik. Cached for 24h; use Refresh to re-pull.
Loading…
Loading…
Monitor the freshness and availability of your data sources. Each source is checked between assessments to make sure its data is still loading and can be reached, without reading the data itself.
A live view of every source and its state. Hover over a blip for its details.
Loading…
Not checked yet.
Each source is checked to see that it is still loading, in between assessments. Metadata only: the row count, the column list and the newest record's timestamp. No rows are read and no score is produced, so this is a light check you can run often, every hour for example.
A finding here becomes a tracked incident, with the same email, Slack/Teams and acknowledge/snooze behaviour as a quality alert. Source findings and quality findings are kept separate: neither resolves the other.
Checks run on a cadence you set with a Source monitoring only schedule.
Privacy & regulatory-risk posture across this app's datasets, anchored on the ISO/IEC 29100 privacy principles with GDPR & PCI DSS citations.
Monitor this app's data quality over time - overall scores, per-dimension health and trends across every assessed table.
Loading…
Sorted by lowest score first. Click a dataset for its trends.
Loading…
Assessment runs that members have submitted for review. Approve to endorse the dataset, or reject it as Caution or Deprecated. Scoped to your organisation.
Loading…
Do these two agree? Pick any two datasets and they are compared where they live: which rows carried over, which changed, which went missing, and where the lost ones were loaded. Datasets staged as bronze, silver and gold come ready-paired.
The app's tables, fields and how they associate. The same model Qlik loads. Drag tables to explore; click a field to trace where it's shared.
Drag tables to arrange (layout is saved). Click a field to trace it across tables; click a table header to preview its data.
Automate this app's quality checks, run an assessment on a recurring schedule so scores, trends and incidents stay up to date without manual runs.
Loading…
The connection details are stored with the schedule so it can run unattended - prefer a role or Secrets Manager ARN over raw passwords/keys where the source allows it.
Assesses every source dataset carrying this tag in one task. Membership is captured when you save (re-save to refresh it). Datasets need a saved credential profile.
Checks whether your sources are still loading, without assessing anything. Each check reads only catalog metadata: the row count, the column list, and the newest value of the dataset's event-time column. No rows are read and no score is produced, so this is cheap enough to run hourly against a table you assess weekly.
It alerts on a source that has stopped loading, lost rows, changed columns, or become unreachable. Alerts go to the dataset owner (or your organisation's alert recipients), like any other incident.
Changes apply straight away. Active filters also appear next to the Filters button.
Pick the tables this schedule assesses. Select none to assess every table in the app.
Select a tag to see every dataset carrying it. Run them together in one task, run any one on its own, and read the history of previous runs below.
One click - assesses every table in the app's data model. Best for a full health check, and it lands under History → Full app assessments.
List the tables and pick just the ones you want - useful when you only care about a few.
Want these checks to run automatically? Schedule recurring checks →
Tick a table, then shift-click another to select everything in between.