{
  "title": "Best High School Musicals and Plays by Cast Size (2026)",
  "url": "https://scripttostage.app/shows/proven-hits",
  "updated": "2026-10-30",
  "notes": "Cast is the minimum workable cast. Box office is cumulative Broadway gross. Sources are listed on the page.",
  "categories": [
    {
      "id": "large-musicals",
      "name": "Large-cast musicals (18+)",
      "shows": [
        {
          "rank": 1,
          "name": "The Phantom of the Opera",
          "cast": "18+",
          "licensor": "Concord Theatricals",
          "run": "13,981 perfs (1988-2023)",
          "box_office": "$1.36B",
          "best_for": "Programs with trained voices",
          "url": "https://scripttostage.app/shows/the-phantom-of-the-opera-2"
        },
        {
          "rank": 2,
          "name": "Mamma Mia!",
          "cast": "18+",
          "licensor": "MTI",
          "run": "5,758 perfs (2001-15)",
          "box_office": "$670M",
          "best_for": "Full-company showcase",
          "url": "https://scripttostage.app/shows/mamma-mia"
        },
        {
          "rank": 3,
          "name": "Les Misérables: School Edition",
          "cast": "18+",
          "licensor": "MTI",
          "run": "6,680 perfs (1987-2003)",
          "box_office": "$515M",
          "best_for": "Ambitious programs",
          "url": "https://scripttostage.app/shows/les-miserables-school-edition"
        },
        {
          "rank": 4,
          "name": "Disney's Beauty and the Beast",
          "cast": "18+",
          "licensor": "MTI",
          "run": "5,462 perfs (1994-2007)",
          "box_office": "$429M",
          "best_for": "Family audiences",
          "url": "https://scripttostage.app/shows/beauty-and-the-beast"
        },
        {
          "rank": 5,
          "name": "Hairspray",
          "cast": "18+",
          "licensor": "MTI",
          "run": "2,642 perfs (2002-09)",
          "box_office": "$252M",
          "best_for": "Big dance ensembles",
          "url": "https://scripttostage.app/shows/hairspray"
        },
        {
          "rank": 6,
          "name": "Mary Poppins",
          "cast": "18+",
          "licensor": "MTI",
          "run": "2,619 perfs (2006-13)",
          "box_office": "$295M",
          "best_for": "Family audiences",
          "url": "https://scripttostage.app/shows/mary-poppins"
        },
        {
          "rank": 7,
          "name": "Grease: School Version",
          "cast": "18+",
          "licensor": "Concord Theatricals",
          "run": "3,388 perfs (1972-80) + 1,505 (1994)",
          "box_office": "n/a",
          "best_for": "Crowd-pleasing nostalgia",
          "url": "https://scripttostage.app/shows/grease-school-edition"
        },
        {
          "rank": 8,
          "name": "Fiddler on the Roof",
          "cast": "18+",
          "licensor": "MTI",
          "run": "3,242 perfs (1964-72)",
          "box_office": "n/a",
          "best_for": "Strong ensemble programs",
          "url": "https://scripttostage.app/shows/fiddler-on-the-roof"
        },
        {
          "rank": 9,
          "name": "Annie",
          "cast": "18+",
          "licensor": "MTI",
          "run": "2,377 perfs (1977-83)",
          "box_office": "n/a",
          "best_for": "Younger performers",
          "url": "https://scripttostage.app/shows/annie"
        },
        {
          "rank": 10,
          "name": "Matilda",
          "cast": "18+",
          "licensor": "MTI",
          "run": "1,554 perfs (2013-17)",
          "box_office": "n/a",
          "best_for": "Mixed-age casts",
          "url": "https://scripttostage.app/shows/roald-dahls-matilda-the-musical"
        }
      ]
    },
    {
      "id": "medium-musicals",
      "name": "Medium-cast musicals (11 to 17)",
      "shows": [
        {
          "rank": 1,
          "name": "Chicago: Teen Edition",
          "cast": "11-17",
          "licensor": "Concord Theatricals",
          "run": "11,808 perfs (1996-present)",
          "box_office": "$874M",
          "best_for": "Programs with strong dancers",
          "url": "https://scripttostage.app/shows/chicago-teen-edition"
        },
        {
          "rank": 2,
          "name": "Hadestown: Teen Edition",
          "cast": "11-17",
          "licensor": "Concord Theatricals",
          "run": "2,508 perfs (2019-present)",
          "box_office": "$282M",
          "best_for": "Strong vocal programs",
          "url": "https://scripttostage.app/shows/hadestown-teen-edition"
        },
        {
          "rank": 3,
          "name": "Kinky Boots",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "2,505 perfs (2013-19)",
          "box_office": "$319M",
          "best_for": "Programs ready for the content notes",
          "url": "https://scripttostage.app/shows/kinky-boots"
        },
        {
          "rank": 4,
          "name": "Rent: School Edition",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "5,123 perfs (1996-2008)",
          "box_office": "$274M",
          "best_for": "Rock-driven programs",
          "url": "https://scripttostage.app/shows/rent-school-edition"
        },
        {
          "rank": 5,
          "name": "Spamalot",
          "cast": "11-17",
          "licensor": "TRW",
          "run": "1,575 perfs (2005-09)",
          "box_office": "n/a",
          "best_for": "Comedy fans",
          "url": "https://scripttostage.app/shows/monty-pythons-spamalot"
        },
        {
          "rank": 6,
          "name": "Pippin",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "1,944 perfs (1972-77)",
          "box_office": "n/a",
          "best_for": "Ensemble storytelling",
          "url": "https://scripttostage.app/shows/pippin-revival-version"
        },
        {
          "rank": 7,
          "name": "In the Heights",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "1,184 perfs (2008-11)",
          "box_office": "n/a",
          "best_for": "Dance-heavy programs",
          "url": "https://scripttostage.app/shows/in-the-heights"
        },
        {
          "rank": 8,
          "name": "The Addams Family",
          "cast": "11-17",
          "licensor": "TRW",
          "run": "722 perfs (2010-11)",
          "box_office": "n/a",
          "best_for": "Programs wanting the most-produced pick",
          "url": "https://scripttostage.app/shows/the-addams-family-musical"
        },
        {
          "rank": 9,
          "name": "Into the Woods",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "765 perfs (1987-89)",
          "box_office": "n/a",
          "best_for": "Strong vocal casts",
          "url": "https://scripttostage.app/shows/into-the-woods"
        },
        {
          "rank": 10,
          "name": "Legally Blonde",
          "cast": "11-17",
          "licensor": "MTI",
          "run": "595 perfs (2007-08)",
          "box_office": "n/a",
          "best_for": "Broad teen appeal",
          "url": "https://scripttostage.app/shows/legally-blonde-the-musical"
        }
      ]
    },
    {
      "id": "small-musicals",
      "name": "Small-cast musicals (10 or fewer)",
      "shows": [
        {
          "rank": 1,
          "name": "The Fantasticks",
          "cast": "8",
          "licensor": "MTI",
          "run": "17,162 perfs off-Broadway (1960-2002)",
          "box_office": "n/a",
          "best_for": "Intimate staging",
          "url": "https://scripttostage.app/shows/the-fantasticks"
        },
        {
          "rank": 2,
          "name": "Little Shop of Horrors",
          "cast": "9",
          "licensor": "MTI",
          "run": "2,210 perfs off-Broadway (1982-87)",
          "box_office": "n/a",
          "best_for": "Crowd-pleasing comedy",
          "url": "https://scripttostage.app/shows/little-shop-of-horrors"
        },
        {
          "rank": 3,
          "name": "I Love You, You're Perfect, Now Change",
          "cast": "4",
          "licensor": "MTI",
          "run": "5,003 perfs off-Broadway (1996-2008)",
          "box_office": "n/a",
          "best_for": "Very small casts",
          "url": "https://scripttostage.app/shows/i-love-you-youre-perfect-now-change"
        },
        {
          "rank": 4,
          "name": "Nunsense",
          "cast": "5",
          "licensor": "Nunsense Theatricals",
          "run": "3,672 perfs off-Broadway (from 1985)",
          "box_office": "n/a",
          "best_for": "Comedy with a small cast",
          "url": "https://scripttostage.app/shows/nunsense"
        },
        {
          "rank": 5,
          "name": "Smokey Joe's Cafe",
          "cast": "9",
          "licensor": "MTI",
          "run": "2,036 perfs (1995-2000)",
          "box_office": "n/a",
          "best_for": "Strong singers",
          "url": "https://scripttostage.app/shows/smokey-joes-cafe"
        },
        {
          "rank": 6,
          "name": "Godspell",
          "cast": "10",
          "licensor": "MTI",
          "run": "2,124 perfs off-Broadway (1971-76) + 527 Broadway",
          "box_office": "n/a",
          "best_for": "Ensemble casts",
          "url": "https://scripttostage.app/shows/godspell"
        },
        {
          "rank": 7,
          "name": "Ain't Misbehavin'",
          "cast": "5",
          "licensor": "MTI",
          "run": "1,604 perfs (1978-82)",
          "box_office": "n/a",
          "best_for": "Vocal showcase",
          "url": "https://scripttostage.app/shows/aint-misbehavin"
        },
        {
          "rank": 8,
          "name": "The 25th Annual Putnam County Spelling Bee",
          "cast": "9",
          "licensor": "MTI",
          "run": "1,136 perfs (2005-08)",
          "box_office": "n/a",
          "best_for": "Comedy",
          "url": "https://scripttostage.app/shows/the-25th-annual-putnam-county-spelling-bee"
        },
        {
          "rank": 9,
          "name": "Forever Plaid",
          "cast": "4",
          "licensor": "MTI",
          "run": "Off-Broadway (1989-94)",
          "box_office": "n/a",
          "best_for": "Four strong singers",
          "url": "https://scripttostage.app/shows/forever-plaid"
        },
        {
          "rank": 10,
          "name": "Dear Evan Hansen",
          "cast": "8",
          "licensor": "MTI",
          "run": "1,672 perfs (2016-22)",
          "box_office": "$270M",
          "best_for": "Programs ready for the content",
          "url": "https://scripttostage.app/shows/dear-evan-hansen"
        }
      ]
    },
    {
      "id": "large-plays",
      "name": "Large-cast plays (18+)",
      "shows": [
        {
          "rank": 1,
          "name": "A Christmas Carol",
          "cast": "Flexible",
          "licensor": "Varies by adaptation",
          "run": "Annual regional staging",
          "box_office": "n/a",
          "best_for": "Holiday season, big ensembles",
          "url": "https://scripttostage.app/shows/a-christmas-carol"
        },
        {
          "rank": 2,
          "name": "You Can't Take It With You",
          "cast": "19",
          "licensor": "Concord Theatricals",
          "run": "838 perfs (1936-38)",
          "box_office": "n/a",
          "best_for": "Comedy with a big cast",
          "url": "https://scripttostage.app/shows/you-cant-take-it-with-you"
        },
        {
          "rank": 3,
          "name": "Arsenic and Old Lace",
          "cast": "14 + extras",
          "licensor": "Dramatists Play Service",
          "run": "1,444 perfs (1941-44)",
          "box_office": "n/a",
          "best_for": "Comedy, flexible casting",
          "url": "https://scripttostage.app/shows/arsenic-and-old-lace"
        },
        {
          "rank": 4,
          "name": "The Crucible",
          "cast": "About 21",
          "licensor": "Dramatists Play Service",
          "run": "Broadway 1953, revivals 2002 and 2016",
          "box_office": "n/a",
          "best_for": "Serious drama",
          "url": "https://scripttostage.app/shows/the-crucible"
        },
        {
          "rank": 5,
          "name": "Our Town",
          "cast": "About 20+",
          "licensor": "Concord Theatricals",
          "run": "644 perfs off-Broadway (2009-10)",
          "box_office": "n/a",
          "best_for": "Flexible casting",
          "url": "https://scripttostage.app/shows/our-town"
        },
        {
          "rank": 6,
          "name": "Inherit the Wind",
          "cast": "About 20 + crowd",
          "licensor": "Dramatists Play Service",
          "run": "806 perfs (1955-57)",
          "box_office": "n/a",
          "best_for": "Courtroom drama",
          "url": "https://scripttostage.app/shows/inherit-the-wind"
        },
        {
          "rank": 7,
          "name": "The Man Who Came to Dinner",
          "cast": "About 22",
          "licensor": "Dramatists Play Service",
          "run": "739 perfs (1939-41)",
          "box_office": "n/a",
          "best_for": "Comedy",
          "url": "https://scripttostage.app/shows/the-man-who-came-to-dinner"
        },
        {
          "rank": 8,
          "name": "A Midsummer Night's Dream",
          "cast": "Large, flexible",
          "licensor": "Public domain",
          "run": "n/a",
          "box_office": "n/a",
          "best_for": "No royalty",
          "url": "https://scripttostage.app/shows/a-midsummer-nights-dream"
        },
        {
          "rank": 9,
          "name": "To Kill a Mockingbird",
          "cast": "About 20",
          "licensor": "Dramatic Publishing",
          "run": "n/a",
          "box_office": "n/a",
          "best_for": "Classroom tie-ins",
          "url": "https://scripttostage.app/shows/to-kill-a-mockingbird"
        },
        {
          "rank": 10,
          "name": "Alice in Wonderland",
          "cast": "Large, flexible",
          "licensor": "Varies by adaptation",
          "run": "n/a",
          "box_office": "n/a",
          "best_for": "Younger audiences",
          "url": "https://scripttostage.app/shows/alice-in-wonderland"
        }
      ]
    },
    {
      "id": "medium-plays",
      "name": "Medium-cast plays (11 to 17)",
      "shows": [
        {
          "rank": 1,
          "name": "Life with Father",
          "cast": "About 16",
          "licensor": "Dramatists Play Service",
          "run": "3,224 perfs (1939-47)",
          "box_office": "n/a",
          "best_for": "Traditional comedy",
          "url": "https://scripttostage.app/shows/life-with-father"
        },
        {
          "rank": 2,
          "name": "Harvey",
          "cast": "About 12",
          "licensor": "Dramatists Play Service",
          "run": "1,775 perfs (1944-49)",
          "box_office": "n/a",
          "best_for": "Classic comedy",
          "url": "https://scripttostage.app/shows/harvey"
        },
        {
          "rank": 3,
          "name": "Clue: High School Edition",
          "cast": "About 10-14",
          "licensor": "Concord Theatricals",
          "run": "US tour since Feb 2024",
          "box_office": "n/a",
          "best_for": "Comedy fans",
          "url": "https://scripttostage.app/shows/clue-high-school-edition"
        },
        {
          "rank": 4,
          "name": "Peter and the Starcatcher",
          "cast": "12",
          "licensor": "MTI",
          "run": "Broadway 2012, off-Broadway to Jan 2014",
          "box_office": "n/a",
          "best_for": "Ensemble storytelling",
          "url": "https://scripttostage.app/shows/peter-and-the-starcatcher"
        },
        {
          "rank": 5,
          "name": "The Curious Incident of the Dog in the Night-Time",
          "cast": "About 10 + ensemble",
          "licensor": "Concord Theatricals",
          "run": "800 perfs (2014-16)",
          "box_office": "n/a",
          "best_for": "Serious drama",
          "url": "https://scripttostage.app/shows/the-curious-incident-of-the-dog-in-the-night-time"
        },
        {
          "rank": 6,
          "name": "Puffs",
          "cast": "11",
          "licensor": "Puffs Theatricals",
          "run": "Off-Broadway (July 2017-Aug 2019)",
          "box_office": "n/a",
          "best_for": "Comedy fans",
          "url": "https://scripttostage.app/shows/puffs"
        },
        {
          "rank": 7,
          "name": "Twelve Angry Men / Jurors",
          "cast": "15",
          "licensor": "Dramatic Publishing",
          "run": "Broadway 2004-05, US tour 2006-08",
          "box_office": "n/a",
          "best_for": "Ensemble drama",
          "url": "https://scripttostage.app/shows/twelve-angry-men"
        },
        {
          "rank": 8,
          "name": "The Diary of Anne Frank",
          "cast": "13",
          "licensor": "Dramatists Play Service",
          "run": "717 perfs (1955-57)",
          "box_office": "n/a",
          "best_for": "Serious drama",
          "url": "https://scripttostage.app/shows/the-diary-of-anne-frank"
        },
        {
          "rank": 9,
          "name": "Radium Girls",
          "cast": "10, expandable to 30+",
          "licensor": "Dramatic Publishing",
          "run": "n/a",
          "box_office": "n/a",
          "best_for": "History tie-ins",
          "url": "https://scripttostage.app/shows/radium-girls"
        },
        {
          "rank": 10,
          "name": "She Kills Monsters",
          "cast": "9 (6 women, 3 men), often expanded",
          "licensor": "Concord Theatricals",
          "run": "n/a",
          "box_office": "n/a",
          "best_for": "Flexible casting",
          "url": "https://scripttostage.app/shows/she-kills-monsters-young-adventurers-edition"
        }
      ]
    },
    {
      "id": "small-plays",
      "name": "Small-cast plays (10 or fewer)",
      "shows": [
        {
          "rank": 1,
          "name": "The Play That Goes Wrong: High School Edition",
          "cast": "8",
          "licensor": "Concord Theatricals",
          "run": "745 perfs Broadway",
          "box_office": "n/a",
          "best_for": "Comedy fans",
          "url": "https://scripttostage.app/shows/the-play-that-goes-wrong-high-school-edition"
        },
        {
          "rank": 2,
          "name": "The Mousetrap",
          "cast": "8",
          "licensor": "Concord Theatricals",
          "run": "West End since 1952",
          "box_office": "n/a",
          "best_for": "Mystery lovers",
          "url": "https://scripttostage.app/shows/the-mousetrap"
        },
        {
          "rank": 3,
          "name": "Deathtrap",
          "cast": "5",
          "licensor": "Dramatists Play Service",
          "run": "1,793 perfs (1978-82)",
          "box_office": "n/a",
          "best_for": "Thriller fans",
          "url": "https://scripttostage.app/shows/deathtrap"
        },
        {
          "rank": 4,
          "name": "Barefoot in the Park",
          "cast": "6",
          "licensor": "Concord Theatricals",
          "run": "1,530 perfs (1963-67)",
          "box_office": "n/a",
          "best_for": "Romantic comedy",
          "url": "https://scripttostage.app/shows/barefoot-in-the-park"
        },
        {
          "rank": 5,
          "name": "The 39 Steps",
          "cast": "4",
          "licensor": "Concord Theatricals",
          "run": "771 perfs (2008-10)",
          "box_office": "n/a",
          "best_for": "Fast-paced comedy",
          "url": "https://scripttostage.app/shows/the-39-steps"
        },
        {
          "rank": 6,
          "name": "Brighton Beach Memoirs",
          "cast": "7",
          "licensor": "Concord Theatricals",
          "run": "1,299 perfs (1983-86)",
          "box_office": "n/a",
          "best_for": "Family drama",
          "url": "https://scripttostage.app/shows/brighton-beach-memoirs"
        },
        {
          "rank": 7,
          "name": "Sleuth",
          "cast": "2",
          "licensor": "Concord Theatricals",
          "run": "1,222 perfs (1970-73)",
          "box_office": "n/a",
          "best_for": "Two strong actors",
          "url": "https://scripttostage.app/shows/sleuth"
        },
        {
          "rank": 8,
          "name": "The Odd Couple",
          "cast": "8",
          "licensor": "Concord Theatricals",
          "run": "964 perfs (1965-67)",
          "box_office": "n/a",
          "best_for": "Classic comedy",
          "url": "https://scripttostage.app/shows/the-odd-couple"
        },
        {
          "rank": 9,
          "name": "Noises Off",
          "cast": "9",
          "licensor": "Concord Theatricals",
          "run": "553 perfs (1983)",
          "box_office": "n/a",
          "best_for": "Farce-ready casts",
          "url": "https://scripttostage.app/shows/noises-off"
        },
        {
          "rank": 10,
          "name": "Almost, Maine",
          "cast": "4-19",
          "licensor": "Dramatists Play Service",
          "run": "Off-Broadway 2006, revival 2014",
          "box_office": "n/a",
          "best_for": "Flexible casting",
          "url": "https://scripttostage.app/shows/almost-maine"
        }
      ]
    }
  ]
}
