Architecture · Diagram Design
Product Analytics (Streamlit)
Product Analytics (Streamlit) architecture
Architecture of the Streamlit product-analytics demo: a deterministic data.py generator builds an 8,000-user synthetic SaaS dataset, get_data() caches it once per session, the five-page AARRR app (Overview, Funnel, Retention, Revenue, Segments) consumes it through pure-pandas metric helpers, and the results render as Plotly figures through st.plotly_chart, st.metric and st.dataframe.
SYNTHETIC SOURCE
STREAMLIT APP · 5 PAGES
RENDER LAYER
GENERATE
CACHE
FRAMES
PG.RUN()
METRICS
SERIES
PLOTLY_CHART
PY
data.py
generate() · seed 42 · 8,000 users
DATA
Synthetic dataset · 3 frames
users · events · subscriptions
DATA
get_data() · @st.cache_data
cached once per session
shared by all 5 pages
APP
app.py · st.navigation
st.Page ×5 · sidebar nav
APP
Overview
KPIs · DAU · channel conv.
APP
Funnel
app_open → subscribe
APP
Retention
signup month × month N
APP
Revenue
MRR · plan mix · ARPU
APP
Segments
segment · channel · device
PY
Metric helpers
data.py:127+ · pure pandas
VIEW
Plotly figures
px.area · go.Funnel · go.Heatmap
VIEW
Render surface
st.plotly_chart · st.metric · st.dataframe
LEGEND
PY · Python module
DATA · dataset & cache
APP · Streamlit page
VIEW · chart & render
Default flow
Accent · cache step