HackathonHost vote.rajeevg.comHackathon event day (25 March 2026)GA4

Hackathon reporting surface

Hackathon reporting dashboard

This page is the direct analytics view for the hackathon event day. It focuses on telemetry quality, consent impact, and live competition behavior without mixing in warehouse status.

About this page

Generated 10 May 2026, 07:01 UTC

Production is pinned to the archived hackathon event day (25 March 2026), so this GA4 page ignores newer vote.rajeevg.com resets or replay runs.

Metric and field definitions

Plain-English definitions for every GA4 metric and field used on this page.

Tracked eventsderived
Open

All analytics events GA4 returned for the hackathon host on the live event day.

How to read it

Use this as an activity volume number, not as a vote or judge total.

Tracked usersderived
Open

Distinct GA4 users seen on vote.rajeevg.com during the live event day.

How to read it

This is an analytics audience count, not the official list of judges.

Recorded votesderived
Open

Votes saved by the live voting app, independent of analytics consent.

How to read it

Use this as the official vote ledger. It is the total the public scoreboard is based on.

Tracked vote submissionsderived
Open

GA4 vote_submitted telemetry that matched the live competition entries for the same event day.

How to read it

Use this for trend and measurement quality, not as the final vote count.

Analytics coveragederived
Open

Tracked vote submissions divided by recorded votes.

How to read it

This shows how much of the real vote ledger is visible in analytics.

More derived metrics (5)
Successful judge sign-insderived
Open

judge_auth_completed events captured on the live event day.

How to read it

Use this to see successful sign-ins GA4 observed, not the final list of judges.

Vote modal opensderived
Open

vote_dialog_viewed events that matched the live competition entries.

How to read it

Use this to understand demand for the scoring modal before submissions are counted.

Average vote scorederived
Open

Average score from tracked submissions for that entry on the live event day.

How to read it

Read it as a signal from tracked votes only, not as the official scoreboard average.

Granted page loadsderived
Open

Tracked page_context rows where analytics consent was stored as granted.

How to read it

Use this as a telemetry-state count for tracked page loads, not as a user count or explicit banner-choice total.

Denied page loadsderived
Open

Tracked page_context rows where analytics consent was stored as denied.

How to read it

Use this as a telemetry-state count for tracked page loads, not as a user count or explicit banner-choice total.

Judging state

dimension

customEvent:competition_status

The judging phase the app was in when the event fired.

Typical values or units

preparing, open, finalized

How to read it

Use this to separate setup activity, live judging, and post-results viewing.

Viewer role

dimension

customEvent:viewer_role

The kind of visitor the app believed it was serving when the event fired.

Typical values or units

public, judge, manager

How to read it

Use this to separate public traffic from judges and the organiser account.

Entry name

dimension

customEvent:entry_name

The project name attached to a scoring or voting event.

Typical values or units

What's My Frog, ModelLens, Brief It

How to read it

Use this for human-readable labels in entry-level reporting.

Entry slug

dimension

customEvent:entry_slug

The stable identifier for a hackathon project.

Typical values or units

what-s-my-frog, modellens, brief-it

How to read it

Use this to join related events for the same project even when labels vary slightly.

More schema fields (11)

Entry open for voting

dimension

customEvent:entry_voting_open

Whether the specific project was open to new votes when the event fired.

Typical values or units

true, false

How to read it

Use this to distinguish normal scoring opportunities from closed or paused states.

Viewer eligible to vote

dimension

customEvent:viewer_can_vote

Whether the signed-in viewer was allowed to vote on the project tied to the event.

Typical values or units

true, false

How to read it

Use this to separate real vote opportunities from blocked states.

Viewer already voted

dimension

customEvent:viewer_has_vote

Whether the viewer had already submitted their locked score for that project.

Typical values or units

true, false

How to read it

Use this to separate fresh vote opportunities from already-finished judging.

App section

dimension

customEvent:analytics_section

Which part of the product emitted the event.

Typical values or units

scoreboard, vote_dialog, judge_auth, manager_controls

How to read it

Use this to understand where activity happened inside the app.

Device layout

dimension

customEvent:viewport_category

The responsive layout bucket the app assigned to the session.

Typical values or units

mobile, tablet, desktop

How to read it

Use this to compare behavior across phone and desktop layouts.

Upload method

dimension

customEvent:upload_method

How the organiser chose the workbook file.

Typical values or units

click, drag_drop

How to read it

Use this only for workbook management events.

Vote score

metric

customEvent:score

The single 0 to 10 score chosen in a vote event.

Typical values or units

0-10 points

How to read it

Use this for average-score and score-distribution analysis.

Total score snapshot

metric

customEvent:aggregate_score

The running total score bundled into certain event payloads.

Typical values or units

score points

How to read it

Treat this as a snapshot field, not as the authoritative final leaderboard.

Vote count snapshot

metric

customEvent:vote_count

The running number of votes bundled into certain event payloads.

Typical values or units

count

How to read it

Treat this as a snapshot field, not as the authoritative final vote ledger.

What this page includes

Fresh scope notes, data boundaries, and any proven caveats for this reporting surface.

  • Production is pinned to the archived hackathon event day (25 March 2026), so this GA4 page ignores newer vote.rajeevg.com resets or replay runs.
  • Live mode is reading directly from the shared GA4 property through the official Google Analytics Data API client, scoped to Hackathon event day (25 March 2026).
  • Warehouse reconciliation: the modeled BigQuery dataset currently has 1080 landed rows across 8 tables, and analytics_498363924 currently has 74 landed raw export tables.
  • The route is filtered to vote.rajeevg.com so the hackathon app stays separated from rajeevg.com content analytics even though both live on the same property.
  • Source of truth: the hackathon snapshot reports 297 persisted votes across 9 entries and 37 judges at https://vote.rajeevg.com/api/reporting/public-summary.
  • Tracked analytics coverage: GA4 currently shows 172 vote_submitted events, a gap of 125 versus the persisted vote total (58% coverage).
  • The gap is expected because vote_submitted is client-side telemetry behind analytics consent, while the persisted vote total comes from the live competition snapshot that powers the public scoreboard.
  • Entry-level cards exclude 4 GA4-only entries that do not match the live competition slate, removing 4 tracked submit rows and 5 dialog-view rows from the visible entry analysis.

Consent and measurement

Tracked page loads grouped by the analytics consent state recorded on page_context during the event day.

44

181

44 tracked page loads carried a granted analytics state and 181 carried a denied analytics state. This card is counting page_context rows, not people and not explicit accept-or-deny actions, so it should not be compared directly with the 35 tracked users headline.

4,936

Total hackathon analytics events returned in the current reporting window.

35

Distinct users observed on the hackathon reporting surface in the same window.

297

Authoritative vote rows from the live voting app snapshot that powers the public scoreboard.

168

GA4 vote_submitted events captured as analytics telemetry for the same window.

57%

Tracked vote submissions divided by the source-of-truth recorded vote total.

Top tracked events

The biggest GA4 event groups for the live event day, shown as telemetry rather than as warehouse modeling.

vote_score_selected

judge · (not set)

300

22 users

vote_dialog_viewed

judge · open

205

22 users

vote_submit_started

(not set) · (not set)

172

22 users

vote_submitted

(not set) · (not set)

172

22 users

scoreboard_view_changed

judge · (not set)

46

9 users

More event groups (7)

vote_dialog_viewed

(not set) · open

44

18 users

vote_dialog_viewed

judge · (not set)

40

19 users

vote_score_selected

manager · (not set)

33

1 users

judge_auth_dialog_opened

(not set) · (not set)

28

25 users

judge_auth_email_requested

(not set) · (not set)

27

21 users

scoreboard_view_changed

manager · (not set)

25

2 users

judge_auth_dialog_opened

public · preparing

24

23 users

Entry-by-entry tracking

Real competition entries only, with GA4 demand, tracked submissions, recorded vote totals, and tracked average score.

What's My Frog

what-s-my-frog

Recorded votes 36Analytics coverage 58%

30

21

36

58%

7.4

Brief It

brief-it

Recorded votes 34Analytics coverage 56%

64

19

34

56%

5.5

Planet Killer

planet-killer

Recorded votes 33Analytics coverage 58%

34

19

33

58%

6.7

Trafficker on Steriods

trafficker-on-steriods

Recorded votes 33Analytics coverage 55%

26

18

33

55%

6.4

ModelLens

modellens

Recorded votes 33Analytics coverage 52%

24

17

33

52%

6.6

More entries (4)

Autopull Aliance

autopull-aliance

Recorded votes 32Analytics coverage 59%

79

19

32

59%

6.2

Audience Insights Generator

audience-insights-generator

Recorded votes 32Analytics coverage 59%

33

19

32

59%

6.3

Taxo guard

taxo-guard

Recorded votes 32Analytics coverage 56%

24

18

32

56%

6.2

Planet Assisstant

planet-assisstant

Recorded votes 32Analytics coverage 56%

23

18

32

56%

6.0