Internal · Founders' cockpit
Operations dashboard
Panel A
Business & users
Signups per day
Onboarding funnel
signed up → verified → criteria saved → first digest · “—” = not tracked yet
Top companies picked
Top cities picked
Top areas picked
Recent signups
last 20 only — the single PII element on this page. The Emails toggle pauses/resumes a user's digests (account and login stay untouched).
Panel B
Delivery
Alert emails: postings delivered per day
Top receivers
by user id (pseudonymous) — a flooded inbox is a churn risk
Panel C
Listings & data engine
New postings per day
Delistings per day
New postings by company
Active postings by area
Unmapped departments
taxonomy.yaml candidates
Unmapped locations
cities.json candidates
Location conflicts
stored country vs recognized city
Panel D
Ops & scraper health
Run history
Adapter staleness board
time since last successful scrape · red > 24h
Panel E
Feedback
Week-one survey responses
newest first · by user id (pseudonymous, like top receivers) · free text verbatim
Where the rest of the feedback lives
the other two channels are email-only by design — nothing to ingest here
The week-one survey above is the only feedback channel stored in a database. The other two go straight to the support mailbox and are told apart by subject line:
| Channel | Where it lands |
|---|---|
| Site feedback form | Mailbox, subject “Feedback via internship-monitor (<page>)” — the page marker says which page it was sent from |
| Criteria micro-survey | Mailbox, subject “Criteria survey via internship-monitor” |
| Week-one survey | This panel (users.db) — the one channel with structured answers worth aggregating |
Email-only is deliberate: no second datastore means no second GDPR purge duty. To split form feedback by source, filter the mailbox by the subject's page marker.