Dashboard
Current standings — top 10
Loading…
Manage Matches
Loading…
Bulk Add Matches
Format: Match#, Title, Team A, Team B, Date Time IST
Example: 33, GT vs MI, Gujarat Titans, Mumbai Indians, 23 Apr 2026 7:30 PM
Also paste directly from Google Sheets (tab-separated works too).
Enter Results
For historical matches not auto-closed, click ⚡ Force result — it overrides the status and scores everything correctly.
Loading…
Players
Loading…
Bulk Import ResponsesHistorical data
Google Sheets column format: Timestamp, Email, Name, Team
Timestamp format: 4/20/2026 19:30:00 or 2026-04-20 19:30:00 — both accepted.
First row with headers is automatically skipped. Match DB IDs are shown in the table below.
Match ID reference — use DB ID column when importing
Loading…
Email Mapping

Map alias emails → primary email. Prevents players using multiple addresses to get extra votes.

Loading…
View Predictions
Select a match above.
Penalties
Penalties are auto-calculated when results are entered. Delete a row to manually remove a penalty.
Loading…
Leaderboard
As of date:
Loading…
Insights
Loading insights…
Variations & Rules
The Double Header Bonus (+50 pts when a player predicts both matches correct on a 2-match day) is built-in and always active.
Loading…
Bonus Points
Loading…
Team Name Aliases
Map alternate team names to their canonical primary name. For example: RCB → Royal Challengers Bengaluru, Royal Challengers Bangalore → Royal Challengers Bengaluru.
When a player submits a vote with an alias, it is automatically normalized to the primary name.
Loading…
Change Credentials
Your credentials (secret path + password) are stored as Cloudflare Worker Variables — not in the database.

To change your secret path or password:

${['Go to dash.cloudflare.com','Click Workers & Pages in the left sidebar','Click on predictor-league-api','Click the Settings tab','Click Variables and Secrets','Click the pencil icon ✎ next to ADMIN_SECRET_PATH or ADMIN_PASSWORD','Type your new value and click Save and deploy','Wait 30 seconds — your new credentials are active'].map((s,i)=>`
${i+1}
${s}
`).join('')}
Export / Backup
Full JSON export

All matches, votes, scores, penalties, bonuses, players.

Leaderboard CSV

Net points leaderboard for Google Sheets.

Push to Google Sheets

Paste your Apps Script web app URL:

Google Forms webhook URL

Use this URL in your Google Forms Apps Script:

Audit Log
Loading…