Uploading and managing visualization extensions
Extensions add custom visualization capabilities to Qlik Cloud applications. You can upload and manage extensions in the Administration activity center.
Using extensions
Visualization extensions in Qlik Cloud add new visual components beyond the standard visualizations. Use them to tailor how you present and explore data.
For more information, see Qlik Developer: Extending Qlik. For a visual demo, see Using third-party visualization extensions in Qlik Cloud and Extensions and API keys.
Required roles
To upload and manage extensions, you must have one of the following roles:
-
Tenant administrator
-
Analytics administrator
-
Custom role with the Manage extensions permission set to Allowed
File requirements and limits
Follow these rules to ensure your extension uploads and works correctly.
File limits
Extension ZIP files have these limits:
-
Maximum ZIP file size: 30 MB
-
Maximum size for any single file in the ZIP: 30 MB
-
Maximum number of files in the ZIP: 500
-
Maximum total uncompressed size: 100 MB
Required base files for an extension
Ensure your extension ZIP file includes the following files:
-
.qext: Metadata file
-
.js: JavaScript code
-
.html: HTML rendering code
-
.css: Custom styling
File naming rules
Each file in the extension must have a file name and a file extension. Files that do not comply are ignored. Examples of ignored files include .gitignore and README.
Best practices
-
Minify your code files.
-
Include only the files your extension needs to run.
-
Review the extension and its code before you upload it.
External resources and CSP
Host image files externally
Do not include image files (such as GIF, PNG, JPG) in the extension ZIP file. Instead, host images externally (for example, on an application server, an S3 bucket, or a public content management system), and reference them from your extension code.
Reference external code and content
To reference external code or content in your extension, configure a tenant Content Security Policy (CSP) and allowlist the external origins your extension needs to access.
If an origin is not allowlisted, your extension will not render.
For more information, see Managing Content Security Policy (CSP).
Unsupported file formats
For security reasons, extensions can't include files with disallowed MIME types. MIME types (Multipurpose Internet Mail Extensions) indicate a file's format. If your extension contains a disallowed MIME type (for example, an executable file or a ZIP file), the upload fails.
The following MIME types are not allowed:
- 'application/octet-stream'
- 'application/x-coredump'
- 'application/x-dosexec'
- 'application/x-executable'
- 'application/x-java-applet'
- 'application/x-object'
- 'application/x-sharedlib'
- 'application/zip'
- 'text/x-shellscript'
- 'text/x-awk'
- 'text/x-gawk'
- 'text/x-msdos-batch'
- 'text/x-nawk'
- 'text/x-php'
Unsupported features
The following features are not supported:
-
Bundled extensions: ZIP files containing other extension ZIP files are not supported.
-
QVF and QVD files: These files are not accessible from the extension service.
To upload QVF or QVD files, use one of the following methods:
-
Upload an application from the Create page in the Analyticsactivity center.
-
Upload an application by using qlik-cli.
-
Upload a QVD from the Create page in the Analytics activity center.
-
Upload a QVD by using Qlik DataTransfer.
Managing extensions
Extensions are managed on the Extensions page in the Administration activity center.
Extensions table information
-
Name: Metadata name in the QEXT file
-
QEXT version: Metadata version
-
QEXT filename: Unique identifier for the extension definition file
-
Status: Migration status (temporary)
About migration status
Qlik is improving how the platform handles extensions. During this transition, existing extensions are moved to a new service. The migration status column is temporary and appears only while this work is in progress.
As of 2025-11-17, any extension you upload or access uses the new service automatically. If your extension is in regular use, no action is required.
Most extensions migrate automatically when they are used. Extensions that you have not used recently may need to be queued manually to be included in a scheduled migration run. To protect customer-owned content, Qlik does not migrate extensions unless they are accessed or you confirm the migration. If you want to keep an unused extension (status Not migrated) available, you can migrate it manually.
Migration status values:
-
Not migrated: The extension has not been migrated.
-
Queued for migration: The extension has been queued and will migrate during the next scheduled migration run.
-
Migration in progress: The extension is currently being migrated.
-
Migrated: The extension has been successfully migrated.
Migration also applies to themes. For details, see Uploading and managing themes.
Adding extensions
Do the following:
- In the Administration activity center, go to Extensions.
-
Click Add.
-
Click Browse to select an extension file, or drop a file in the designated area.
-
Optionally, add tags.
-
Click Publish.
Editing extensions
Do the following:
- In the Administration activity center, go to Extensions.
-
On the extension you want to edit, click
and select Edit.
-
Use the editing panel to replace the extension or update tags.
-
Save your changes.
Downloading extensions
Use this to back up an extension before editing it or to move it to another tenant.
Do the following:
- In the Administration activity center, go to Extensions.
-
On the extension you want to download, click
and select Download.
-
Save the ZIP file.
Migrating extensions
Use the following steps to migrate extensions with Not migrated status.
Do the following:
- In the Administration activity center, go to Extensions.
-
On the extension you want to migrate, click
and select Migrate.
The status updates as the migration progresses: Queued for migration, Migration in progress, and finally Migrated.
Deleting extensions
Deletion of extensions can impact all resources, affecting all users within the tenant.
Do the following:
- In the Administration activity center, go to Extensions.
- Select the extensions you want to delete.
- Click Delete.