
Best Practices for Amazon Quicksight
Part 1 of Amazon Quicksight best practices to optimize data visualization and insight
Published Jan 15, 2025
Amazon Quicksight is a business intelligence (BI) service offered by Amazon Web Services (AWS) that allows organizations to easily create and publish interactive dashboards, reports, and data visualizations. It is designed to be a scalable, cloud-based solution for analyzing data from various sources, including AWS services, databases, flat files and multiple third-party data sources. Quicksight is useful for anyone needing to analyze and visualize large datasets without managing infrastructure, making it suitable for business analysts, data scientists, and other stakeholders who require data-driven insights.
Amazon Quicksight was launched by Amazon Web Services (AWS) on October 25, 2016. Since its launch, QuickSight has introduced several new features and updates to enhance its capabilities. Here's a timeline of key milestones and feature updates over the years
2017: Early Enhancements
- Integration with AWS Services: QuickSight improved its integration with various AWS data sources, such as Amazon S3, RDS, Redshift, and Athena.
- New Visualizations: Additional chart types, such as heat maps and tree maps, were introduced.
- Improved Data Security: Support for AWS Identity and Access Management (IAM) roles to manage permissions and access to data sources.
2018: Advanced Features
- ML Insights: Introduction of machine learning-powered insights, allowing users to identify anomalies, forecast trends, and uncover hidden data patterns.
- Mobile App: Launch of the QuickSight mobile app, enabling users to access their dashboards and reports on the go.
- Row-Level Security (RLS): Added RLS to enable fine-grained access control, allowing users to restrict data access at the row level.
2019: Increased Customization and Scalability
- Embedding and APIs: QuickSight introduced APIs and the ability to embed dashboards and visualizations into applications, providing developers with greater flexibility.
- Themes and Conditional Formatting: Users gained the ability to customize the look and feel of dashboards with themes and apply conditional formatting to highlight data points based on specific criteria.
- Cross-Data Source Join: Added the capability to join data across different data sources within QuickSight.
2020: Enhancing User Experience
- Q: Launched Amazon QuickSight Q, a natural language query tool allowing users to ask questions in plain language and receive answers in the form of visualizations. This made QuickSight more accessible to non-technical users.
- Paginated Reports: Introduced support for creating and exporting paginated reports, which are especially useful for operational and financial reporting.
- Dashboard Export: Added the ability to export dashboards as PDF files for offline sharing.
2021: Performance and Scalability Improvements
- SPICE Capacity Increase: Expanded SPICE capacity, allowing users to store more data in-memory for faster analysis.
- Multi-Value Parameters: Introduced support for multi-value parameters, enabling more complex filtering and interactivity in dashboards.
- Custom Actions: Added custom actions in dashboards, allowing users to create interactions like URL redirects or triggering specific events based on user input.
2022: More AI and ML Integration
- Forecasting and What-If Analysis: Enhanced ML Insights with forecasting and "what-if" analysis, allowing users to model different scenarios and predict future outcomes.
- Deeper Integration with AWS Data Services: Improved connectivity with AWS services like AWS Glue Data Catalog and enhanced data preparation capabilities.
- Expanded Language Support: Introduced support for multiple languages in QuickSight Q, expanding accessibility to users around the globe.
2023: Further Innovations
- Advanced Authoring: New features for advanced authoring, including better control over visual layouts, custom SQL-based data preparation, and improved dashboard performance.
- Improved Embedding Features: Enhanced embedding features to support more complex use cases, such as custom themes and seamless integration with third-party applications.
- New Chart Types and Visualizations: Introduction of new chart types, such as waterfall charts, and enhancements to existing visualizations to improve data storytelling.
Amazon QuickSight continues to receive updates, with new features being rolled out regularly to meet the evolving needs of users. AWS typically announces major updates during their annual re:Invent conference and other events.
These enhancements over the years have made QuickSight a more robust and versatile BI tool, suitable for a wide range of business intelligence and analytics needs.
The main Quicksight user types are Admin, Author and Reader.
The best practice for security is to follow the principle of least privilege. So based on the user activity in the Quicksight account they should be granted appropriate access.
A Quicksight admin is a user who has the highest privilege and there should not be more than 1 or 2 admin users per account per project. An admin can set up accounts, purchase SPICE capacity, manage users, manage vpc connections, manage folders/assets etc.
A Quicksight author is a user who creates analysis, dashboards and shares them with other authors or readers. An author can sometimes act as an admin and perform both admin and author capabilities.
A Quicksight reader has the least privilege who is a consumer of the dashboard that is shared by a Quicksight author. A reader can be a user who is set up in a Quicksight account as another reader or a user who is not set up in a Quicksight account but will be able to access the dashboard as a viewer only.
Below are the different users by their roles and tasks. There is reader pro, author pro, and Admin pro users as well which have been introduced to utilize the Quicksight Q capabilities.
Setting shared folders for a new project
For any new project one must set up shared folders and name them appropriately so that it is easy to identify for all users. All Quicksight resources like datasets, analysis and dashboards related to that particular project should be placed in the shared folder. Admin should create the shared folder and add users to that folder.
While working with the datasets to create analyses or dashboards, all changes made should be made within the same shared folder.
Quicksight Admin should create 3 shared folders.
1. Dev,
2. Test/UAT,
3. Prod.
Restrict access
Share your Quicksight resources only with appropriate users/groups/shared folders
Dev – Share it with only Dev team
UAT/Test – Share it with UAT team or people involved in QA or testing
Prod - Share it with prod team, users involved in finalizing the dashboard, end users who need end product dashboard
Use separate datasets for each environment. You can differentiate them by using tagging – assign Environment tags for each dataset.
Dev – For initial development and experimentation
UAT – For QA or testing
Prod – For business ready or ready data
Assume you have marketing data and would like to create a marketing performance dashboard for your client
Phase 1 - Development
Developers create and test dashboards using Marketing_Data_DEV. Dashboards are named Marketing_Performance_DEV and shared only with Dev_Team.
Phase 2 – UAT/Test
Once a Dev dashboard is ready, duplicate it in UAT/Test and connect it to Marketing_Data_UAT. Name it Marketing_Performance_UAT and share it with UAT_Team or people involved in testing the dashboard for stakeholder review.
Phase 3 - Production
Review UAT/Test dashboard and after approval, duplicate the UAT dashboard and connect it to Marketing_Data_PROD. Name it Marketing_Performance_PROD and share it with Prod_Team and end users.
Shared folder naming conventions
As mentioned earlier please follow a folder naming convention so that it is descriptive enough for other users to follow if you are using shared folders. Some examples are Sales_dashboards, marketing_resources, HR_resources, Insurance_resources.
Another use case of folders is to segregate the resources by different environments. If you have a dev, test and prod environment then you should have 3 folders to place each of your resources in respective folders. If you do not have the ability to create shared folders, then reach out to your admin to get one created. By segregating by environments, you will not accidentally push development updates directly to prod.
Permissions to folders
Again, follow the principle of the least privilege by providing access to folders for only those who require access to it. Provide users access based on their role such as a viewer or edit permissions
Folder organization
Organize your folders in a clear hierarchy based on your needs. If you have data by date and time then organize it accordingly and if you have your resources organized by department, project or data source then organize it accordingly.
Managing a shared folder
Assign an administrator for your shared folder so that they can manage access permissions for all the users who have access to the resource in that shared folder. Also audit the shared folders periodically.
Content organization within folders
You can organize datasets, dashboards and analyses in separate folders so that it becomes easy for a user to access them and work with them.
Archive or purge old content
Periodically ensure that all the resources in the folders are being used, otherwise archive them or delete them after a set time frame of 60/90 days.
Notify team on any updates in shared folders
It is good practice to notify your team members if you made any updates to any Quicksight artifacts and ensure that multiple changes are not made at the same time. Hence it is good practice to use separate folders for different environments.
Naming data sources in Amazon Quicksight is quite crucial to maintain clarity among the users, organization and ease of use especially when data sources grow, and multiple users or new users use them.
File naming convention (Required) – Stick with this naming convention to name your data sources. Use Camel casing in your names to be consistent. Make sure to use descriptive and specific so that it becomes easy to identify on first look.
Naming Datasets
Naming datasets in Amazon Quicksight is quite crucial to maintain clarity among the users, organization and ease of use especially when datasets grow with multiple data sources and multiple users or new users using them.
Some best practices that should be followed while naming datasets are:
- Follow file naming convention
- Date Format – If you need to include date to your dataset name then make sure its in YYYYMMDD format.
- Versioning data source – If your data sets will be updated frequently then you should include a version to naming convention - Dataset name_V1/V2/V3…
- Tags to denote status of data – If you need to denote the status of the file whether it is a Draft, Final, Archived, Test then you can add it to the Dataset name- Marketing_Data_Final, Sales_Data_Archived.
File naming convention (Required) – Stick with this naming convention to name your datasets. Use Camel casing in your names to be consistent. Make sure to use descriptive and specific so that it becomes easy to identify on first look.
Data Sources in Quicksight is the source of data that you will need to connect to. It could be a local text or excel file, source from AWS services, third party sources like salesforce, Teradata, Jira, GitHub, Adobe analytics and many more. For more information on what data sources are supported by Quicksight refer this link- https://docs.aws.amazon.com/quicksight/latest/user/supported-data-sources.html
A Dataset is a data store that you use to create analyses/dashboards. To create a dataset from a new data source, provide connection information to the data source.
- For local text or Microsoft Excel files, you can simply identify the file location and upload the file.
- For Amazon S3, provide a manifest identifying the files or buckets that you want to use, and also the import settings for the target files.
- For Amazon Athena, all Athena databases for your AWS account are returned. No additional credentials are required.
- For Salesforce, provide credentials to connect with.
- For Amazon Redshift, Amazon RDS, Amazon EC2, or other database data sources, provide information about the server and database that host the data. Also provide valid credentials for that database instance.
If you have lot of data and you want to drill down to specific data on specific condition, then you can create and apply filters to your dashboards. Filters will make user navigation easier, improve the performance of dashboard and make them user friendly. Some best practices for applying filters are
Reason for your filter
Understand your data and what kind of filters it will require. Some data filters will be needed by default like time periods, products, gender, geographic locations etc. Some other data filters need to be created based on your use case. Think of an end user using the dashboard and what filters will make it easy for you to navigate and derive insights quickly.
Creating parameters best practices
Parameters in Quicksight lets you add dynamic elements to your analyses and dashboards which will let your users interact with your data and provide good user experience. With parameters you can create filters, calculate fields and control visualizations which will make it flexible for users to play with their data.
Sharing analyses/dashboards/datasets
Sharing analyses, dashboards & datasets in Amazon Quicksight is straightforward and Quicksight ensures you share your resources with the right people who should be having access to that specific data which maintains security of data.
Saving analyses/dashboards
It is important to follow some best practices when it comes to saving analyses or dashboards in Amazon Quicksight so that everyone follows a consistency how it is done and also improves the ease of use.
Saving dashboards as analyses
If you want to save your dashboard instantly the only way of doing that is saving it back as an analysis. This will basically serve as a copy of your dashboard in the form of an analysis.
Quicksight does not offer a GUI way of saving resources to your local machine. The only way of doing it is using Quicksight CLI commands. More information on how to do that is below here:
Backing up resources as templates – Quicksight does not offer an export method to export out the resources as a file instead you can use AWS Quicksight CLI to export your resources as a JSON template and re use that in a different Quicksight account.
You can refer to this documentation that provides more information on all CLI commands that Quicksight offers- link
Amazon Quicksight lets you customize the look and feel of your dashboard and analyses based on your company specific or brand specific preferences. With themes you can make your dashboards visually appealing, align them with your brand guidelines and make them look consistent. Some best practices you should follow are:
- Contact the marketing team to know brand guidelines
- Know the purpose of dashboard
- Consistency
- Color contrast
- Highlight titles
Amazon QuickSight's SPICE (Super-fast, Parallel, In-memory Calculation Engine) improves performance by letting you cache data in memory and making it fast and scalable to analyze your data. PS – Using SPICE will add some additional cost when memory is exhausted, but it has benefits that you will want to use it for. Here are some best practices that you should follow while using SPICE.
- Understand when you want to use SPICE
- Managing SPICE capacity
- Managing datasets for efficiency
- Purge unused SPICE datasets
The default SPICE capacity for Amazon QuickSight is 11 GB per region per subscription account. This capacity is shared among all QuickSight users in the account.
More best practices related to Amazon Quicksight will be shared in the next article. Stay tuned!