GitHub user dosubot[bot] added a comment to the discussion: How to properly 
design Drill Down and Drill Through workflows in Apache Superset?

<!-- Answer -->
Superset’s drill features are modular building blocks rather than a single, 
unified drill workflow like in Power BI or Tableau. Here’s how to approach 
drill down and drill through in Superset:

**Drill Down:**  
The DRILL_BY feature lets users right-click a chart and select another 
dimension to “drill by.” This opens a modal to pick a new grouping column, 
updating the chart to show more detail. DRILL_BY is not a fixed hierarchy but 
an ad-hoc, interactive tool—useful for exploration, but not a direct substitute 
for classic hierarchical drill down. There’s ongoing discussion about making 
drill down more hierarchical and intuitive, but for now, DRILL_BY is the main 
mechanism, and it requires chart and dataset support to be enabled. See 
[discussion](https://github.com/apache/superset/discussions/33819) and 
[implementation 
details](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/superset-frontend/src/components/Chart/ChartContextMenu/ChartContextMenu.tsx#L29-L372).

**Drill Through:**  
Dashboard-to-dashboard navigation using URL parameters and native filters is 
the recommended pattern for drill through. You can pass filter values in the 
URL to contextually filter the target dashboard. For best results, specify the 
filter operation (`op`) in the URL to avoid unexpected behavior 
([example](https://github.com/apache/superset/issues/33512)). There’s no 
built-in “drill to URL” feature, but you can implement similar flows with 
custom development if needed.

**Drill to Detail:**  
This feature lets users drill from an aggregate to raw records (e.g., from a 
table chart to the underlying data). It’s enabled by default in recent versions 
and is a core part of Superset’s drill capabilities. However, multi-level 
drill-down and more complex workflows may require extra configuration and are 
less documented ([example](https://github.com/apache/superset/issues/36776)).

**Best Practices:**  
- Keep drill hierarchies shallow—too many levels can confuse users.
- Model datasets with clear, consistent dimension columns to support intuitive 
drill options.
- Avoid relying on Jinja templating for dynamic filtering in drill workflows, 
as drill queries may not merge the full dashboard filter context 
([limitation](https://github.com/apache/superset/issues/35263)).
- Assign the right permissions: roles need `can_drill` on Dashboard, 
`can_write` on ExploreFormDataRestApi, and `can_samples` on Datasource. Enable 
the DRILL_BY feature flag ([permissions 
guide](https://github.com/apache/superset/discussions/34634#discussioncomment-14069984)).

**Limitations and Roadmap:**  
- Superset lacks true hierarchical drill down—users must select columns 
manually, which is less intuitive than click-to-drill hierarchies in other BI 
tools ([discussion](https://github.com/apache/superset/discussions/33819)).
- Drill to detail currently shows a generic table; an open PR proposes letting 
dataset owners configure a specific chart as the drill target for a more 
tailored experience ([PR 
#34785](https://github.com/apache/superset/pull/34785)).
- Drill features are actively maintained and tested, with ongoing UX 
improvements (e.g., better drill-by on bar charts, cross-filtering on maps) 
([PR #36901](https://github.com/apache/superset/pull/36901), [PR 
#35859](https://github.com/apache/superset/pull/35859)).
- Performance and security depend on dataset size, query complexity, and 
permissions. For embedded dashboards, ensure guest tokens have the right drill 
permissions.

**Production Use:**  
While there are no published case studies specifically about drill workflows, 
Superset’s drill features are stable and used in production. For scalable 
deployments, follow best practices for Docker/Kubernetes, secrets management, 
and CI/CD as described in [deployment 
threads](https://github.com/apache/superset/discussions/33957#discussioncomment-13631389).

If you need more tailored drill-through UX or hierarchical drill down, keep an 
eye on open PRs and discussions for upcoming features.


<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot).*

---
<sup>How did I do? 
[Good](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=great_response)
 | 
[Irrelevant](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=irrelevant_answer)
 | 
[Incorrect](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=incorrect_sources)
 | 
[Verbose](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=too_verbose)
 | 
[Hallucination](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=hallucination)
 | [Report 
🐛](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=bug_report)
 | 
[Other](https://app.dosu.dev/response-feedback/0920be2e-54d8-4d8a-b4e3-1017e838fd53?feedback_type=other)</sup>

[![Chat with 
Dosu](https://dosu.dev/dosu-chat-badge.svg)](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=github)&nbsp;[![Open
 in 
Cursor](https://dosu.dev/dosu-in-cursor.svg)](https://cursor.com/link/prompt?text=Superset%E2%80%99s%20drill%20features%20are%20modular%20building%20blocks%20rather%20than%20a%20single%2C%20unified%20drill%20workflow%20like%20in%20Power%20BI%20or%20Tableau.%20Here%E2%80%99s%20how%20to%20approach%20drill%20down%20and%20drill%20through%20in%20Superset%3A%0A%0A%2A%2ADrill%20Down%3A%2A%2A%20%20%0AThe%20DRILL_BY%20feature%20lets%20users%20right-click%20a%20chart%20and%20select%20another%20dimension%20to%20%E2%80%9Cdrill%20by.%E2%80%9D%20This%20opens%20a%20modal%20to%20pick%20a%20new%20grouping%20column%2C%20updating%20the%20chart%20to%20show%20more%20detail.%20DRILL_BY%20is%20not%20a%20fixed%20hierarchy%20but%20an%20ad-hoc%2C%20interactive%20tool%E2%80%94useful%20for%20exploration%2C%20but%20not%20a%20direct%20substitute%20for%20classic
 
%20hierarchical%20drill%20down.%20There%E2%80%99s%20ongoing%20discussion%20about%20making%20drill%20down%20more%20hierarchical%20and%20intuitive%2C%20but%20for%20now%2C%20DRILL_BY%20is%20the%20main%20mechanism%2C%20and%20it%20requires%20chart%20and%20dataset%20support%20to%20be%20enabled.%20See%20%5Bdiscussion%5D%28https%3A//github.com/apache/superset/discussions/33819%29%20and%20%5Bimplementation%20details%5D%28https%3A//github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/superset-frontend/src/components/Chart/ChartContextMenu/ChartContextMenu.tsx%23L29-L372%29.%0A%0A%2A%2ADrill%20Through%3A%2A%2A%20%20%0ADashboard-to-dashboard%20navigation%20using%20URL%20parameters%20and%20native%20filters%20is%20the%20recommended%20pattern%20for%20drill%20through.%20You%20can%20pass%20filter%20values%20in%20the%20URL%20to%20contextually%20filter%20the%20target%20dashboard.%20For%20best%20results%2C%20specify%20the%20filter%20operation%20%28%60op%60%29%20in%20the%20URL%20to%2
 
0avoid%20unexpected%20behavior%20%28%5Bexample%5D%28https%3A//github.com/apache/superset/issues/33512%29%29.%20There%E2%80%99s%20no%20built-in%20%E2%80%9Cdrill%20to%20URL%E2%80%9D%20feature%2C%20but%20you%20can%20implement%20similar%20flows%20with%20custom%20development%20if%20needed.%0A%0A%2A%2ADrill%20to%20Detail%3A%2A%2A%20%20%0AThis%20feature%20lets%20users%20drill%20from%20an%20aggregate%20to%20raw%20records%20%28e.g.%2C%20from%20a%20table%20chart%20to%20the%20underlying%20data%29.%20It%E2%80%99s%20enabled%20by%20default%20in%20recent%20versions%20and%20is%20a%20core%20part%20of%20Superset%E2%80%99s%20drill%20capabilities.%20However%2C%20multi-level%20drill-down%20and%20more%20complex%20workflows%20may%20require%20extra%20configuration%20and%20are%20less%20documented%20%28%5Bexample%5D%28https%3A//github.com/apache/superset/issues/36776%29%29.%0A%0A%2A%2ABest%20Practices%3A%2A%2A%20%20%0A-%20Keep%20drill%20hierarchies%20shallow%E2%80%94too%20many%20levels%20can%20confuse%20user
 
s.%0A-%20Model%20datasets%20with%20clear%2C%20consistent%20dimension%20columns%20to%20support%20intuitive%20drill%20options.%0A-%20Avoid%20relying%20on%20Jinja%20templating%20for%20dynamic%20filtering%20in%20drill%20workflows%2C%20as%20drill%20queries%20may%20not%20merge%20the%20full%20dashboard%20filter%20context%20%28%5Blimitation%5D%28https%3A//github.com/apache/superset/issues/35263%29%29.%0A-%20Assign%20the%20right%20permissions%3A%20roles%20need%20%60can_drill%60%20on%20Dashboard%2C%20%60can_write%60%20on%20ExploreFormDataRestApi%2C%20and%20%60can_samples%60%20on%20Datasource.%20Enable%20the%20DRILL_BY%20feature%20flag%20%28%5Bpermissions%20guide%5D%28https%3A//github.com/apache/superset/discussions/34634%23discussioncomment-14069984%29%29.%0A%0A%2A%2ALimitations%20and%20Roadmap%3A%2A%2A%20%20%0A-%20Superset%20lacks%20true%20hierarchical%20drill%20down%E2%80%94users%20must%20select%20columns%20manually%2C%20which%20is%20less%20intuitive%20than%20click-to-drill%20hierarchies%20
 
in%20other%20BI%20tools%20%28%5Bdiscussion%5D%28https%3A//github.com/apache/superset/discussions/33819%29%29.%0A-%20Drill%20to%20detail%20currently%20shows%20a%20generic%20table%3B%20an%20open%20PR%20proposes%20letting%20dataset%20owners%20configure%20a%20specific%20chart%20as%20the%20drill%20target%20for%20a%20more%20tailored%20experience%20%28%5BPR%20%2334785%5D%28https%3A//github.com/apache/superset/pull/34785%29%29.%0A-%20Drill%20features%20are%20actively%20maintained%20and%20tested%2C%20with%20ongoing%20UX%20improvements%20%28e.g.%2C%20better%20drill-by%20on%20bar%20charts%2C%20cross-filtering%20on%20maps%29%20%28%5BPR%20%2336901%5D%28https%3A//github.com/apache/superset/pull/36901%29%2C%20%5BPR%20%2335859%5D%28https%3A//github.com/apache/superset/pull/35859%29%29.%0A-%20Performance%20and%20security%20depend%20on%20dataset%20size%2C%20query%20complexity%2C%20and%20permissions.%20For%20embedded%20dashboards%2C%20ensure%20guest%20tokens%20have%20the%20right%20drill%20permissions.
 
%0A%0A%2A%2AProduction%20Use%3A%2A%2A%20%20%0AWhile%20there%20are%20no%20published%20case%20studies%20specifically%20about%20drill%20workflows%2C%20Superset%E2%80%99s%20drill%20features%20are%20stable%20and%20used%20in%20production.%20For%20scalable%20deployments%2C%20follow%20best%20practices%20for%20Docker/Kubernetes%2C%20secrets%20management%2C%20and%20CI/CD%20as%20described%20in%20%5Bdeployment%20threads%5D%28https%3A//github.com/apache/superset/discussions/33957%23discussioncomment-13631389%29.%0A%0AIf%20you%20need%20more%20tailored%20drill-through%20UX%20or%20hierarchical%20drill%20down%2C%20keep%20an%20eye%20on%20open%20PRs%20and%20discussions%20for%20upcoming%20features.)&nbsp;[![Join
 
Discord](https://img.shields.io/badge/join-5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share
 on 
X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.c
 om/apache/superset/discussions/37095)

GitHub link: 
https://github.com/apache/superset/discussions/37095#discussioncomment-15484316

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: 
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to