The Fantasy Sports League Management System Web App is a multi-user Google Apps Script console for the person who actually runs the leagues: the commissioner. The demo database ships with 8 money leagues, 48 teams, 48 managers, 220 real players, 14 gameweeks and 12,550 seeded rows, and every screen reconciles against the same data – Rs 261,000 collected from Rs 294,000 invoiced, a prize pool of Rs 221,400 after Rs 39,600 of league costs, and points-for that equals points-against in every league table. You get the full source (Code.gs + Index.html), a step-by-step deployment guide and a walkthrough video, deployed into your own Google account in about fifteen minutes. No subscription, no seat licence, no data leaving your Drive.

Try the Live Demo Before You Buy
We have deployed this web app in our own Google account so you can test every page and every role – with the full seeded season – before purchasing. No signup, no email required.
Test Login Credentials
Sign in as admin to see everything including Users, Settings and the Database Archive; as commissioner to approve trades and waivers and run the money; as scorer to enter stat lines and recompute scores with no access to money or settings; as treasurer to work the invoices, payouts and fines; or as manager for the read-only view a league member gets. All fourteen seeded accounts are listed below – sign in as the most restricted one first and you will see the point of the permission model in ten seconds.
These credentials are public on purpose. The demo is one shared instance that resets, seeded with sample managers and sample money – it is not anybody’s live league, and it is not the deployment you buy. What you get after purchase: the full source (Code.gs + Index.html) plus a deployment guide, so you run your own private copy in your own Google account, with your own logins, in under fifteen minutes.
Key Features of the Fantasy Sports League Management System Web App
- Eight leagues on one console. The Season control room totals every league at once – active leagues, gameweeks played, fees collected, prize pool and a “Waiting on you” counter that is exactly the pending trades plus the pending waiver claims (16 + 13 = 29 in the demo).
- Per-league scoring rulesets. Each league prices the same 16 real-world events its own way – 60+ minutes, goals split by position, assists, clean sheets, saves per three, goals conceded per two, cards, penalties saved and missed, own goals and bonus. Eight leagues x 16 events = 128 rules, all editable.
- Starters-only scoring with a captain multiplier. A roster holds eleven players; exactly seven start in a 1-2-2-2 shape; the captain scores double and the bench scores nothing. The legality banner checks it on every save.
- Draft board with four draft types. Snake, auction, linear or autopick, recorded round by round – 66 picks across 11 rounds per league, with the snake order visibly reversing every round.
- Trades, waivers and free agency that actually move players. 61 trades and 98 waiver claims in the demo, processed in waiver priority order against a free agent budget; approving one swaps the players on the roster from the effective gameweek onward.
- Money that adds up. One invoice per league entry (72 invoices, Rs 294,000), part payments, receipts, a prize pool that can never exceed what was received, payout splits that must total 100%, and 70 penalties and fines with paid, outstanding and waived states.
- Head-to-head standings that balance. Three points for a win, one for a tie, and a Record integrity card that confirms wins + losses + ties equals games played and points-for equals points-against across the league.
- Fourteen filterable reports, each with Print and CSV – league summary, standings table, draft results, roster compliance exceptions, gameweek scoreboard, team scoring breakdown, top scorers, player ownership and more.
- Five roles, enforced twice. Admin (52 permissions), Commissioner (48), Scorer (23), Manager (18) and Treasurer (16). The map decides which sidebar entries appear and is checked again on the server before any record is read or written.
- Audit log, announcements and archive. 424 recorded actions across 11 action types, 45 announcements in 6 categories with optional email, and a Database Archive that copies the whole database to Drive before removing only closed transaction rows older than your cutoff.
What’s Inside the Fantasy Sports League Management System Web App

The download is a ZIP containing three files: Code.cs.txt (the server code you paste into Code.gs), Index.txt (the single-page front end you paste into an HTML file named Index) and a 32-page user manual PDF covering deployment, first-run setup, every module and the reports. Setup builds its own Google Sheet database – the project does not need to be bound to a spreadsheet – and is staged and resumable, so it finishes safely inside a free Gmail account’s execution limits.
| Area | Screens | What it holds in the demo |
|---|---|---|
| Overview | Dashboard | 8 KPI cards, average team score by gameweek, leading teams, league money position |
| League setup | Leagues, Managers, Teams, Players, Scoring Rules | 8 leagues, 48 managers, 48 teams, 220 players (40 GK / 80 DEF / 60 MID / 40 FWD), 128 scoring rules |
| Season | Fixtures & Gameweeks, Draft Board, Rosters, Player Stat Lines, Weekly Scores, Standings, Head-to-Head | 14 gameweeks, 140 fixtures, 528 draft picks, 6,996 roster rows, 2,420 stat lines, 528 weekly scores, 318 matchups |
| Roster moves | Trades, Waiver Claims, Free Agency | 61 trades, 98 claims, 180 logged movements (87 in, 93 out) |
| Money | Entry Fees & Payments, Prize Pool & Payouts, Penalties & Fines | 72 invoices, 25 payouts, 70 penalties |
| Communication | Announcements, Reports, Audit Log | 45 announcements, 14 reports, 424 audit entries |
| Administration | Users, Lists, Settings, Database Archive | 14 accounts, 23 dropdown lists with 128 values, 9 settings groups, 11,905 archivable rows |
| Support | Help, Get More Templates | Default scoring reference and a 14-term glossary |
Fantasy League Web App vs. a Spreadsheet vs. a Paid Fantasy Platform – Where This Fits
| This web app | A shared spreadsheet | Paid fantasy platform (Sleeper Pro, Fantrax Commissioner) | |
|---|---|---|---|
| Cost | One payment, source included | Free | Per league, per season, recurring |
| Platform | Google Apps Script web app on your own Google account | Google Sheets or Excel | Vendor’s cloud |
| Setup time | About 15 minutes, then one setup run | Hours of formula work per league | Minutes |
| Real-time team collaboration | Yes – multi-user with five roles | Yes, but everyone sees everything | Yes |
| Mobile access | Yes, responsive in any browser | Clumsy on phones | Yes, native apps |
| Customisable fields and rules | Yes – edit the source and the 23 dropdown lists | Yes | Only what the vendor exposes |
| Share with a link | Yes, your own /exec URL | Yes | Yes |
| Year-1 cost at 5 users | The purchase price, once | Free | Typically a per-league fee every season |
| Entry fees, prize pool and payouts | Full ledger with part payments and fines | Manual, error-prone | Often add-on or absent |
| Live stat feed from real fixtures | No – stat lines are entered or imported by a scorer | No | Yes, automatic |
| Your data stays in your Drive | Yes | Yes | No |
The honest trade is right there in the second-to-last row. A commercial platform pulls stat lines automatically from a data provider; this system does not, and cannot. It gives you the ledger, the roles, the audit trail and the money in exchange for a scorer entering or importing the numbers each gameweek and pressing Recompute scores.
Who This Template Is For – and Who It’s Not For
It is for the commissioner who runs several paid leagues at once and is tired of a spreadsheet plus a chat group; office and society leagues that collect entry fees and owe payouts; local sports clubs running a fantasy competition alongside a real one; and anyone who wants the source code rather than a subscription.
It is not for you if you want automatic stat lines from a live sports data feed, a public sign-up page for strangers, in-app payments, or a native mobile app. It is not a betting or gambling platform, it takes no money and moves no money, and it does not make a paid league legal, licensed or compliant anywhere – the entry-fee and prize-pool screens are a bookkeeping record of what you collected and owe, nothing more. Check your own local rules before you run a money league.
How to Use the Fantasy Sports League Management System Web App
- Try the live demo first using the credentials above. Sign in as
managerto see the read-only view, then ascommissionerto see what approval actually does. - Deploy your own copy. New Apps Script project, paste Code.cs.txt into Code.gs, add an HTML file named exactly
Indexand paste Index.txt, then Deploy > New deployment > Web app, execute as Me, access Anyone. - Run setup once from the “First run” panel on the sign-in card. It is staged and resumable, and it creates the Google Sheet database in your Drive.
- Sign in as admin and change the password immediately – use the key icon, the Users screen, or
resetAdminPassword('YourNewPassword')in the editor. - Set your Settings. Organisation details, season label and gameweek count, currency code and symbol, invoice and receipt prefixes, the default payout split, the three default fine amounts, the roster rules, the lineup lock window, the free agent budget, print size and email switches.
- Build the season. Create leagues, add managers and teams, load the player pool, price the scoring ruleset, generate gameweeks and fixtures, then run the draft.
- Each gameweek: managers set lineups before the lock, the scorer enters or imports stat lines, presses Recompute scores, and the weekly scores, standings and head-to-head results follow automatically.
- Keep the money straight. Raise invoices, record receipts, release payouts against the remaining prize pool, and issue or waive fines – then back up from Settings > Database.
Real-World Use Cases
Ananya runs eight office leagues. She used to keep one spreadsheet tab per league and a WhatsApp group for approvals. Now the dashboard tells her that 29 items are waiting on her, and the trade and waiver screens show exactly who gives what to whom from which gameweek – approval moves the players itself.
Priya is the treasurer. She never touches lineups. Her sign-in shows the invoice ledger, the prize pool and the fines – Rs 33,000 still to collect, Rs 11,750 of fines outstanding – and a read-only view of the standings so she can see which leagues are close to paying out.
Devendra scores the gameweek. He opens Player Stat Lines, enters minutes, goals, assists, clean sheets, saves, cards and bonus for the round, presses Recompute scores, and every team total, standing and head-to-head result updates from the same numbers – with his name against each row in the audit log.
Frequently Asked Questions
Can I try it before buying?
Yes. The live demo above is a full deployment with the whole seeded season in it – all eight leagues, the draft board, the money and the audit log. The credentials are public on purpose; it is a shared demo instance that resets, not anyone’s live league.
Does it pull player stats automatically from real matches?
No. There is no live sports data feed and no provider API. A scorer enters stat lines by hand or imports them, then presses Recompute scores. Everything downstream – team scores, standings, head-to-head, reports – is calculated from those rows.
Does it take entry fees or pay out prize money?
No. There is no payment gateway, no card storage and no transfer of funds. The Payment Method field is a label you record against a receipt you have already taken. The system is the ledger, not the bank.
Where does the data live, and who can see it?
In one Google Sheet in your own Google Drive, created by the setup routine. Nothing is sent to us. Passwords are stored as salted SHA-256 hashes and can only be reset, never recovered, and sessions expire after 12 hours.
Can I change the scoring rules?
Yes, per league. The Scoring Rules screen prices 16 events and each league has its own copy, so a defender’s goal can be worth six points in one league and something else in another. You can also add rules, or set any of them inactive.
How many leagues and managers can it hold?
There is no coded cap – the demo carries 8 leagues, 48 teams and 12,550 rows comfortably. Google Sheets and the Apps Script execution quota are the practical limits, and the Database Archive exists precisely to keep the live sheet small by moving closed transaction rows into a dated copy in Drive.
What currency does it use?
The demo is seeded in Indian rupees because that is the sample data we shipped. The currency code and symbol are a Settings field under Money – change them once and every screen, receipt and report follows.
About the Author
Built by PK – Microsoft Certified Professional with 15+ years of Excel, Google Sheets, and Power BI experience. Founder of NextGenTemplates, reaching 300K+ subscribers across YouTube channels. Every template is hand-built and tested before release.
Explore Related Templates
- Club & Association Membership Management System Web App – if the dues and the member register matter more than the scoring.
- CrossFit Box Management System Web App – memberships, check-ins and coaching for a training business.
- Adventure Sports Booking Management System Web App – bookings, sessions and instructors instead of leagues.
- Bowling Alley Management System Web App – lanes, front-desk POS and league nights at a venue.
- Concert & Ticketing Management System Web App – if you sell seats to the event as well as run it.
- Browse the full Web Apps category or the whole template shop.
Get the Fantasy Sports League Management System Web App
Full source, a 32-page manual and a walkthrough video, deployed in your own Google account in about fifteen minutes – try the live demo first, then buy the copy you own. A full walkthrough is on the blog: Fantasy Sports League Management System Web App.
Last updated: 2 September 2026.










































Reviews
There are no reviews yet.