VELOCITY ARENA SPREADSHEETS · REFERENCE

REFERENCEFacilitator data infrastructure

Spreadsheets that power Velocity Arena.

Five distinct Google Sheets integrations move data between students, facilitators, and the dashboard. This page lists every file that writes to or reads from a Google Sheet, what each one needs from the facilitator, and where to look when something stops working.

01 Student lesson submissions. 1 shared sheet

Six lesson pages POST student work to the same Apps Script web app (AKfycbzV0_UPT…). Every student response across these six lessons lands in one shared spreadsheet, one row per submission.

File What it writes
lessons/speed-stat.html (+ es/) Day 1 Speed-stat lesson answers
lessons/endurance-stat.html (+ es/) Day 2 Endurance-stat lesson answers
lessons/endurance-discovery.html (+ es/) Day 2 Endurance discovery responses
lessons/power.html (+ es/) Day 4 Power lesson answers
lessons/power-stat-challenge.html (+ es/) Day 4 Power-challenge answers
lessons/prove-your-build.html (+ es/) Day 5 Prove-Your-Build commitment
Spreadsheet Velocity Arena Loadouts ↗
Facilitator action Open Velocity Arena Loadouts to see who completed which lesson, with what answers. One sheet is the source of truth across all six lessons. If a row is missing, check the student's browser console — the form will console.error on failure.
02 Live Dashboard + Leaderboard. Per-site sheet

The match dashboard and leaderboard route to different spreadsheets per pilot site. Each site has its own Apps Script web app that writes to its own sheet, keyed by the cohortTag in the URL.

File Sites it routes to
activities/dashboard/velocity-arena-dashboard.html Tennessee · NYC 1 (Gotham Tech) · NYC 2 (Claremont) · NYC 3 (South Bronx Community Charter)
activities/dashboard/leaderboard.html Tennessee (reads from the same per-site routing)
Per-site spreadsheets Velocity Arena · NYC 1 · Gotham Tech ↗ Velocity Arena · NYC 2 · Claremont ↗ Velocity Arena · NYC 3 · South Bronx ↗ Velocity Arena · Tennessee ↗
Facilitator action Match data lands in the per-site spreadsheet matched by the cohortTag in the dashboard URL. If your site shows empty data, two things to check: (1) the right cohortTag is in the URL, (2) the site's Apps Script web app is deployed and redeployed after any code changes — editing a script doesn't redeploy it.
03 Pre-Task Diagnostic (Day 1). Per-state sheet

Each state pilot site (MI, NY, RI, TN) has its own diagnostic spreadsheet. The student-facing diagnostic page writes through a service account (not via Apps Script), and the growth dashboard reads from those sheets to produce the per-concept comparison.

File Purpose
activities/diagnostic/SETUP.md The setup walkthrough. Step-by-step instructions for creating a state-specific Google Sheet, a Google Cloud service account, and connecting them. ~15-minute one-time setup per state.
activities/diagnostic/index.html Where students take the Day 1 pre-task — writes through the service account
activities/diagnostic-post/index.html Where students take the Day 15 post-task — same sheet, marked "post"
activities/diagnostic-dashboard/index.html Anonymized per-concept growth comparison, pre vs. post
Pre-task spreadsheets · Day 1 Pre · NYC 1 · Gotham Tech ↗ Pre · NYC 2 · Claremont ↗ Pre · NYC 3 · South Bronx ↗ Pre · Tennessee ↗
Post-task spreadsheets · Day 15 Post · NYC 1 · Gotham Tech ↗ Post · NYC 2 · Claremont ↗ Post · NYC 3 · South Bronx ↗ Post · Tennessee ↗
Facilitator action Every state pilot needs its own pre- and post-task sheets configured per SETUP.md before Day 1. Without them, the diagnostic UI submits but no row lands anywhere — you'll lose your baseline. The Growth Dashboard only shows progress when both pre and post rows exist for the same student.
04 Student Reflection surveys (Day 1 + Day 15). Per-site sheet

The pre- (Day 1) and post-program (Day 15) reflection surveys ask about math confidence, belonging, and identity. Each pilot site has one reflection spreadsheet with two tabs — Reflection Pre and Reflection Post — written by a dedicated per-site Apps Script web app. The Anonymize export reads both tabs and joins them to the roster by token (no names leave the source sheets).

File Purpose
activities/reflection/index.html Where students take the Day 1 pre-reflection — writes to the site's Reflection Pre tab on Hand in
activities/reflection-post/index.html Where students take the Day 15 post-reflection — same workbook, Reflection Post tab
Reflection spreadsheets · one per site (Pre + Post tabs) NYC 1 · Gotham Tech ↗ NYC 2 · Claremont ↗ NYC 3 · South Bronx ↗ Tennessee · Crosstown ↗
Facilitator action Each site's reflection workbook must be shared with the Anonymize export account, and its reflection Apps Script deployed with access set to Anyone (not "Anyone with Google account," which blocks not-signed-in students). The Reflection Matched tab in the export workbook computes pre→post gain scores per token.
05 What-If Loadout Analysis. 1 sheet · CSV + Apps Script

The Week 3 What-If analysis reads loadout data from a Google Sheet published to web as CSV, and writes lock-ins back via an Apps Script publish endpoint.

File Purpose
lessons/what-if/index.html Facilitator setup instructions — how to publish the spreadsheet as CSV and where to paste the URL
lessons/what-if-analysis.html The student-facing lesson that reads the published CSV at run time
Spreadsheet What-If Analysis ↗
Facilitator action The spreadsheet must be File → Share → Publish to web → CSV before the student page can read it. The student page caches the CSV — if you update the sheet, give it a minute to propagate, or have students hard-refresh.
06 Summary — five spreadsheet groups at a glance.
# Spreadsheet group Writes from Reads to Facilitator setup
01 Lesson submissions (1 shared) 6 lesson pages The sheet directly Just open the sheet to see student work
02 Match dashboard (per-site) Dashboard UI Dashboard + Leaderboard Deploy site's Apps Script web app, paste URL into config.js
03 Pre/Post Diagnostic (per-state) Diagnostic UI Growth Dashboard Follow SETUP.md once per state
04 Reflection surveys (per-site, Pre + Post) Reflection UI (Day 1 + 15) Anonymize export → Reflection Matched Share workbook with export account; deploy script as "Anyone"
05 What-If analysis (1 sheet, multi-tab) Apps Script publish endpoint What-If lesson Publish sheet as CSV