Transparency, one shared dashboard
What we measure, and only this.
This is the same live dashboard we look at ourselves, one shared surface across all four sites in the family: SolutionWright, Universal Natural Intelligence, IamHITL, and EducateWright. Same numbers, same queries. Window it by 24 hours, 30 days, 6 months, 12 months, or all time. Roll it up across the whole family or narrow it to one property. There is no second dashboard with names, emails, or IP addresses; the events table has no column to hold them. Every row below is a derived aggregate. Visitors who send DNT or Sec-GPC arrive unmeasured, by construction.
The one place we keep a name, an email, or the words you typed is when you deliberately submit a form: an application, a contact, a claim to falsify. Those land in a separate leads table on the same appliance, visible only to the operator behind a hardware-key login. That table is never shown here, never summarized here, and colors no number on this page. The split is structural: different table, different database role, different code path, different access control.
What the events table can and cannot hold
The table has no column to hold a name, an email address, an IP address, a raw User-Agent, a cookie identifier, or any free-text message content. Visitors who send DNT or Sec-GPC arrive unmeasured, no row is written, no cookie is set.
Columns that do exist
ts, timestamp of the eventsalted_day_id, a per-day rotating identifier that cannot cross daysname, event kind (page_view, gate_view, etc.), one of a closed allowlistpath, the URL path (never the query string)source_bucket, one of direct, referral, organic-search, paid, social, unknownprops, a small JSONB bag with derived categorical labels; validated against a closed allowlistproperty, one of swu, uni, iamhitl, educatewright, so the same dashboard rolls up or splits by site
How claims are graded on this page
Every count above is Class A (empirical in-session). Every rate is derived from those Class A counts. Where we describe an architectural guarantee (like the columns that do not exist), the class is B (code and schema inspection), and the receipt is a link to the query or the schema.