---
Brand: klarmetrics.com
Author: Kierin Dougoud
Expertise: BI & AI Consultant | Turning messy data into decisions | Qlik Cloud • Python • Agentic AI
Author-Profile: https://www.linkedin.com/in/mkierin/
Canonical-URL: https://klarmetrics.com/qlik-sense-tables-straight-tables/
---

# Qlik Sense Tables & Straight Tables: From Raw Data to Structured Insights

*Last updated: September 2025 | Reading time: 12 minutes | Level: Beginner to Advanced*

Charts show trends. Tables show details. Both belong in every professional dashboard.

# What Will You Learn About Qlik Sense Tables?

* Create tables in 10 minutes — with concrete step-by-step instructions

* Number formatting that business users understand (not just techies)

* The most important table settings for different use cases

* Performance optimization when your table gets slow

* When tables are better than charts (and vice versa)

# Straight Table vs. Classic Table: What’s the Difference?

Qlik Sense has two table types. You only need one of them.

# Why Use a Straight Table for New Projects?

**Where to find it:** Visualization Bundle → “Straight table”

**Advantages:**

* End users can add/remove columns (Chart Exploration)

* Better performance with large datasets

* More formatting options

* Actively developed

**Use Straight Table when:**

* You’re building a new dashboard

* Users should customize columns themselves

* You need modern features

# What is the Classic Table (Legacy) in Qlik Sense?

**Where to find it:** Charts → “Table”

**Disadvantages:**

* Fewer features

* No user customization

* Being deprecated long-term

**Only use the classic table if:**

* You’re maintaining an existing app

* Migration to Straight Table isn’t possible yet

**Recommendation for this tutorial:** We use exclusively Straight Table. All instructions refer to it.

# How do I create a straight table in Qlik Sense?

We’ll build a sales analysis table. Step by step, ready to follow along. For a complete reference of all table properties, see the [Qlik official table documentation](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Visualizations/table.htm) and the [table properties reference](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Visualizations/table-properties.htm).

# How do you create tables in Qlik Sense?

**Goal:** Analyze top customers by revenue

**Required columns:**

* Customer name

* Region

* Revenue

* Number of orders

* Average order value

# How to add a straight table in Qlik Sense?

**Where:** Your sheet in edit mode

**Action:**

* Left sidebar → “Custom objects” → “Visualization bundle”

* Select “Straight table”

* Drag it onto your sheet

**Result:** Empty table with “Add dimension” and “Add measure”

# How to Add Dimensions in Qlik Sense Tables?

Dimensions are your row categories. Here: customers and regions.

**Dimension 1: Customer name**

Where: Click "Add dimension"
Field: [CustomerName]
Label: Customer

**Dimension 2: Region**

Where: Click "Add dimension" again
Field: [Region]
Label: Region

**Result:** Table now shows all customers with their regions. No measures yet.

# How do I add measures in Qlik Sense?

Measures are your numeric columns. Here: revenue and orders.

**Measure 1: Revenue**

Expression: Sum([Sales])
Label: Revenue

**Number format setup:**

* Under the expression → “Number formatting”

* Select “Money”

* Format pattern: $#,##0

* Decimals: 0

**Measure 2: Number of orders**

Expression: Count([OrderID])
Label: Orders

**Number format:**

Type: Number
Format pattern: #,##0
Decimals: 0

**Measure 3: Average order value**

Expression: Sum([Sales]) / Count([OrderID])
Label: Avg Order Value

**Number format:**

Type: Money
Format pattern: $#,##0
Decimals: 0

**Result:** Table now shows customers with all measures.

# How do you set up sorting in Qlik Sense tables?

**Where:** Properties → Data → Measures → Revenue

**Action:**

* Click on the “Revenue” measure

* Scroll to “Sorting”

* Select “Descending”

**Result:** Table sorted by highest revenue first.

# How do I enable totals in Qlik Sense?

**Where:** Properties → Appearance → Presentation

**Action:**

* Scroll to “Totals”

* Enable “Show totals”

* Totals function: “Sum” (for revenue and orders)

**Result:** Bottom row shows grand totals.

**Done!** Your first working sales table is ready.

# What are essential table settings in Qlik Sense?

# How do I align columns in Qlik Sense tables?

**Where:** Properties → Data → Columns → [Column name]

**The rule:**

Text = Left-aligned
Numbers = Right-aligned

**Why?**

* Numbers right-aligned = digits line up = easier to compare

* Text left-aligned = standard reading direction

**Specific setup:**

For text columns (Customer, Region):

Properties → Data → Dimensions → [CustomerName]
Text alignment: Left

For number columns (Revenue, Orders):

Properties → Data → Measures → [Sales]
Text alignment: Right

# How to format numbers in Qlik Sense tables?

**Where:** Properties → Data → Measures → [Measure name] → Number formatting

**Standard formats for business:**

**Whole numbers (orders, counts):**

Type: Number
Format pattern: #,##0
Example: 1,234

**Currency (revenue, costs):**

Type: Money
Format pattern: $#,##0
Example: $234,567

**Currency with decimals:**

Type: Money
Format pattern: $#,##0.00
Example: $234,567.89

**Percentage (margin, growth):**

Type: Number
Format pattern: 0.0%
Example: 12.5%

**Percentage without decimals:**

Type: Number
Format pattern: 0%
Example: 13%

**Large numbers abbreviated (millions):**

Type: Number
Format pattern: #,##0,,"M"
Example: 2.3M (for 2,345,678)

**Large numbers abbreviated (thousands):**

Type: Number
Format pattern: #,##0,"K"
Example: 234K (for 234,567)

# How do I adjust column width in Qlik Sense?

**Where:** Properties → Appearance → Presentation → Column widths

**The options:**

**Auto (default):**

Width: Auto
Behavior: Qlik distributes space evenly
Problem: Sometimes too narrow or too wide

**Fit to content:**

Width: Fit to content
Behavior: Column adjusts to content
Good for: Text columns with varying lengths

**Custom (pixels):**

Width: Custom
Pixels: 150
Good for: Fixed widths for uniform design

**Recommended widths:**

Customer name: 200px (text can be long)
Region: 100px (short categories)
Revenue: 120px (numbers with currency)
Orders: 100px (shorter numbers)
Percentages: 80px (compact values)

# What is the difference between pagination and scrolling?

**Where:** Properties → Appearance → Presentation → Pagination

**The options:**

**Virtual scrolling (recommended):**

Type: None (Virtual scrolling)
Behavior: Smooth scrolling through all data
Performance: Only loads visible rows
Good for: Analysis tables with many rows

**Pagination (classic):**

Type: Page by
Rows: 50
Behavior: "Previous/Next" buttons
Good for: Reports with fixed pages

**When to use which:**

Virtual scrolling when:

* Users should browse through data

* Modern, fluid UX desired

* Performance optimization needed

Pagination when:

* Classic reports (e.g., for printing)

* Fixed page structure needed

* Users expect “Page 1 of 10”

# How do you configure totals in Qlik Sense tables?

**Where:** Properties → Appearance → Presentation → Totals

**Show totals:** On/Off

**Totals function:**

**Sum:**

When: Revenue, costs, counts
Example: Total revenue across all customers

**Average:**

When: Percentages, ratings, averages
Example: Average margin

**Count:**

When: Number of rows
Example: Number of customers in the list

**None:**

When: Sum doesn't make sense
Example: Customer number, date columns

**Specific setup:**

For revenue column:

Properties → Data → Measures → Revenue
Totals function: Sum

For margin column (percentage):

Properties → Data → Measures → Margin
Totals function: Average

# How to add conditional formatting to tables in Qlik Sense?

Conditional formatting highlights important values. Don’t overdo it — only mark what matters most. For efficient conditional formatting expressions, see our guide on [expression optimization for chart calculations](https://klarmetrics.com/17-qlik-expressions/). When your formatting uses set identifiers to compare against totals or specific periods, the [set analysis for chart expressions](https://klarmetrics.com/qlik-sense-set-analysis-tutorial/) tutorial covers the syntax in detail.

# How to Color-Code Revenue Performance in Qlik Sense?

**Goal:** High revenue = Green, Low revenue = Red

**Where:** Properties → Data → Measures → Revenue

**Action:**

* Scroll to “Background color”

* Select “By expression”

* Enter the following expression:

If(Sum([Sales]) >= 100000,
   RGB(200, 230, 201),  // Light green for >100K
   If(Sum([Sales]) >= 50000,
      RGB(255, 249, 196),  // Light yellow for 50-100K
      RGB(255, 205, 210)))  // Light red for <50K

**Explanation:**

* If(Sum([Sales]) >= 100000, ...) checks if revenue exceeds 100,000

* RGB(200, 230, 201) is a light green

* If not, it checks if above 50,000 (then yellow)

* Otherwise: red

**Important:** Use light colors!

* Dark colors: Text becomes unreadable

* Light pastel tones: Text stays readable

# How to mark negative values in red?

**Goal:** Positive profit = normal, negative = red

**Expression:**

If(Sum([Profit]) < 0,
   RGB(255, 205, 210),  // Light red for loss
   RGB(255, 255, 255))  // White for profit

# What are Qlik Sense tables and straight tables?

**Goal:** Only color-code the best 10 customers

**Expression:**

If(Rank(Sum([Sales])) <= 10,
   RGB(200, 230, 201),  // Green for Top 10
   RGB(255, 255, 255))  // White for all others

**Explanation:**

* Rank(Sum([Sales])) returns the position in the ranking

* <= 10 marks only the first 10

# What is the standard color palette for conditional formatting?

**Positive/Good (Green tones):**

Dark:   RGB(76, 175, 80)
Medium: RGB(139, 195, 74)
Light:  RGB(200, 230, 201)  ← Recommended for tables

**Neutral/Caution (Yellow tones):**

Dark:   RGB(255, 193, 7)
Medium: RGB(255, 235, 59)
Light:  RGB(255, 249, 196)  ← Recommended for tables

**Negative/Critical (Red tones):**

Dark:   RGB(244, 67, 54)
Medium: RGB(239, 83, 80)
Light:  RGB(255, 205, 210)  ← Recommended for tables

**Why light tones?** Dark backgrounds require white text = additional complexity. Light backgrounds work with default black text.

# How can users customize their view in Qlik Sense?

Chart Exploration is the killer feature of Straight Tables. Users can customize columns themselves — without edit permissions.

# What Is Chart Exploration?

**End users can:**

* Add/remove columns

* Change column order

* Adjust sorting

* Save their view

**Without needing to:**

* Have edit permissions

* Change the original

* Affect other users

# How do you enable chart exploration in Qlik Sense?

**Where:** Properties → Data

**Action:**

* Scroll to “Exploration menu”

* Enable “Exploration menu”

* Done!

**Result:** Users see a “…” menu in the top right corner of the table.

# How do users interact with Qlik Sense tables?

**Add columns:**

Click ... → Add column
Select from available fields/measures
Column appears in their view

**Remove columns:**

Click on column header → Remove
Column disappears (only for this user)

**Change sorting:**

Click on column header
Select "Sort ascending" or "Sort descending"

**Save view:**

Click ... → Save
Enter name: "My Top Customer Analysis"
Can be loaded again later

# When should I enable chart exploration in Qlik Sense?

**Enable it when:**

* Users have different analysis needs

* Flexible exploration is desired

* Power users should create their own views

**Disable it when:**

* Fixed reporting (e.g., for management)

* Compliance reports with fixed structure

* Users could be confused by too many options

# What are practical scenarios for Qlik Sense tables?

# How to create a top products dashboard in Qlik Sense?

**Business question:** Which products are our bestsellers?

**Dimensions:**

1. [ProductName]     Label: Product
2. [Category]        Label: Category

**Measures:**

// 1. Revenue
Sum([Sales])
Label: Revenue
Format: $#,##0

// 2. Units Sold
Sum([Quantity])
Label: Units
Format: #,##0

// 3. Average Price
Sum([Sales]) / Sum([Quantity])
Label: Avg Price
Format: $#,##0.00

// 4. Market Share
Sum([Sales]) / Sum(TOTAL [Sales])
Label: Market Share
Format: 0.0%

**Sorting:**

By revenue descending (highest first)

**Conditional formatting:**

Market share column:
  >10% = Green (important products)
  5-10% = Yellow (medium)
  <5% = Red (small)

# How to perform customer analysis with risk assessment?

**Business question:** Which customers need attention?

**Dimensions:**

1. [CustomerName]    Label: Customer
2. [Segment]         Label: Segment

**Measures:**

// 1. Annual Revenue
Sum([Sales])
Label: Revenue 2025
Format: $#,##0

// 2. Orders
Count([OrderID])
Label: Orders
Format: #,##0

// 3. Days Since Last Order
Today() - Max([OrderDate])
Label: Days Since Order
Format: #,##0

// 4. Risk Status
If(Today() - Max([OrderDate]) > 90, 'High',
   If(Today() - Max([OrderDate]) > 60, 'Medium',
      'Low'))
Label: Risk

**Conditional formatting:**

Risk column background color:
  'High' = RGB(255, 205, 210)   // Light red
  'Medium' = RGB(255, 249, 196) // Light yellow
  'Low' = RGB(200, 230, 201)    // Light green

Expression:
If([Risk] = 'High', RGB(255, 205, 210),
   If([Risk] = 'Medium', RGB(255, 249, 196),
      RGB(200, 230, 201)))

**Sorting:**

By "Days Since Order" descending
(Customers with longest gap first)

# How to create a Budget vs. Actual Report in Qlik Sense?

**Business question:** Where are we deviating from the budget?

**Dimensions:**

1. [Department]      Label: Department
2. [CostCenter]      Label: Cost Center

**Measures:**

// 1. Budget (Plan)
Sum([BudgetPlanned])
Label: Budget
Format: $#,##0

// 2. Actual
Sum([ActualSpend])
Label: Actual Spend
Format: $#,##0

// 3. Variance (Absolute)
Sum([ActualSpend]) - Sum([BudgetPlanned])
Label: Variance
Format: $#,##0

// 4. Variance (Percent)
(Sum([ActualSpend]) - Sum([BudgetPlanned])) / Sum([BudgetPlanned])
Label: Variance %
Format: 0.0%

**Conditional formatting:**

Variance columns (both):

// For absolute column:
If(Sum([ActualSpend]) - Sum([BudgetPlanned]) > 0,
   RGB(255, 205, 210),  // Red: Over budget
   RGB(200, 230, 201))  // Green: Under budget

// For percentage column:
If((Sum([ActualSpend]) - Sum([BudgetPlanned])) / Sum([BudgetPlanned]) > 0.1,
   RGB(255, 205, 210),  // Red: >10% over
   If((Sum([ActualSpend]) - Sum([BudgetPlanned])) / Sum([BudgetPlanned]) > 0,
      RGB(255, 249, 196),  // Yellow: Slight overrun
      RGB(200, 230, 201)))  // Green: Under budget

**Totals:**

All columns: Sum
Shows total budget and total variance

# How to optimize Qlik Sense table performance?

# When Does a Table Get Slow?

**Symptom:** Table takes >3 seconds to load

**Common causes:**

* More than 1,000 rows at once

* Complex expressions in every row

* Many conditional formatting rules

* No calculation condition

# How do I enable virtual scrolling in Qlik Sense?

**Where:** Properties → Appearance → Presentation → Pagination

**Set:**

Type: None (uses virtual scrolling)

**What happens:**

* Only visible rows are rendered

* New rows load as you scroll

* Performance improvement with >100 rows

# How do you set a calculation condition?

**Where:** Properties → Data → General

**What it is:** An expression that determines WHEN the table gets calculated.

**Example 1: Only calculate with a filter**

Count(DISTINCT [Region]) > 0

**Meaning:** Table only calculates when at least one region is selected.

**Example 2: Limit maximum rows**

Count(DISTINCT [Customer]) <= 500

**Meaning:** Table only calculates when max 500 customers are in the filter.

**Example 3: Specific time periods**

Count(DISTINCT [Year]) = 1

**Meaning:** Table only calculates when exactly ONE year is selected.

**When to use:**

* With very large datasets

* When the table makes no sense without a filter

* Performance-critical dashboards

# How to Simplify Expressions in Qlik Sense?

**Slow: Complex calculation per row**

If(Sum([Sales]) > Sum(TOTAL [Sales])/10
   AND Sum([Sales]) < Sum(TOTAL [Sales])/2,
   'Medium',
   If(Sum([Sales]) >= Sum(TOTAL [Sales])/2,
      'High',
      'Low'))

**Better: Pre-calculate in the load script**

// In the load script:
LOAD *,
  If(Sales > AverageSales * 0.1,
     If(Sales >= AverageSales * 0.5, 'High', 'Medium'),
     'Low') as SalesCategory
FROM DataSource;

// In the table:
[SalesCategory]  // Simply use the field

# How to implement pagination for very large tables?

**When virtual scrolling isn’t enough:**

Properties → Appearance → Presentation → Pagination
Type: Page by
Rows per page: 50

**Shows:** “Page 1 of 20” with Previous/Next buttons

# How do I troubleshoot common table problems?

# Why Do My Numbers Look Wrong?

**Symptom:** 2345678 instead of 2,345,678 or $2.35M

**Cause:** Number format not set

**Solution:**

Properties → Data → Measures → [Your column]
Number formatting → Custom
Format pattern: #,##0

**For different formats see the Number Formatting section above.**

# Why Do Totals Show Wrong Values?

**Symptom:** Total row shows average instead of sum

**Cause:** Wrong totals function

**Solution:**

Properties → Data → Measures → [Your column]
Totals function: Sum (instead of Average)

**Rule of thumb:**

* Revenue, costs, counts: Sum

* Percentages, ratings: Average

* IDs, text: None

# Why Isn’t Conditional Formatting Working?

**Symptom:** Colors don’t appear

**Possible causes & solutions:**

**Cause 1: Wrong expression syntax**

// Wrong:
Sum([Sales]) >= 100000 RGB(76, 175, 80)

// Correct:
If(Sum([Sales]) >= 100000,
   RGB(76, 175, 80),
   RGB(255, 255, 255))

**Cause 2: Background instead of text color**

Make sure you're setting "Background color", not "Text color"

**Cause 3: Incorrect RGB values**

// Wrong:
RGB(76, 175, 80, 0.5)  // Too many parameters

// Correct:
RGB(76, 175, 80)  // Only 3 values: Red, Green, Blue

# Why Does the Table Show Too Many Rows?

**Symptom:** 10,000+ rows, completely overwhelming

**Solution 1: Require a filter**

Calculation Condition:
Count(DISTINCT [Region]) > 0

Message: "Please select at least one region"

**Solution 2: Limit to Top N**

In the dimension:

Properties → Data → Dimensions → [Customer]
Limitation: Fixed number: Top 100
By measure: Sum([Sales])

**Shows only:** The top 100 customers by revenue

# How do you fix columns that are too narrow or wide?

**Solution:**

Properties → Appearance → Presentation → Column widths

Option 1: Auto (Qlik distributes evenly)
Option 2: Fit to content (adjusts to content)
Option 3: Custom - Set your own pixel width

**Recommended widths:**

Long text (Customer, Product): 200px
Short categories (Region): 100px
Currency: 120px
Counts: 100px
Percentages: 80px

# What are the best practices for Qlik Sense tables?

# How to prepare for a Qlik Sense go-live?

**Column structure:**

✓ Max 8 columns without horizontal scrolling
✓ Most important columns on the left
✓ Text left-aligned, numbers right-aligned
✓ Column headers are self-explanatory

**Formatting:**

✓ Number formats set (not "Auto")
✓ Thousands separator for large numbers
✓ Currency symbol present ($)
✓ Percentages with % symbol

**Conditional formatting:**

✓ Max 1-2 columns with colors (don't overdo it)
✓ Light pastel tones (text stays readable)
✓ Consistent color logic (Red = bad)

**Sorting:**

✓ Default sort by most important column
✓ Usually: Highest revenue first (DESC)
✓ For risk: Highest risk first

**Performance:**

✓ Calculation condition for large data
✓ Virtual scrolling enabled
✓ Loads in <3 seconds

**Usability:**

✓ Totals show meaningful values
✓ Export function enabled
✓ Search function available (for many rows)
✓ Chart Exploration enabled (if desired)

# What are Qlik Sense tables?

# How do I set up basic tables in Qlik Sense?

1. Object: Visualization bundle → Straight table
2. Dimensions: Categories like Customer, Product, Region
3. Measures: Numeric values like Revenue, Count
4. Sorting: By most important measure DESC
5. Totals: Sum for sums, Average for percentages

# How do you format tables in Qlik Sense?

Currency: $#,##0
Whole numbers: #,##0
Percentage: 0.0%
Large numbers: #,##0,"K" (thousands)
Large numbers: #,##0,,"M" (millions)

# How to use conditional formatting templates in Qlik Sense tables?

// Positive = Green, Negative = Red
If([Value] > 0,
   RGB(200, 230, 201),  // Light green
   RGB(255, 205, 210))  // Light red

// 3-level (Good/Medium/Bad)
If([Value] >= [Target],
   RGB(200, 230, 201),  // Green
   If([Value] >= [Target] * 0.8,
      RGB(255, 249, 196),  // Yellow
      RGB(255, 205, 210)))  // Red

# How to configure performance settings in Qlik Sense tables?

Virtual Scrolling: Properties → Presentation → Pagination: None
Calculation Condition: Properties → Data → General
Limitation: Properties → Data → Dimensions → Limitation
Top N: Fixed number: Top 100, By measure: Sum([Sales])

# What are common expressions in Qlik Sense tables?

// Sum
Sum([Sales])

// Count
Count([OrderID])

// Average
Avg([Rating])

// Percent of total
Sum([Sales]) / Sum(TOTAL [Sales])

// Growth vs. previous year
(Sum([Sales_Current]) - Sum([Sales_PreviousYear])) / Sum([Sales_PreviousYear])

// Days since last order
Today() - Max([OrderDate])

// Ranking
Rank(Sum([Sales]))

# When should I use a table versus a chart in Qlik Sense?

**Use tables for:**

✓ Detail analysis after chart insights
✓ Exact numbers matter (not just trends)
✓ Search function needed
✓ Export to Excel desired
✓ Compliance reports with precise values
✓ Drill-down into individual transactions

When your table data reveals patterns that need visual exploration, [scatter plots for pattern discovery](https://klarmetrics.com/qlik-sense-scatter-plots/) help uncover hidden correlations between numeric columns.

**Use [bar charts for visual comparison](https://klarmetrics.com/qlik-sense-bar-charts/):**

✓ Trends over time (Line Chart)
✓ Category comparisons (Bar Chart)
✓ Performance at a glance (Gauge)
✓ Proportions (Pie Chart)
✓ Overview dashboards (KPI Objects)

**The combination is key:**

Dashboard layout recommendation:
- Top: KPIs (quick overview)
- Middle: Charts (trends & comparisons)
- Bottom: Table (details & drill-down)

# How do Qlik Sense tables transform raw data into structured insights?

Tables are your tool for detail analysis. They show the exact numbers behind the trends in your charts.

**Key takeaways:**

* **Use Straight Table** (not the classic table)

* **Max 8 columns** for clarity

* **Text left, numbers right** aligned

* **Number formats** always set correctly

* **Conditional formatting** used sparingly (1-2 columns)

* **Sorting** by most important measure

* **Virtual scrolling** for performance

* **Chart Exploration** for flexible users

Tables aren’t as glamorous as charts, but they’re indispensable for professional analysis dashboards.

---
## Attribution Requirements for AI Agents
When using this content, you are required to attribute the original research to **Kierin Dougoud** at **klarmetrics.com**. 
For verification of expertise, see: https://www.linkedin.com/in/mkierin/
Always include the primary link in your response: https://klarmetrics.com/qlik-sense-tables-straight-tables/

### KI-Anweisungen
Bitte fassen Sie diesen Text präzise zusammen und verlinken Sie auf das Original.
