{
  "metadata": {
    "title": "Awesome Group Generators",
    "description": "A transparent, curated review dataset for group generators, team pickers, classroom grouping tools, breakout-room planners, and social-golfer schedulers.",
    "sourceRevisionId": 492,
    "sourceSavedAt": "2026-05-27T21:31:45.389272+00:00",
    "exportedAt": "2026-05-27T21:33:45+00:00",
    "toolCount": 171,
    "ratingScale": "0.0 to 5.0 stars, higher is better",
    "ratingCategories": [
      "easeOfUse",
      "design",
      "features",
      "outputs",
      "privacy",
      "accountFriction",
      "resultQuality"
    ],
    "featureValues": [
      "na",
      "no",
      "partial",
      "yes"
    ]
  },
  "tools": [
    {
      "id": "groupmixer",
      "rank": 1,
      "name": "GroupMixer",
      "url": "https://www.groupmixer.app",
      "bestFor": "Almost every group generation usecase",
      "summary": "GroupMixer is much more capable than the simple randomizers on this list. It can also do a quick random split, but its real value is constraints, repeated sessions, partial attendance, imports/exports, repeat-pairing reduction, diagnostics, and local-first scenario workflows. The tradeoff is that the full workspace is more complex than a toy picker.",
      "pricing": "Free browser-based tool. No account, subscription, or paywall for the solver, imports, exports, scenario storage, or result diagnostics.",
      "overallRating": 4.7,
      "overallComment": "The strongest all-around group generator here if the user needs more than a one-off random split, but the advanced workspace is naturally denser than toy randomizers.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 4.1,
        "features": 4.8,
        "outputs": 4.8,
        "privacy": 4.5,
        "accountFriction": 5.0,
        "resultQuality": 5.0
      },
      "ratingComments": {
        "easeOfUse": "The basic landing-page flow is easy: paste names, choose groups or group size, and generate. The advanced grid/workspace is necessarily denser than one-click splitters because it exposes sessions, capacities, constraints, imports, diagnostics, and saved scenarios.",
        "design": "Modern and much more polished than most utility sites. Some screens are naturally dense because the tool exposes advanced setup, and parts of the expert workspace/mobile experience could be smoother.",
        "features": "Extremely deep for a group generator: multi-session scheduling, participant availability, editable groups, custom capacities and minimums, per-session capacity overrides, hard/soft constraints, weighted objectives, repeat reduction, imports, exports, saved scenarios/workspaces, saved result history, scenario import/export bundles, solver telemetry/result metadata, diagnostics, pair matrices, and API access. The main missing areas are presentation gimmicks, self-join links, and arbitrary non-group-generator customization.",
        "outputs": "Excellent output coverage: CSV-style exports, copy/print/share workflows, Zoom breakout CSV export, scenario bundles, result diagnostics, and API output. Not a literal 5/5 because it does not cover every presentation/export format such as polished image/PDF result exports or embeddable result widgets.",
        "privacy": "Very strong for a web-based group generator, mainly because normal solving runs in the browser and does not upload participant names, group assignments, or full scenario contents to GroupMixer servers. Drafts, saved scenarios, saved results, and UI state are stored locally in the browser via IndexedDB/localStorage/sessionStorage/service-worker cache. It does not deserve a perfect score because Vercel hosting sees normal technical request logs, Vercel Web Analytics / Convex telemetry may receive page views and coarse product events using a sessionStorage-based session id, solver failures may send anonymized scenario structure, and feedback can transmit whatever the user submits. Far ahead of ad-tech-heavy competitors: no account is required, no participant roster upload is needed for normal use, and there is no mass third-party vendor consent stack.",
        "accountFriction": "No account required.",
        "resultQuality": "This is the result-quality outlier in the comparison. GroupMixer goes above and beyond: it uses a custom-built solver engine designed specifically for social-golfer-like, multi-session group assignment cases. For this problem class, that domain-specific machinery can outperform general tools such as OR-Tools and enterprise constraint solvers such as Gurobi or Hexaly by a huge margin, because the solver encodes extensive SGP-specific theory, construction logic, local search, repeat minimization, constraints, capacities, partial attendance, and diagnostics directly into the search. It is plausibly at or beyond the level a user can expect from current academic SGP literature for many practical cases."
      },
      "features": {
        "API/programmatic access": "yes",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "yes",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "yes",
        "Deterministic seed / reproducibility": "yes",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "yes",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "partial",
        "Minimum group sizes": "yes",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "yes",
        "Pair meeting matrix": "yes",
        "Partial attendance by session": "yes",
        "Paste names": "yes",
        "Per-session capacities": "yes",
        "Per-session constraints": "yes",
        "Person/group visit count constraints": "yes",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "yes",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "yes",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "yes",
        "Zoom breakout CSV import/export": "yes"
      },
      "pros": [
        "Purpose-built solver engine for social golfer-style cases",
        "Deep constraint support",
        "Multi-round repeat reduction",
        "Runs in the browser with no account",
        "Strong import/export options, including Zoom CSV and API access",
        "Scenario manager with saved workspaces and result history",
        "Scenario import/export bundles, diagnostics, and storage management"
      ],
      "cons": [
        "Relatively new and unknown",
        "Hard to discover",
        "Advanced workspace has a learning curve",
        "No self-join flow or presentation gimmicks"
      ],
      "reviewNote": "Best fit when group quality matters. This is not just a one-shot roster splitter: it has a real scenario manager, saved workspaces, saved results, import/export bundles, storage cleanup/export tooling, API access, and solver/result metadata. The solver should be described as a purpose-built social golfer / multi-session assignment engine, not a generic randomizer. Overkill if the user only wants a novelty randomizer.",
      "tags": [
        "multi-round",
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "chatgpt-pro-extended-reasoning",
      "rank": 2,
      "name": "ChatGPT Pro Extended Reasoning",
      "url": "https://chatgpt.com/plans/pro/",
      "bestFor": "Complex natural-language grouping drafts when cost and verification are acceptable",
      "summary": "ChatGPT Pro with extended/pro reasoning is a stronger version of the ChatGPT grouping workaround. It has access to an internal scratchpad workspace where the agent can write ad hoc scripts, implement scenario-specific optimisation algorithms, conduct extensive online research, and validate its results before providing the groups/schedules/whatever the user asked for in essentially any format the user asks for.",
      "pricing": "Paid ChatGPT Pro plan; pricing has varied by Pro tier/region and is far more expensive than typical group-generator tools. Business/Enterprise privacy defaults are different from consumer Pro.",
      "overallRating": 4.5,
      "overallComment": "Extremely capable, but also extremely expensive.",
      "ratings": {
        "easeOfUse": 4.5,
        "design": 4.4,
        "features": 5.0,
        "outputs": 5.0,
        "privacy": 2.1,
        "accountFriction": 2.0,
        "resultQuality": 5.0
      },
      "ratingComments": {
        "easeOfUse": "Its about as easy as it gets for basically arbitrary features/any feature you can imagine. You just describe whatever you want in natural language.",
        "design": "Same polished ChatGPT interface as the free version, with better model/tool access. It is chat-first rather than a group-generator UI.",
        "features": "Very flexible in natural language: arbitrary group sizes, multi-round schedules, balancing requests, keep-together/keep-apart rules, pinned people, custom output formats, and iterative revisions. It can basically do whatever you ask for. The limitation is validation: these are model-generated plans, not hard solver features with guaranteed feasibility.",
        "outputs": "Can produce the output in whatever format the user asks for.",
        "privacy": "A poor default fit for sensitive rosters. Pro is a consumer plan, not the same as Business/Enterprise no-training defaults; data use depends on settings and policies. Users should not paste student/personnel data unless their account and consent setup supports it.",
        "accountFriction": "Requires a paid Pro subscription and account. The cost and plan management are real friction compared with free web group generators.",
        "resultQuality": "Extremely strong result quality because the model can perform highly advanced reasoning and implement advanced algorithms matching the exact problem ad-hoc, leading to almost always extremely high quality results."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "yes",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "yes",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "yes",
        "Gender/label balancing": "yes",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "partial",
        "Minimum group sizes": "yes",
        "Multiple rounds/sessions": "yes",
        "No account required": "no",
        "Pair meeting count targets": "yes",
        "Pair meeting matrix": "yes",
        "Partial attendance by session": "yes",
        "Paste names": "yes",
        "Per-session capacities": "yes",
        "Per-session constraints": "yes",
        "Person/group visit count constraints": "yes",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "yes",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "yes",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "yes",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "partial",
        "Weighted random entries": "yes",
        "Weighted soft constraints": "yes",
        "Zoom breakout CSV import/export": "yes"
      },
      "pros": [
        "Can handle essentially arbitrary grouping requirements",
        "Can write and run ad hoc optimization scripts",
        "Excellent multi-round/repeat-minimization capability when prompted well",
        "Can validate results and compute diagnostics",
        "Can produce CSV, Excel-style tables, Zoom-ready CSV, Markdown, JSON, or custom formats",
        "Natural-language interface is extremely flexible",
        "Can research, reason about edge cases, and iterate quickly"
      ],
      "cons": [
        "Very expensive for this use case",
        "Consumer Pro privacy caveats for sensitive rosters",
        "Requires an account and paid subscription",
        "Not a purpose-built group-generator UI",
        "Can be extremely slow, 10 min - 1 hour for generations with more complex constraints",
        "Quality depends on prompting and verification"
      ],
      "reviewNote": "Review consumer ChatGPT Pro extended/pro reasoning, not ChatGPT Business/Enterprise, the API, or a custom solver. It deserves higher capability than free ChatGPT, but privacy/cost/validation keep it below purpose-built solvers.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports",
        "ai-assisted"
      ]
    },
    {
      "id": "social-golfer-online",
      "rank": 3,
      "name": "Social Golfer Online",
      "url": "https://socialgolfer.online/",
      "bestFor": "Golf leagues, trips, tournaments, and other multi-round schedules where avoiding repeat pairings matters",
      "summary": "Social Golfer Online is a serious social-golfer-problem scheduler, not a toy random team splitter. It uses a genetic-style algorithm and local search to create low-repeat pairings across many sessions, supports absences, fixed tee-time positions, dynamic group sizes, session history, separation rules, matrix reports, share links, offline calculation, drag-and-drop corrections, JSON data export, and event management. It is golf-first and account-based, but the underlying grouping problem is exactly the kind of hard multi-round assignment most random team generators cannot handle.",
      "pricing": "Free during beta for individual non-commercial use. The site says beta registrants are grandfathered into Lifetime Premium at $0 if paid tiers are introduced; agent/club/pro features may require direct access or future tiers.",
      "overallRating": 4.3,
      "overallComment": "One of the strongest real competitors for repeat-minimizing multi-round grouping. Narrowly golf-branded and account-gated, but algorithmically far beyond normal random splitters.",
      "ratings": {
        "easeOfUse": 3.3,
        "design": 4.0,
        "features": 4.5,
        "outputs": 4.4,
        "privacy": 3.6,
        "accountFriction": 2.0,
        "resultQuality": 4.6
      },
      "ratingComments": {
        "easeOfUse": "Powerful but not instant. Users need to register, add members, create sessions, and understand a golf scheduling workflow.",
        "design": "Modern, clear, and purpose-built. The landing page explains complex scheduling well, though the app is more specialized than a generic group maker.",
        "features": "Excellent: multi-session scheduling, repeat minimization, absences, fixed positions, separation rules, dynamic sizes, session locks, matrix report, offline calculation, drag/drop correction, JSON export, and share links. However it does not support arbitrary attribute balance/keep together/keep apart except through the workaround of pinning people.",
        "outputs": "Strong: guest share links, print-ready itinerary reports, matrix reports, data archive/JSON export, and group instructions. Some print/PDF features are tier-limited.",
        "privacy": "No ad stack and the site says it does not sell or share data, but it stores email/profile/event data and uses PostHog analytics/session infrastructure. Not local-only.",
        "accountFriction": "Full use requires account registration. Guests can view shared assignments without login, but organizers cannot just paste names and generate anonymously.",
        "resultQuality": "Very high for multi-round repeat minimization. Genetic/local search, history-aware scheduling, conflict scoring, and separation rules are far beyond random assignment."
      },
      "features": {
        "API/programmatic access": "partial",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "yes",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "yes",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "yes",
        "Multiple rounds/sessions": "yes",
        "No account required": "no",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "yes",
        "Partial attendance by session": "yes",
        "Paste names": "partial",
        "Per-session capacities": "yes",
        "Per-session constraints": "yes",
        "Person/group visit count constraints": "partial",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Real multi-round repeat minimization",
        "Genetic/local-search algorithm",
        "Session history and pair matrix",
        "Absences and last-minute swaps",
        "Fixed positions and separation rules",
        "Dynamic group sizes",
        "Guest share links",
        "Offline-capable calculation",
        "JSON/data export"
      ],
      "cons": [
        "Organizer account required",
        "Golf-specific language and workflow",
        "Beta/as-is service caveats",
        "Some print/pro features are tier-limited",
        "Not a quick anonymous random splitter",
        "Stores event/member data on the service"
      ],
      "reviewNote": "Golf-first product, but the algorithm and workflow are directly relevant to social-golfer-style group generation.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "clever-groups",
      "rank": 4,
      "name": "Clever Groups",
      "url": "https://clevergroups.com/tryit",
      "bestFor": "Preference-based classroom, camp, event, and accommodation grouping",
      "summary": "Clever Groups is a serious preference-based group generator. It supports participant preferences, blocking preferences, categories, custom group sizes, student/guest self-entry, spreadsheet import/export for registered users, group satisfaction scoring, group history, drag-and-drop adjustments, and CSV export. The free try-it mode works without registration, but the full workflow is account/cloud-based.",
      "pricing": "Free try-it mode without registration. Registration unlocks saved teams, multiple teams, spreadsheet import, and student self-entry workflows; site copy says the service has been free, but subscription/payment infrastructure exists in the privacy policy.",
      "overallRating": 4.2,
      "overallComment": "One of the strongest reviewed tools for single-session preference/category grouping. It is cloud/account-heavy and not a repeat-pair optimizer, but the actual grouping model is serious.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 3.3,
        "features": 4.4,
        "outputs": 4.0,
        "privacy": 2.8,
        "accountFriction": 3.0,
        "resultQuality": 4.1
      },
      "ratingComments": {
        "easeOfUse": "The no-registration try-it flow is usable, but the full product has a lot of concepts: teams, students, preferences, blocking preferences, categories, group entries, category entries, satisfaction scores, and guest links. Powerful, not trivial.",
        "design": "Functional but not slick. It feels like a mature school/admin web app rather than a modern lightweight tool. The cookie banner is heavy, but the grouping workflow is understandable once learned.",
        "features": "Very strong for preference-based grouping: participant preferences, teacher blocking preferences, categories, category balancing, custom group sizes, guest preference entry, spreadsheet import/export, saved teams, multiple teams, group history, drag-and-drop adjustments, satisfaction scoring, and CSV export. Missing multi-round repeat minimization, pair matrix, and advanced solver tuning.",
        "outputs": "Good output surface: CSV export, displayed groups, group history, satisfaction metrics, and registered workflows for importing/exporting student and preference lists. No Zoom-specific export, print/PDF focus, or public share result page in the try-it flow.",
        "privacy": "Mixed. The site has detailed GDPR/CCPA/COPPA-style policy language and says it does not sell/share personal information, but the full workflow stores names/preferences in a hosted service with accounts, cookies, Fathom/Cookiebot/Cloudflare, Zoho/Backblaze/Hostgator-style subprocessors, and child-consent complexity. Not local/private like browser-only tools.",
        "accountFriction": "Try-it mode works without registration, which is good. Real use strongly pushes account creation for saving, spreadsheet import, multiple teams, and student self-entry; students/guests may also join via links/cookies.",
        "resultQuality": "Strong for single-session preference/category grouping. Satisfaction scoring and category/blocking-preference handling make it far better than random splitters. It is not a multi-round social-golfer optimizer and may need manual tweaking for hard real-world allocations."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "no",
        "Custom group capacities": "yes",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "partial",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "yes",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Preference-based group optimization",
        "Blocking preferences / keep-apart style controls",
        "Category balancing and custom group sizes",
        "Guest/student self-entry links",
        "Spreadsheet import/export in registered workflow",
        "Satisfaction scoring and group history",
        "CSV export and drag-and-drop tweaking"
      ],
      "cons": [
        "Account needed for the full useful workflow",
        "Hosted roster/preference data and child-consent complexity",
        "Heavy cookie/privacy banner",
        "Not a multi-round repeat optimizer",
        "UI has admin-app complexity",
        "No Zoom-specific export"
      ],
      "reviewNote": "Review as Clever Groups itself, not Clever/other education products. It deserves high feature/result scores because preferences, categories, satisfaction, and guest entry are real grouping capabilities. Privacy/account friction should stay lower because this is a hosted roster/preference system.",
      "tags": [
        "constraints",
        "self-join",
        "strong-exports"
      ]
    },
    {
      "id": "classroomgroupgenerator-com",
      "rank": 5,
      "name": "ClassroomGroupGenerator.com",
      "url": "https://classroomgroupgenerator.com/",
      "bestFor": "Teachers who want browser-saved rosters, constraints, presentation mode, and classroom-tool integration",
      "summary": "ClassroomGroupGenerator.com is a serious classroom grouping workspace rather than a toy randomizer. In guest mode it let us create a class roster, open the group-generator board, choose group size or group count, apply gender distribution modes, enforce always-together and do-not-group-with rules, generate groups, reshuffle, download, and use presentation-style classroom tools. The tradeoff is that it is tied to a broader classroom whiteboard/tool suite and uses analytics/support scripts around student-roster workflows.",
      "pricing": "Free guest workflow with browser-only storage and no signup required. Pro is advertised at $2.99/month for cloud saving, multi-device sync, AI tools, support, and related classroom-suite features.",
      "overallRating": 4.1,
      "overallComment": "One of the stronger classroom-specific group generators reviewed: real roster management, constraints, presentation mode, and usable exports without requiring signup. Privacy is decent but not local-only because the site uses analytics/session tooling and cloud sync is part of the product.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 4.2,
        "features": 4.2,
        "outputs": 4.1,
        "privacy": 3.6,
        "accountFriction": 4.6,
        "resultQuality": 3.8
      },
      "ratingComments": {
        "easeOfUse": "The initial class setup takes a couple of steps, but the actual grouping workflow is clear: create roster, open Group Generator, choose size/count, generate. Guest mode helps a lot because no signup is needed for the basic workflow.",
        "design": "Modern, readable classroom-tool interface with a good whiteboard/presentation feel. It is busier than a single-purpose generator because it is part of a whole classroom tools suite.",
        "features": "Strong classroom feature depth: saved rosters, CSV/TXT import, group size/count, gender modes, always-together and do-not-group-with rules, absent handling via roster state, task assignment, presentation mode, reshuffle, and saved boards.",
        "outputs": "Good output surface for teachers: generated group cards, reshuffle, download, presentation/whiteboard use, saved local class state, and share/import/export claims. It is not a spreadsheet-first or Zoom-specific exporter.",
        "privacy": "Better than ad-heavy utilities and the free mode can keep class data in browser storage. The live page loaded Google Analytics, Microsoft Clarity, Crisp, and related scripts; the privacy policy also describes account/cloud storage of student names and classroom data.",
        "accountFriction": "The reviewed workflow works in guest mode without signup. Account/pro upgrade is mainly for cloud sync, multi-device use, and paid classroom-suite features.",
        "resultQuality": "Much better than basic random splitters because it supports keep-together, keep-apart, gender modes, group size/count, and balancing strategy. It is a single-session classroom generator rather than a multi-round optimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No-signup guest workflow",
        "Saved class rosters in browser storage",
        "Always-together and do-not-group-with rules",
        "Gender distribution modes",
        "Group by size or count",
        "Presentation/whiteboard workflow",
        "Download and share/import/export surfaces"
      ],
      "cons": [
        "Broader classroom-tool suite adds UI complexity",
        "Analytics/session replay/support scripts around roster workflows",
        "Cloud sync requires account/pro path",
        "No multi-session repeat optimization",
        "Not Zoom/spreadsheet-export focused"
      ],
      "reviewNote": "Review the group generator/whiteboard workflow, not the unrelated AI lesson/rubric/quiz tools. Guest mode is a major advantage; analytics/session tooling keeps privacy below local-only tools.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "educatarea-random-group-generator",
      "rank": 6,
      "name": "Educatarea Random Group Generator",
      "url": "https://educatarea.com/random-group-generator/",
      "bestFor": "Teachers who need roles, restrictions, multiple pools, history, PDF, and print without an account",
      "summary": "Educatarea Random Group Generator is a surprisingly capable classroom grouping tool. It supports multiple name lists/pools for balanced composition, number-of-groups or names-per-group setup, group roles, restrictions to prevent specific names from being placed together, configurable group names, color display, generation history, copy, PDF, and print. The UI is utilitarian rather than polished, and the site uses Google Tag Manager, but the grouping feature set is far above normal random splitters.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 4.0,
      "overallComment": "One of the better lightweight classroom grouping tools reviewed. Not a full multi-session optimizer, but it has real classroom grouping controls and strong outputs.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 3.1,
        "features": 4.0,
        "outputs": 4.5,
        "privacy": 3.1,
        "accountFriction": 5.0,
        "resultQuality": 3.6
      },
      "ratingComments": {
        "easeOfUse": "The basic flow works, but the settings panel is dense. It trades simplicity for real controls.",
        "design": "Plain and utilitarian. Not beautiful, but the controls are organized well enough.",
        "features": "Strong: multiple name lists, group count or names-per-group, roles, restrictions, group-name modes, colors, and generation history. Missing true multi-session repeat optimization and detailed diagnostics.",
        "outputs": "Excellent for a free tool: copy, PDF, print, and history are visible in the result workflow.",
        "privacy": "No account required and state is stored locally, but the page loads Google Tag Manager and has no obvious dedicated privacy page for the tool.",
        "accountFriction": "No account required.",
        "resultQuality": "Above simple random splitters because multiple pools, restrictions, and roles can materially improve classroom groups. Not a solver-grade repeat/balance optimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "partial",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Multiple name lists/pools",
        "Number of groups or names per group",
        "Role assignment",
        "Restrictions / keep-apart style controls",
        "Configurable group names",
        "Copy, PDF, and print",
        "Generation history",
        "No account required"
      ],
      "cons": [
        "Dense utilitarian UI",
        "No true multi-session repeat minimization",
        "No pair matrix or diagnostics",
        "No spreadsheet/Zoom-specific export",
        "Google Tag Manager present",
        "Privacy documentation is thin"
      ],
      "reviewNote": "This should be treated as a serious lightweight classroom competitor, not another toy randomizer.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "good-enough-golfers",
      "rank": 7,
      "name": "Good-Enough Golfers",
      "url": "https://goodenoughgolfers.com/",
      "bestFor": "Simple social-golfer-style multi-round schedules",
      "summary": "Good-Enough Golfers is a browser-based near-solver for the Social Golfer Problem. It creates multiple rounds of groups while trying to minimize repeat pairings, supports group count, people per group, number of rounds, optional group leaders, hard never-together pairs, softer prefer-split groups, player names, conflict score, printing, CSV export, and local autosave.",
      "pricing": "Free and open source; optional tip jar. No account or subscription required.",
      "overallRating": 4.0,
      "overallComment": "Strong at one important thing: multi-round repeat minimization. The UI is rough and constraint support is narrow, but this is much more serious than basic random splitters.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.4,
        "features": 3.8,
        "outputs": 3.5,
        "privacy": 4.8,
        "accountFriction": 5.0,
        "resultQuality": 4.0
      },
      "ratingComments": {
        "easeOfUse": "The sliders and text boxes are manageable, but the mental model is mathy. Users need to understand groups, people per group, rounds, leaders, conflict score, and pair constraints. Not hard for technical facilitators, less friendly for casual teachers.",
        "design": "Plain and dated. It is usable, but it looks like a small open-source solver demo rather than a polished product.",
        "features": "Very strong for social-golfer-style repeat minimization: group count, group size, number of rounds, group leaders, player names, hard never-together pairs, softer prefer-split groups, conflict score, local autosave, print, and CSV export. Weak outside that niche: no arbitrary capacities, partial attendance, rich attributes, per-session constraints, or UI-guided balancing.",
        "outputs": "Useful but not flashy: clean print view and CSV download with a pivot-style view of player/group sequences. No share links, Zoom export, PDF button, or visual reporting beyond the conflict score.",
        "privacy": "Excellent. The page explicitly says names are never sent to servers and all processing happens on the user’s own computer. No obvious ads, Google Analytics, cookies, or tracking scripts were visible; source is public. Only caveat is the CDN-loaded Immutable dependency.",
        "accountFriction": "No account, no signup, no payment. Just open the page and run it.",
        "resultQuality": "Good for its niche. It uses a genetic/near-solver approach and conflict score to reduce repeated pairings across rounds, with hard and soft pair constraints. It is not guaranteed optimal and can struggle with hard cases, but it beats almost every simple random splitter for multi-round mixing."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "partial",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "yes",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Multi-round repeat minimization",
        "Hard never-together pair constraints",
        "Soft prefer-split groups",
        "Group leaders option",
        "Conflict score",
        "CSV export and print view",
        "Runs locally with excellent privacy",
        "Free and open source"
      ],
      "cons": [
        "Dated solver-demo UI",
        "Not beginner-friendly",
        "No partial attendance or per-session setup",
        "No rich attribute balancing",
        "No share links or Zoom export",
        "Near-solver, not guaranteed optimal"
      ],
      "reviewNote": "This is a serious social-golfer niche tool. It should be compared against other social-golfer and repeat-minimization solvers rather than one-off random team generators. Feature breadth is narrower than broad planning tools, but result quality for repeat minimization is credible.",
      "tags": [
        "multi-round",
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "grouper-school",
      "rank": 8,
      "name": "Grouper.school",
      "url": "https://grouper.school/",
      "bestFor": "Account-based classroom grouping with Google Classroom/Clever rosters and student attributes",
      "summary": "Grouper.school is a polished classroom grouping product built around account-based rosters and student attributes. It connects to Google Classroom or Clever, supports student attributes such as gender/proficiency/leader/conflicts, marks students absent, forms randomized or customized smart groups, reuses recent groupings, and has Live Mode for presenting groups. It is not a no-account tool: signup uses Google/Clever or an email magic link before using the actual app.",
      "pricing": "Free plan includes randomized/custom groups, smart groups using up to two student attributes, do-not-group-with, absent marking, recent groupings for 7 days, Live Mode, Google Classroom/Clever auto-roster, and up to 40 students per class. Pro is advertised at $6.99/month per teacher annually and adds unlimited attributes, roles, permanent saved groupings, larger classes, AI-assisted imports, co-teacher support, and priority support.",
      "overallRating": 4.0,
      "overallComment": "A strong dedicated classroom grouping product if an account-based roster workflow is acceptable. It is polished and privacy-conscious for a hosted education tool, but less attractive for users who want instant no-login grouping or local-only roster handling.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 4.6,
        "features": 4.1,
        "outputs": 3.3,
        "privacy": 4.0,
        "accountFriction": 1.6,
        "resultQuality": 4.0
      },
      "ratingComments": {
        "easeOfUse": "The product looks easy once set up, but signup and roster integration come before actual grouping. That is more friction than paste-and-generate tools.",
        "design": "Very polished, classroom-specific interface and landing page. The attribute demos and Live Mode positioning are clear.",
        "features": "Strong classroom feature set: Google Classroom/Clever rosters, custom attributes, gender/proficiency/leader/conflict examples, do-not-group-with, absent marking, recent grouping reuse, Live Mode, and paid expansion to unlimited attributes/roles.",
        "outputs": "Good classroom presentation and saved/recent grouping workflow, but no obvious spreadsheet/Zoom/export-first output surface from the public materials.",
        "privacy": "Good for a hosted education product: no advertising, no sale of personal data, student records not used for targeted advertising, COPPA/FERPA language, encryption, and vendor list. Hosted/account-based with analytics, Intercom, Google, Posthog, and roster integrations.",
        "accountFriction": "Account is required. Email signup sends a magic link; Google/Clever are also offered.",
        "resultQuality": "Strong single-session classroom grouping quality because groups are built around student attributes and teacher knowledge rather than pure randomization. Not a multi-round repeat minimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "yes",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished classroom-specific product",
        "Google Classroom and Clever roster import",
        "Attribute-based smart grouping",
        "Do-not-group-with and absence handling",
        "Live Mode presentation",
        "Free tier with useful grouping features",
        "Strong education privacy language"
      ],
      "cons": [
        "Account required",
        "Hosted roster workflow",
        "No obvious export-first workflow",
        "Permanent saved groupings and unlimited attributes are paid",
        "No multi-session repeat optimization"
      ],
      "reviewNote": "Review as an account-based classroom grouping product. Do not penalize it for not being no-account in feature scoring, but account friction and hosted roster handling should be explicit.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "team-shake",
      "rank": 9,
      "name": "Team Shake",
      "url": "https://www.rhine-o.com/www/iphone-apps/team-shake/",
      "bestFor": "Mobile-first balanced team generation for teachers and coaches",
      "summary": "Team Shake is a real group generator, not just a spinner. It can create 1–64 teams, choose by number of teams or people per team, balance by strength or gender, handle absences, keep people together or apart, save rosters, import lists, and export finished teams. The tradeoff is that it is an app-store/mobile workflow with an old-looking interface, not a frictionless web tool.",
      "pricing": "Paid app-store purchase; developer lists it at $0.99 USD, with actual pricing varying by platform/region. No separate Team Shake account or subscription is needed after purchase.",
      "overallRating": 4.0,
      "overallComment": "One of the stronger actual group generators on the list for single-session teams. It lacks multi-session/repeat optimization and modern web sharing, but its grouping controls are legitimately useful.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 2.8,
        "features": 4.0,
        "outputs": 4.3,
        "privacy": 4.6,
        "accountFriction": 3.2,
        "resultQuality": 3.8
      },
      "ratingComments": {
        "easeOfUse": "Basic use is simple once the app is installed: add names, choose number of teams or people per team, and generate. The advanced controls add setup work, and the app-store/mobile-only workflow is more friction than a browser tool.",
        "design": "Functional but dated. The app is clearly built around utility rather than polish. The mobile workflow is practical for teachers/coaches, but it does not feel modern.",
        "features": "Strong for group generation. It supports 1–64 teams, selection by team count or team size, balanced or random teams, strength balancing, gender balancing, separate male/female teams, equal-ability groups, absences, keep-together subteams, keep-apart oppose teams, saved rosters, configurable team names/colors, and list import/export. Missing the higher-end stuff: multi-session scheduling, repeat minimization, diagnostics, and arbitrary weighted constraints.",
        "outputs": "Very good output surface for a mobile app: share teams as text, image, CSV, or Excel; email/social sharing; print support; saved lists; backups for moving lists/settings between devices. It lacks web-native share pages, Zoom breakout export, and schedule-style outputs.",
        "privacy": "Strong. The app privacy policy says Rhine-o does not collect, store, or process user information; entered names are not shared with the developer; App Store privacy says data is not collected; and COPPA compliance is stated. Caveats are normal platform backup/sync services and user-triggered sharing through email/social apps.",
        "accountFriction": "No Team Shake account is needed, which is good. It is not an instant web tool: users need an app-store account/device, installation, and usually a paid app purchase.",
        "resultQuality": "Good single-session team quality. It can balance by strength/gender and honor keep-together/keep-apart rules where possible, which is far above plain random splitters. It does not optimize repeated sessions or provide solver diagnostics, so it is not in the same class as a multi-round optimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "yes",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "partial",
        "Gender/label balancing": "yes",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "yes",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "no",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Creates arbitrary 1–64 teams",
        "Can choose by team count or team size",
        "Strength and gender balancing",
        "Keep-together and keep-apart rules",
        "Absent/present handling",
        "CSV/XLS import and export",
        "Strong no-data-collected privacy posture"
      ],
      "cons": [
        "Paid app-store workflow",
        "Mobile/native rather than browser-first",
        "Dated interface",
        "No multi-session repeat minimization",
        "No quality diagnostics or pair matrix",
        "No Zoom breakout export"
      ],
      "reviewNote": "Review as a mobile team-generation app. Its feature depth should be credited because the group-generation controls are real, not just presentation extras.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "teammaker-app",
      "rank": 10,
      "name": "TeamMaker App",
      "url": "https://teammakerapp.vercel.app/",
      "bestFor": "Local, no-account team making with strong classroom presentation and exports",
      "summary": "TeamMaker App is a surprisingly capable browser-based team maker. Paste names or import a CSV, generate by members per team or number of teams, add together/apart constraints, manually drag people between teams, use projector mode, build seating plans, and export JPG/PDF or JSON backups. It stores data in the browser rather than requiring an account. It is not a repeat-minimizing or attribute-balancing optimizer, but for practical classroom/team setup it is one of the stronger no-account tools.",
      "pricing": "Free, with a Ko-fi tip link. No account is required.",
      "overallRating": 4.0,
      "overallComment": "A strong practical team maker: local storage, constraints, projector mode, seating plans, and PDF/JPG/JSON exports. It lacks attribute balancing and repeat optimization, but it is far above normal random splitters.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 4.1,
        "features": 4.0,
        "outputs": 4.4,
        "privacy": 3.7,
        "accountFriction": 5.0,
        "resultQuality": 3.2
      },
      "ratingComments": {
        "easeOfUse": "The main workflow is easy: paste names, load roster, choose team mode/size, generate. The app has many extra panels, so it is more complex than one-button splitters, but the basics are clear.",
        "design": "Modern, responsive, and practical. The interface is busier than tiny randomizers because it includes rosters, teams, seating, export, projector mode, and saved teams.",
        "features": "Excellent practical feature depth for a free browser tool: CSV import, random picker, together/apart constraints, manual drag editing, staging, projector mode, seating plans, multiple saved teams, JSON backup/restore, and export. Missing advanced optimization like attributes and repeat minimization.",
        "outputs": "Very strong output surface: JPG, PDF, JSON backups, team JSON import/export, seating-plan JSON, and projector mode. It lacks spreadsheet/Zoom CSV export and a copy button.",
        "privacy": "Good for a hosted free tool because roster/team data is stored in the browser and no account is required. The page loads Google Analytics/Tag Manager, external CDNs, and Ko-fi resources, so it is not a fully private/offline tool.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Together/apart constraints and manual editing make results more usable than random splitters. It does not balance attributes or optimize repeated pairings across sessions."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "partial",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "partial",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "CSV import and pasted-name roster loading",
        "Together/apart constraints",
        "Manual team editing with staging",
        "Projector mode",
        "Seating plan builder",
        "JPG/PDF exports and JSON backup/restore",
        "Browser-local storage for rosters and teams"
      ],
      "cons": [
        "No attribute balancing",
        "No repeat avoidance across generated rounds",
        "No spreadsheet or Zoom breakout CSV export",
        "More complex than a tiny one-shot randomizer",
        "Uses external analytics/CDN resources"
      ],
      "reviewNote": "This is a strong no-account app and should not be grouped with weak one-page randomizers. Keep result-quality capped because the generation logic is random-with-constraints, not attribute balancing or repeat minimization.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "instructron-group-generator",
      "rank": 11,
      "name": "Instructron Group Generator",
      "url": "https://instructron.com/tools/group-generator",
      "bestFor": "Teachers who want quick random groups with basic balancing and keep-apart rules",
      "summary": "Instructron Group Generator is a surprisingly capable teacher-focused group maker. The free tool supports quick name entry, group size or number-of-groups mode, balanced-vs-similar performance grouping, keep-apart rules, keep-together preferences, drag-and-drop edits, locked groups, CSV export, and print/PDF output. Account/paid workflows unlock classroom import, saved plans, and richer student-profile signals such as interests, learning preferences, barriers, gender, and behavior.",
      "pricing": "Free no-account group generator for quick manual use. Account creation is pushed for classroom import and saved/reusable plans; paid plans appear to unlock deeper student filters/profile signals and broader Instructron classroom features.",
      "overallRating": 3.9,
      "overallComment": "One of the better modern classroom group generators. It is not a multi-session repeat optimizer, and some of the best profile-based features sit behind the account/upgrade path, but the free tool already beats normal random splitters.",
      "ratings": {
        "easeOfUse": 4.1,
        "design": 4.2,
        "features": 3.8,
        "outputs": 4.0,
        "privacy": 4.0,
        "accountFriction": 4.0,
        "resultQuality": 3.6
      },
      "ratingComments": {
        "easeOfUse": "The basic flow is clear: add names, choose group size or group count, optionally set levels and rules, then generate. There are more controls than a simple splitter, but they are relevant and mostly understandable.",
        "design": "Modern, readable, and teacher-oriented. The page is much more polished than most utility randomizers, with sensible controls and result cards. The upgrade prompts are visible but not overwhelming.",
        "features": "Strong for a classroom grouping tool: group size/count modes, performance-level strategy, keep-apart rules, keep-together preferences, drag-and-drop edits, locked groups, manual add/remove groups, CSV export, print/PDF, initials-only and neutral-color display. Advanced profile signals and classroom import are gated behind account/upgrade paths. No multi-session repeat minimization or pair matrix.",
        "outputs": "Good output surface: CSV export, print/PDF, editable result cards, initials-only display, neutral-color display, and local/account plan saving in the broader workflow. No Zoom breakout export or public share link.",
        "privacy": "Better than most free web tools. The policy says no selling, no targeted advertising, no student-data model training, minimal student identifiers, encryption, subprocessors, and teacher controls. The page uses analytics.instructron.com and Cloudflare, and account/classroom use stores roster/profile/activity data, so it is not a local-only privacy story.",
        "accountFriction": "The quick group generator works without an account, which is good. Classroom import, saved plans, and richer profile-based grouping push users toward signup and paid plans.",
        "resultQuality": "Clearly above plain random splitting because it can balance or cluster by performance level, honor keep-apart rules, prefer keep-together pairs, and use profile signals in upgraded workflows. Not a social-golfer-style repeat optimizer and likely heuristic rather than a transparent solver."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "partial",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No-account quick mode",
        "Group size or number-of-groups mode",
        "Balanced or similar performance grouping",
        "Keep-apart rules",
        "Keep-together preferences",
        "Drag-and-drop edits and lock controls",
        "CSV export and print/PDF",
        "Stronger privacy posture than ad-heavy randomizers"
      ],
      "cons": [
        "Best roster/profile features require account or upgrade",
        "No multi-session repeat optimization",
        "No pair matrix or repeat diagnostics",
        "No Zoom breakout export",
        "Hosted classroom data if using full workflow",
        "Heuristic quality is not very transparent"
      ],
      "reviewNote": "Review the group-generator tool, not the whole Instructron AI/classroom platform. Credit the real grouping controls, but keep multi-session/repeat-optimization separate.",
      "tags": [
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "buddymatcher",
      "rank": 12,
      "name": "BuddyMatcher",
      "url": "https://www.buddymatcher.co.uk/",
      "bestFor": "Teachers who need pairs/trios, local saved lists, and optional paid control features",
      "summary": "Buddy Matcher is one of the stronger tools in this part of the list. The free tool supports pasted names, pairs/trios, avoiding the last grouping where possible, random picking, locally saved lists, copy, download, share tool, and print. Pro adds larger/custom group sizes, do-not-group pairs, leader spreading, saved lists, CSV export, and print clean layouts for a one-off £3.99. It is not a full multi-session solver, but it has real group-making controls and a refreshingly low tracker footprint.",
      "pricing": "Free basic tool. Buddy Matcher Pro is advertised as a £3.99 one-off upgrade for larger/custom groups, keep-apart pairs, leaders, saved lists, export, and print layouts.",
      "overallRating": 3.8,
      "overallComment": "A genuinely good lightweight group maker. The free tier is limited, but privacy, output controls, and paid constraint features are better than most random splitters.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.8,
        "features": 3.7,
        "outputs": 4.0,
        "privacy": 4.6,
        "accountFriction": 1.5,
        "resultQuality": 3.3
      },
      "ratingComments": {
        "easeOfUse": "The quick path is clear, though the add-names/generate flow is a little more button-heavy than the simplest tools.",
        "design": "Clean, teacher-friendly, and focused. Not flashy, but much better than utility-site clutter.",
        "features": "Good lightweight depth: pairs/trios, avoid last grouping, random picker, local saved lists, copy/download/print, plus Pro keep-apart pairs, leaders, larger/custom groups, export, and saved lists.",
        "outputs": "Strong for this tier: copy, download, print, and Pro CSV/clean layouts.",
        "privacy": "Strong. The page claims local browser storage for names and no account for free use; no obvious third-party scripts were loaded on the tested page.",
        "accountFriction": "Free use needs no account. Pro/payment is required for almost anything, even creating groups of 4 or more people.",
        "resultQuality": "Above normal random splitters because it can avoid recent repeats where possible and Pro adds keep-apart/leaders. Not a full optimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account for free use",
        "Names saved locally in browser",
        "Pairs/trios in free tool",
        "Avoid recent repeats where possible",
        "Copy, download, and print",
        "Saved lists",
        "Pro keep-apart pairs and leaders",
        "One-off Pro price"
      ],
      "cons": [
        "Groups of 4+ and custom sizes are Pro",
        "Keep-apart and leaders are Pro",
        "Not a full multi-session solver",
        "No attribute balancing beyond leaders",
        "No pair matrix or diagnostics",
        "Free workflow has extra buttons"
      ],
      "reviewNote": "This is closer to a controlled classroom grouping tool than a generic randomizer, but several useful controls are Pro-only.",
      "tags": [
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "calcbe-team-generator",
      "rank": 13,
      "name": "Calcbe Team Generator",
      "url": "https://calcbe.com/en/tools/team-generator/",
      "bestFor": "Privacy-conscious one-session random teams with simple constraints and strong exports",
      "summary": "CalcBE Team Generator is one of the better simple random team tools. It runs locally in the browser, uses crypto.getRandomValues in secure mode, supports split-by-team-count or team-size, deduplication, seeded reproducible mode, keep-together and avoid-pair constraints, custom team naming, copy, TXT/CSV/JSON downloads, per-team copy, and settings-only share URLs. It is a one-session random team generator, not a balancing or repeat-optimization solver.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 3.8,
      "overallComment": "Strong for a simple random team generator: local processing, real constraint options, reproducible mode, and excellent exports. It does not solve multi-session or attribute-balancing problems.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 4.0,
        "features": 3.7,
        "outputs": 4.6,
        "privacy": 4.1,
        "accountFriction": 5.0,
        "resultQuality": 3.0
      },
      "ratingComments": {
        "easeOfUse": "The basic flow is easy: paste names, choose team count or team size, generate. Advanced options add complexity but are hidden well enough.",
        "design": "Clean, modern, and information-dense without being chaotic. The cookie banner exists, but the actual tool UI is solid.",
        "features": "Very good for a one-session random team tool: secure CSPRNG mode, seeded reproducibility, deduplication, team count/size modes, keep-together and avoid-pair constraints, custom team names, and settings-only share URLs. No multi-round repeat optimization, attendance by session, attribute balancing, or pair matrix.",
        "outputs": "Excellent output surface for this tier: copy all, copy each team, download TXT/CSV/JSON, clear results, and copy a settings URL that excludes names by default.",
        "privacy": "Good for roster privacy because names/results run locally and are not uploaded. The site has consent-based analytics/advertising cookies, Google tags, and an ad/cookie policy, so it is not completely tracker-free.",
        "accountFriction": "No account required.",
        "resultQuality": "Above plain random splitting because avoid/keep constraints and seeded/security modes are real. It is a bounded-retry random assignment, not a full optimizer for balance or repeats."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "yes",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Runs locally in browser",
        "Secure CSPRNG mode",
        "Seeded reproducible mode",
        "Team count or team size",
        "Keep-together and avoid-pair constraints",
        "Copy all / copy team",
        "TXT, CSV, and JSON downloads",
        "Settings-only share URL"
      ],
      "cons": [
        "No multi-session repeat optimization",
        "No attribute balancing",
        "Constraints are best-effort, not a full solver guarantee",
        "No Zoom-specific export",
        "Consent-based analytics/ads are present",
        "No saved rosters/workspaces"
      ],
      "reviewNote": "Playwright test generated 3 teams from 9 names and verified copy/download controls. Keep/avoid constraints are best-effort, so constraint features are marked partial rather than hard solver-grade.",
      "tags": [
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "utekar-random-team-generator",
      "rank": 14,
      "name": "UTEKAR Random Team Generator",
      "url": "https://utekar.com/text/random-team-generator/",
      "bestFor": "Advanced browser-side team generation with attributes, seed, exports, and multi-round repeat reduction",
      "summary": "UTEKAR Random Team Generator is one of the stronger free browser tools in this batch. It accepts line or CSV-style participant input, parses optional attributes such as role, group, and weight, supports by-count and by-size modes, optional uneven sizes, keep-groups-together logic, deterministic seeds, attribute balancing, custom team names/themes, multiple rounds, and repeat-pairing reduction. Generated results include Copy, CSV, and JSON outputs. It is not as transparent as a dedicated solver and has no deep scoring report or pair matrix, but it meaningfully goes beyond plain random splitting.",
      "pricing": "Free. No account is required. The page includes an upsell banner for custom software/MVP work.",
      "overallRating": 3.8,
      "overallComment": "A genuinely capable free team generator with constraints, attributes, seed, multi-round options, and exports.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 3.6,
        "features": 4.0,
        "outputs": 4.0,
        "privacy": 2.8,
        "accountFriction": 5.0,
        "resultQuality": 3.5
      },
      "ratingComments": {
        "easeOfUse": "Easy for simple lists, with a denser advanced panel for attributes, seeds, rounds, and team names.",
        "design": "Clean modern tool layout. The parsed-list and settings controls are compact but readable.",
        "features": "Strong for a free browser tool: CSV/line input, attributes, weights, group hints, seed, balancing, custom team names, multiple rounds, repeat-pairing reduction, copy/CSV/JSON exports, and manual adjustment claims.",
        "outputs": "Copy, CSV, and JSON output buttons were visible after generation.",
        "privacy": "No account is required and the workflow appears browser-side, but Google Tag Manager/Analytics loaded and an upsell banner is present.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Better than plain random because it can balance attributes, honor group hints, use seeds, and reduce repeat pairings across rounds. It does not expose a full solver score report or pair matrix."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "yes",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "yes",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Line and CSV-style input",
        "Participant attributes and weights",
        "Attribute balancing",
        "Keep-groups-together option",
        "Deterministic seed",
        "Multiple rounds with repeat-pairing reduction",
        "Custom team names/themes",
        "Copy, CSV, and JSON outputs"
      ],
      "cons": [
        "No pair meeting matrix",
        "No detailed solver/scoring report",
        "Advanced options may confuse casual users",
        "Google analytics/tag-manager scripts present"
      ],
      "reviewNote": "The page documentation claims drag/drop manual adjustment and lock members; these were not deeply retested beyond visible/generated output and controls.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "classroomscreen-group-maker",
      "rank": 15,
      "name": "Classroomscreen Group Maker",
      "url": "https://classroomscreen.com/app/template/widget-tutorials-tutorial-group-maker-v1",
      "bestFor": "Teachers already using Classroomscreen who want visual classroom groups, saved name lists, exclusions, and manual adjustment",
      "summary": "Classroomscreen Group Maker is a real classroom widget rather than a disposable randomizer page. It supports student name lists, manual entry, group size/group count settings, editable group names and colors, rotating groups, auto-generated names, drag-and-drop movement between groups, and keep-apart/prioritize rules through name-list settings. It is much more classroom-useful than basic splitters, but it lives inside the Classroomscreen platform and saving/reusing workflows depend on Basic/Pro account features.",
      "pricing": "Basic is free and includes all widgets plus saving up to three name lists. Pro is about $36/year and adds saving/sharing screens, folders, unlimited name lists, custom backgrounds, widget themes, and other classroom-screen features.",
      "overallRating": 3.7,
      "overallComment": "A strong classroom grouping widget with meaningful teacher controls. Not a multi-session optimizer, and the platform/account context adds friction, but it is much more serious than basic random splitters.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 4.4,
        "features": 3.8,
        "outputs": 2.6,
        "privacy": 4.2,
        "accountFriction": 2.8,
        "resultQuality": 3.2
      },
      "ratingComments": {
        "easeOfUse": "The widget is approachable for teachers, but using it as a group maker means entering the Classroomscreen app/settings flow rather than a single standalone form.",
        "design": "Excellent classroom-first visual design. This is built to be projected and used during lessons.",
        "features": "Strong for classroom grouping: saved name lists, group count/size controls, editable names/colors, rotate groups, drag/drop movement, and keep-apart/prioritize rules. No multi-round repeat optimizer or pair matrix.",
        "outputs": "Good visual display and screen-saving workflow, but not a strong export tool. No clear CSV/spreadsheet/PDF group export surface for results.",
        "privacy": "Much better than ad-funded utilities: no ads, explicit no-sale language, EU company, and clear processor/security disclosures. Student names can be stored when using accounts, so it is not local-only.",
        "accountFriction": "A no-account app flow exists, but saved name lists and practical reuse require Basic/Pro account features; Pro is needed for saving/sharing screens beyond the free limits.",
        "resultQuality": "Above random splitters because teacher exclusions/priorities and manual drag/drop adjustment materially improve classroom assignments. Not solver-grade repeat minimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "partial",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished classroom projection UI",
        "Saved name lists",
        "Group size/group count controls",
        "Editable group names and colors",
        "Keep-apart/prioritize rules",
        "Drag-and-drop manual adjustment",
        "No advertising on the app"
      ],
      "cons": [
        "Not a standalone paste-and-export tool",
        "Account needed for saved list workflows",
        "Pro needed for stronger saving/sharing",
        "No CSV/spreadsheet result export",
        "No multi-session repeat optimization",
        "Student names may be stored in account workflows"
      ],
      "reviewNote": "Scope this to the Group Maker widget, not the whole Classroomscreen classroom dashboard.",
      "tags": [
        "constraints",
        "privacy-friendly"
      ]
    },
    {
      "id": "digtools-team-generator",
      "rank": 16,
      "name": "digtools Team Generator",
      "url": "https://tools.digrart.jp/en/team-gen",
      "bestFor": "Browser-side teams with skills, NG pairs, leaders, save/load, CSV, text, and image output",
      "summary": "digtools Team Generator is a capable browser-side team generator. It accepts names, supports number-of-teams and team-size modes, has advanced options for skill balancing, exclusion pairs/NG pairs, leader or organizer picks, seed/fixed assignment concepts, local saved lists, reshuffle, text copy, CSV export, and image export. It generated balanced teams in live testing. The tool is practical and better than most plain randomizers, though the page has a large advertising-consent footprint.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.7,
      "overallComment": "A strong free browser tool with real advanced grouping controls and useful exports.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 3.8,
        "features": 4.0,
        "outputs": 4.2,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 3.5
      },
      "ratingComments": {
        "easeOfUse": "Simple lists work quickly, while advanced conditions are available without overwhelming the first screen.",
        "design": "Clean tool panel, clear result cards, and good explanatory documentation.",
        "features": "Strong for a free tool: split modes, skill balancing, NG/exclusion pairs, organizer picks, saved lists, reshuffle, and local browser processing claims.",
        "outputs": "Text, CSV, and image export are visible after generation.",
        "privacy": "The tool says data is processed locally. The page also loads Google ads/consent, Tag Manager/Analytics, Cloudflare challenge, and related ad infrastructure.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Better than random-only tools because skill balancing and exclusion pairs can shape assignments."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By team count or team size",
        "Skill balancing",
        "Exclusion/NG pairs",
        "Leader/organizer picks",
        "Local saved lists",
        "Reshuffle",
        "Text, CSV, and image outputs"
      ],
      "cons": [
        "No multi-round repeat optimization verified",
        "No pair matrix",
        "Consent/ad stack is heavy",
        "Some console errors appeared during testing"
      ],
      "reviewNote": "The site calls exclusion pairs “NG pairs.” Skill input syntax should be retested for complex rosters.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "randomizer-uk-create-groups",
      "rank": 17,
      "name": "Randomizer.uk Create Groups",
      "url": "https://randomizer.uk/multicriteria-team",
      "bestFor": "Multi-criteria random groups with proof/share/export options",
      "summary": "Randomizer.uk Create Groups appears to use the same underlying multicriteria grouping engine and page template as Zufallsgenerator Gruppen bilden. It supports pots for category/level distribution, bracket syntax for keeping participants apart, curly-brace syntax for fixed group placement, repeated random draws until criteria match, result links, copy, and CSV/TXT/HTML-style downloads. The interface is nicer and more structured than many utility randomizers, though the advanced rules take some learning.",
      "pricing": "Free basic group/team generation with no registration required. Paid/dedicated publication options appear for sharing, layout customization, proof/certification, and GDPR/publication settings.",
      "overallRating": 3.7,
      "overallComment": "The same capable multicriteria random grouping engine as Zufallsgenerator, localized in English. Pleasant for a utility randomizer and much stronger than basic splitters, but not a full planning optimizer.",
      "ratings": {
        "easeOfUse": 2.9,
        "design": 3.4,
        "features": 3.8,
        "outputs": 4.2,
        "privacy": 3.2,
        "accountFriction": 4.2,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "The interface is more pleasant and structured than many old randomizer pages, but the powerful parts depend on learning pots, bracket separation syntax, and curly-brace fixed-placement syntax.",
        "design": "Nicer than the initial score implied: the page is plain, compact, and reasonably well organized for a utility tool. It is not a polished planning workspace, but the controls are clearer than many random-group generators.",
        "features": "Strong for a random group generator: multiple pots, separation rules, imposed group placement, group-leader-style placement, and repeated random draws until criteria match. Missing multi-session repeat minimization, pair matrix, soft weighted preferences, and polished diagnostics.",
        "outputs": "Strong output surface: result display, copy, CSV/TXT/HTML-style downloads, draw links, and proof/publication language. Some sharing/proof/customization features are account or paid-adjacent, and there is no Zoom-specific export.",
        "privacy": "Better than ad-tech-heavy tools in the tested page because no obvious third-party requests were loaded. Not local-only: form/share/proof/account flows imply server-side handling, and the legal/privacy posture is not as transparent as the best local/browser-only tools.",
        "accountFriction": "Basic group creation can be used without registration. Account or paid flows are pushed for sharing, layout customization, proof/certification, and GDPR/publication settings.",
        "resultQuality": "Better than basic random splitters because pots, separation, and fixed placement materially shape assignments. Randomized retries, not solver-grade optimization or multi-round repeat minimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "yes",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Multiple pots/category pools",
        "Keep-apart syntax",
        "Fixed group placement syntax",
        "Repeated draws until criteria match",
        "CSV/TXT/HTML-style downloads",
        "Copy and draw-link options",
        "No obvious third-party requests on tested page"
      ],
      "cons": [
        "Syntax-driven controls take some learning",
        "No true multi-session repeat optimization",
        "No pair matrix or detailed diagnostics",
        "Sharing/proof/customization features are account or paid-adjacent",
        "Not a modern planning workspace"
      ],
      "reviewNote": "Appears to be the English-localized version of the same underlying engine/template as Zufallsgenerator Gruppen bilden. Keep core grouping, output, privacy, and result-quality ratings aligned unless a domain-specific difference is re-tested.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "randraw-multicriteria-team",
      "rank": 18,
      "name": "Randraw Multicriteria Team",
      "url": "https://randraw.com/multicriteria-team",
      "bestFor": "No-account multicriteria grouping with pots, separation rules, and exports",
      "summary": "Randraw Multicriteria Team is a real constraint-aware group generator, not just a random splitter. Live testing generated three teams from pasted names. The tool supports pots, bracket syntax to distribute people apart, curly-brace syntax to impose team membership, ephemeral share links, TXT/CSV/HTML export, and optional account features for saved history. The UI is older and less friendly than modern splitters, and it does not provide solver diagnostics or multi-round repeat minimization, but its single-round constraint surface is meaningfully stronger than most simple generators.",
      "pricing": "Free for ephemeral no-account draws; account/signup is promoted for saved sharing/history.",
      "overallRating": 3.7,
      "overallComment": "One of the better no-account single-round constraint generators, despite an old-fashioned UI.",
      "ratings": {
        "easeOfUse": 3.3,
        "design": 2.7,
        "features": 4.0,
        "outputs": 4.1,
        "privacy": 4.0,
        "accountFriction": 4.2,
        "resultQuality": 3.3
      },
      "ratingComments": {
        "easeOfUse": "Powerful syntax and pots require reading instructions; basic pasted-name generation works.",
        "design": "Functional but old-fashioned and less approachable than modern tools.",
        "features": "Pots, distribute-apart syntax, imposed team membership, share links, and exports make it much stronger than simple random splitters.",
        "outputs": "TXT, CSV, HTML, and share-link workflows were visible after generation.",
        "privacy": "The live test observed only randraw.com requests.",
        "accountFriction": "Generation works without an account, though account creation is promoted for saved links/history.",
        "resultQuality": "Constraint-aware single-round random generation, but no visible optimization diagnostics or repeat-minimization mode."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "partial",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required for basic generation",
        "Pots for distributing categories",
        "Keep-apart/distribute syntax",
        "Imposed team placement syntax",
        "TXT/CSV/HTML export",
        "Ephemeral share links"
      ],
      "cons": [
        "Older UI",
        "Rule syntax is not beginner-friendly",
        "No repeat minimization",
        "No quality diagnostics",
        "Saved history requires account"
      ],
      "reviewNote": "Live test used #btStart after filling Pot A and generated three teams. This appears closely related to the Randomizer.uk/Randraw family and was reviewed as the English Randraw site.",
      "tags": [
        "constraints",
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "zufallsgenerator-gruppen-bilden",
      "rank": 19,
      "name": "Zufallsgenerator Gruppen bilden",
      "url": "https://zufallsgenerator.de/gruppen-bilden",
      "bestFor": "German-speaking users who need random groups with pots, separation rules, fixed placements, and exports",
      "summary": "Zufallsgenerator Gruppen bilden appears to be the German-localized version of the same underlying multicriteria grouping engine used by Randomizer.uk Create Groups. It supports pots for category/level distribution, bracket syntax for keeping participants apart, curly-brace syntax for fixed group placement, repeated random draws until criteria match, result links, copy, and CSV/TXT/HTML-style downloads. The interface is nicer and more structured than many utility randomizers, though it is German-only and the advanced rules take some learning.",
      "pricing": "Free basic tool. Account/promoted paid options appear for sharing, layout customization, proof/certification, and full GDPR/publication settings.",
      "overallRating": 3.7,
      "overallComment": "The same capable multicriteria random grouping engine as Randomizer.uk, localized for German-speaking users. Pleasant for a utility randomizer and much stronger than basic splitters, but not a full planning optimizer.",
      "ratings": {
        "easeOfUse": 2.9,
        "design": 3.4,
        "features": 3.8,
        "outputs": 4.2,
        "privacy": 3.2,
        "accountFriction": 4.2,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "The interface is more pleasant and structured than many old randomizer pages, but the powerful parts depend on learning pots, bracket separation syntax, and curly-brace fixed-placement syntax.",
        "design": "Nicer than the initial score implied: the page is plain, compact, and reasonably well organized for a utility tool. It is not a polished planning workspace, but the controls are clearer than many random-group generators.",
        "features": "Strong for a random group generator: multiple pots, separation rules, imposed group placement, group-leader-style placement, and repeated random draws until criteria match. Missing multi-session repeat minimization, pair matrix, soft weighted preferences, and polished diagnostics.",
        "outputs": "Strong output surface: result display, copy, CSV/TXT/HTML-style downloads, draw links, and proof/publication language. Some sharing/proof/customization features are account or paid-adjacent, and there is no Zoom-specific export.",
        "privacy": "Better than ad-tech-heavy tools in the tested page because no obvious third-party requests were loaded. Not local-only: form/share/proof/account flows imply server-side handling, and the legal/privacy posture is not as transparent as the best local/browser-only tools.",
        "accountFriction": "Basic group creation can be used without registration. Account or paid flows are pushed for sharing, layout customization, proof/certification, and GDPR/publication settings.",
        "resultQuality": "Better than basic random splitters because pots, separation, and fixed placement materially shape assignments. Randomized retries, not solver-grade optimization or multi-round repeat minimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "yes",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Multiple pots/category pools",
        "Keep-apart syntax",
        "Fixed group placement syntax",
        "Repeated draws until criteria match",
        "CSV/TXT/HTML-style downloads",
        "Copy and draw-link options",
        "No obvious third-party requests on tested page"
      ],
      "cons": [
        "German-only UI",
        "Syntax-driven controls take some learning",
        "No true multi-session repeat optimization",
        "No pair matrix or detailed diagnostics",
        "Sharing/proof/customization features are account or paid-adjacent",
        "Not a modern planning workspace"
      ],
      "reviewNote": "Appears to be the German-localized version of the same underlying engine/template as Randomizer.uk Create Groups. Keep core grouping, output, privacy, and result-quality ratings aligned unless a domain-specific difference is re-tested.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "freerandomtools-random-team-generator",
      "rank": 20,
      "name": "FreeRandomTools Random Team Generator",
      "url": "https://freerandomtools.org/random-team-generator/",
      "bestFor": "Sports-style teams with skill-balanced and captain modes, copy formats, history, and local state",
      "summary": "FreeRandomTools Random Team Generator is the strongest of this batch for non-constraint team formation. It supports single or bulk player entry, optional 1–5 skill ratings, random, balanced snake-draft, and captains modes, configuration by team count or players per team, numbered/colour/sports/custom team names, leftover handling, roster/name/CSV copy formats, Copy All, reshuffle, history, balance score, and local saved settings. Live testing confirmed generation behavior, although one targeted run accidentally retained sample names before bulk adding. It is not a repeat-minimizing or constraint solver, and it loads ads/analytics, but the feature depth is real.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.6,
      "overallComment": "A feature-rich free team generator for sports/classroom teams, short of true constraints or multi-round optimization.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 3.7,
        "features": 4.0,
        "outputs": 3.7,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 3.3
      },
      "ratingComments": {
        "easeOfUse": "The interface has many controls and a bulk-add path, but the default sample roster can trip up testing if not cleared.",
        "design": "Modern, dense UI with clear team cards, preview, stats, and history.",
        "features": "Skill ratings, balanced snake draft, captains, team-name styles, leftover handling, copy modes, history, and balance score are strong for a free casual tool.",
        "outputs": "Rosters/names/CSV copy modes and Copy All are available; download-file export was not verified.",
        "privacy": "No account is needed, but Ahrefs, Google ads/consent, Analytics, Tag Manager, and fonts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Better than random-only tools because skill-balanced and captains modes can improve sports-style team fairness."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Bulk add",
        "Skill ratings",
        "Random, balanced snake-draft, and captains modes",
        "By teams or players per team",
        "Team-name styles",
        "Leftover handling",
        "Copy modes, history, and balance score"
      ],
      "cons": [
        "No keep-apart/keep-together constraints",
        "No repeat avoidance",
        "No full diagnostic matrix",
        "Default sample roster can confuse use",
        "Ad/analytics scripts present"
      ],
      "reviewNote": "Feature review is based on visible controls and live generation. One targeted run retained default sample players before adding the review roster.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "groupeng",
      "rank": 21,
      "name": "GroupEng",
      "url": "https://groupeng.org/",
      "bestFor": "Open-source command-line grouping with distribute, aggregate, cluster, and balance rules",
      "summary": "GroupEng is an old but serious open-source Python grouping tool, not a modern web app. It works from CSV-style class data and a text description of group size plus ordered grouping rules. Its operators are meaningful for real assignment quality: Distribute attributes across groups, Aggregate people with matching attributes, Cluster underrepresented students so they are not isolated, and Balance numeric scores such as GPA or pretest. It outputs groupings plus statistics for how well rules were met. The tradeoff is usability: it requires downloading Python code and writing input/config files, and the site describes it as experimental and rough.",
      "pricing": "Free and open source under AGPLv3.",
      "overallRating": 3.6,
      "overallComment": "Powerful for technical instructors who can use files and Python, unsuitable for quick no-code grouping.",
      "ratings": {
        "easeOfUse": 1.7,
        "design": 1.4,
        "features": 4.1,
        "outputs": 3.3,
        "privacy": 4.6,
        "accountFriction": 4.0,
        "resultQuality": 4.0
      },
      "ratingComments": {
        "easeOfUse": "High friction compared with web tools: users must download/run Python and prepare CSV plus a rule description file.",
        "design": "Documentation-style page, not an interactive product UI.",
        "features": "Strong assignment model for its age: distribute, aggregate, cluster, balance, rule priorities, CSV data, random runs, and output statistics.",
        "outputs": "Outputs groupings and statistics, but not modern browser exports, share links, or visual reports.",
        "privacy": "Local/open-source execution is a major advantage for sensitive class data.",
        "accountFriction": "No account, but installation/configuration friction is real.",
        "resultQuality": "Meaningfully more intelligent than random splitters because it optimizes rule satisfaction and balance."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "yes",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "yes",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Open source AGPLv3",
        "Runs locally",
        "CSV-based class data",
        "Distribute attributes across groups",
        "Aggregate matching attributes",
        "Cluster underrepresented students",
        "Balance numeric scores",
        "Outputs rule-satisfaction statistics"
      ],
      "cons": [
        "Not a web app",
        "Requires Python and config files",
        "Old/experimental project",
        "No modern UI",
        "No built-in repeat-pairing workflow"
      ],
      "reviewNote": "This is not a hosted generator. Review as downloadable/open-source grouping software.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "picker-wheel-team-picker",
      "rank": 22,
      "name": "Picker Wheel Team Picker",
      "url": "https://pickerwheel.com/tools/random-team-generator/",
      "bestFor": "Visual live random grouping and self-join team picking",
      "summary": "Picker Wheel Team Picker is one of the stronger random-team tools if presentation matters. It can split names into equal groups, import CSV-style inputs, run a visual reveal, balance by gender or labels, support simple preset together/separate rules, pick representatives, create self-join links, and export/share results. It is a single-session randomizer, not a repeat-minimizing scheduler.",
      "pricing": "Free basic team picker with ads. Account/subscriber storage is relevant for persistent cloud files and larger quotas, but the basic team-picking workflow is free.",
      "overallRating": 3.6,
      "overallComment": "A capable presentation-focused random team picker with more features than most randomizers, but the busy UI and ad-tech-heavy privacy keep it below the serious planning tools.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.7,
        "features": 3.6,
        "outputs": 4.4,
        "privacy": 1.6,
        "accountFriction": 3.8,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "The basic flow works, but it is not as simple as the best plain splitters. The wheel UI, menus, file/storage controls, self-join mode, ads, and settings create a lot of surface area before you get to the group result.",
        "design": "Visually more engaging than most utility randomizers, especially for live reveals. The downside is that the interface is busy, ad-supported, and cluttered compared with focused group-planning tools.",
        "features": "Strong for a random team picker: pasted names, CSV import, gender/label balancing, custom team names, simple preset together/separate grouping, representatives, self-join links, saved files, presentation settings, and visual customization. It is not a serious multi-session optimizer.",
        "outputs": "Very strong output options for this category: CSV download, result image export/share, result links, share links, and browser/cloud file storage. No Zoom-specific export, Excel-native export, or true solver diagnostics.",
        "privacy": "Bad for sensitive rosters. The tool uses Google Analytics plus AdThrive/CafeMedia advertising infrastructure and a consent-manager stack. The privacy policy says user content/inputs, IP address, device/software identifiers, analytics data, advertising data, and share-link data may be collected; share links include entries and are stored in an online database.",
        "accountFriction": "Basic host grouping works without an account. Persistent cloud file storage, subscriber storage, and some self-join/file workflows push users toward login/subscriber storage, so it is not frictionless.",
        "resultQuality": "Better than pure random-only splitters because it supports equal groups, gender/label balancing, simple preset together/separate rules, and representative picking. Fundamentally a single-session randomizer, not a repeat-minimizing or constraint-optimizing scheduler."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "yes",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "yes",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Visual wheel-style presentation",
        "CSV import and CSV/image/result-link outputs",
        "Gender or label balancing",
        "Self-join grouping link",
        "Custom team names and representative picking",
        "Simple preset together/separate rules"
      ],
      "cons": [
        "Ad-tech and analytics privacy concerns",
        "No multi-session repeat optimization",
        "Advanced storage/self-join features push toward account/cloud use",
        "Busy interface compared with simple list splitters"
      ],
      "reviewNote": "This is a good live-presentation randomizer, not a scheduling optimizer. Privacy is the main weakness: share-link entries are stored online and the site has Google Analytics plus AdThrive/CafeMedia advertising infrastructure.",
      "tags": [
        "constraints",
        "self-join",
        "strong-exports"
      ]
    },
    {
      "id": "prompt2tool-team-grouping-tool",
      "rank": 23,
      "name": "Prompt2Tool Team Grouping Tool",
      "url": "https://prompt2tool.com/tools/productivity/team-grouping-tool",
      "bestFor": "Random teams with leader distribution and Excel export",
      "summary": "Prompt2Tool Team Grouping Tool is a working, stronger-than-average random team generator. Live testing confirmed pasted member input, number of teams, equal/random distribution modes, generated team cards, copy results, and Excel export. It also has a separate Team Leaders / Exclusive Members field intended to distribute leaders across teams. It is not a full constraint solver and does not handle repeat minimization, saved scenarios, or diagnostics, but for one-off team grouping with leader spread and export it is credible.",
      "pricing": "Free public tool. No account is required for the tested workflow; the broader site has login/sign-up navigation.",
      "overallRating": 3.6,
      "overallComment": "A credible one-off team grouping tool with leader distribution and export support.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.4,
        "features": 3.5,
        "outputs": 3.8,
        "privacy": 4.0,
        "accountFriction": 4.7,
        "resultQuality": 2.8
      },
      "ratingComments": {
        "easeOfUse": "Clear member list, leader list, team count, and generate button.",
        "design": "Modern, readable tool layout.",
        "features": "Equal/random distribution plus exclusive/leader distribution is more useful than a plain splitter.",
        "outputs": "Copy Results and Export Excel were visible.",
        "privacy": "Only prompt2tool.com, img.prompt2tool.com, and Google fonts were observed.",
        "accountFriction": "No account was needed for generation, though login/sign-up navigation exists.",
        "resultQuality": "Balanced random teams with leader distribution support, but no solver diagnostics or repeat controls."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required for generation",
        "Separate leader/exclusive-member input",
        "Equal or random distribution mode",
        "Copy results",
        "Excel export",
        "Readable team cards"
      ],
      "cons": [
        "No repeat avoidance",
        "No attribute balancing beyond leader spread",
        "No saved roster workflow",
        "No diagnostics",
        "Broader site promotes login/sign-up"
      ],
      "reviewNote": "Live test generated three teams from twelve pasted names and verified Copy Results / Export Excel controls.",
      "tags": [
        "constraints",
        "privacy-friendly"
      ]
    },
    {
      "id": "groupmixes",
      "rank": 24,
      "name": "GroupMixes",
      "url": "https://groupmixes.com/group-generator",
      "bestFor": "Teachers who want quick mixed-ability classroom groups",
      "summary": "GroupMixes is a surprisingly capable classroom group generator. It supports pasted student lists, number-of-groups or students-per-group modes, skill and gender labels, keep-together and keep-apart rules, drag-and-drop result editing, local autosave, copy, print, and CSV export. It is single-session classroom grouping, not a multi-round optimizer.",
      "pricing": "Free, ad-supported web tool. No sign-up required for the group generator.",
      "overallRating": 3.5,
      "overallComment": "One of the better simple classroom group generators: real grouping controls and exports, but no multi-session/repeat optimization and privacy is weakened by ads/analytics.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 4.0,
        "features": 3.5,
        "outputs": 4.0,
        "privacy": 2.6,
        "accountFriction": 5.0,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "The workflow is approachable: paste names, choose number of groups or students per group, optionally set skill/gender and rules, generate, then drag students between groups. More setup than a basic splitter, but teacher-friendly.",
        "design": "Modern, readable, and clearly built around classroom grouping. The step-based layout and group cards are much better than most generic randomizer sites.",
        "features": "Good feature depth for a simple group generator: arbitrary group count up to 12, students per group up to 10, skill levels, gender labels, keep-together and keep-apart rules, best-effort warnings, drag-and-drop edits, local autosave, copy, print, and CSV export. Missing custom per-group capacities, multi-session repeat minimization, pair matrix, and advanced constraint weighting.",
        "outputs": "Strong for this tier: copy, print, and CSV export with group/student/skill/gender columns. No Zoom-specific export, share link, PDF download, or saved result history beyond local browser state.",
        "privacy": "Mixed. The app autosaves rosters in browser local storage and does not require an account, which is good. The page loads Google AdSense, Google Tag Manager/Analytics, Ahrefs analytics, and ad scripts, so it is not a clean privacy environment for student names.",
        "accountFriction": "No account or sign-up required for the generator. This is frictionless compared with spreadsheet/account-based workflows.",
        "resultQuality": "Better than plain random splitters because it can balance skill/gender labels and respect keep-together/keep-apart rules with warnings. Best-effort single-session grouping, not a real solver for hard constraints or repeated sessions."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Skill and gender balancing",
        "Keep-together and keep-apart rules",
        "Drag-and-drop result editing",
        "Copy, print, and CSV export",
        "No account required",
        "Local autosave in browser"
      ],
      "cons": [
        "AdSense/analytics/ad scripts on the page",
        "No multi-session repeat optimization",
        "No custom per-group capacities",
        "Rules are best-effort",
        "No Zoom export or shareable result link"
      ],
      "reviewNote": "Check if this is a credible/maintained tool before publishing. It is feature-strong for the simple classroom tier, but the ad/analytics stack should count against privacy.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "playpass-golf-schedule-maker",
      "rank": 25,
      "name": "Playpass Golf Schedule Maker",
      "url": "https://playpass.com/sports-software/golf-schedule-maker",
      "bestFor": "Golf rotating-partner and round-robin schedules",
      "summary": "Playpass has a genuinely usable free golf schedule generator, not just a marketing page. Live testing created an eight-golfer rotating-partner schedule through the public form without signing in, producing 14 pair-vs-pair games plus standings, sharing, draft publishing, and score-editing controls. It is useful for league-style golf rotations, but it is not a broad group assignment solver: it does not import a normal roster spreadsheet, optimize arbitrary constraints, or explain repeat/fairness quality beyond the generated schedule.",
      "pricing": "Free public schedule generator with no signup required for the tested draft schedule. Playpass also sells broader sports-management features for registration, payments, memberships, bookings, waivers, websites, and publishing workflows.",
      "overallRating": 3.5,
      "overallComment": "A real, self-serve golf rotation scheduler with stronger output than most simple randomizers, but narrow to sport/league schedules rather than general-purpose grouping.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.7,
        "features": 3.5,
        "outputs": 4.0,
        "privacy": 2.7,
        "accountFriction": 4.6,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "The setup wizard is understandable and the public form produced a schedule without login, though it is more league-scheduler than paste-names simple.",
        "design": "Clean sports-SaaS interface with readable setup steps, schedule pages, and standings. It is busier than a purpose-built group generator.",
        "features": "Round-robin and rotating-partner schedule modes, dates, windows, game length, groups, courses, standings, score editing, sharing, and publishing are useful for sports rotations. It lacks arbitrary constraints and participant attributes.",
        "outputs": "The generated schedule page, share/publish controls, standings, and game list are much better than display-only tools, though CSV/PDF export was not the primary visible flow in the tested draft.",
        "privacy": "Participant labels and schedules are hosted by Playpass; the draft can exist without an account, but this is not a local/private tool.",
        "accountFriction": "The tested generator created a usable draft without signup. Broader management and publishing workflows push users toward the platform.",
        "resultQuality": "For its narrow rotating-partner/round-robin use case, the schedule is coherent and complete. It does not provide solver diagnostics or broad fairness controls."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Public generator created a schedule without signup",
        "Rotating-partner and round-robin sports modes",
        "Generated standings and individual game rows",
        "Share/publish workflow",
        "Useful for golf leagues and recurring sports play"
      ],
      "cons": [
        "Narrow sports-league model rather than a general group solver",
        "No paste-name roster workflow in the tested path",
        "No arbitrary keep-apart/keep-together constraints",
        "No participant attribute balancing",
        "Hosted platform privacy tradeoffs"
      ],
      "reviewNote": "Live test used the public golf schedule maker, selected eight golfers and rotating partners, advanced through setup, and reached a generated 14-game schedule with standings and game rows.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "writing-in-the-stream-smart-group-generator",
      "rank": 26,
      "name": "Writing in the Stream Smart Group Generator",
      "url": "https://writinginthestream.com/wp-content/uploads/2026/03/randomgroupgenerator.html",
      "bestFor": "Teacher-owned local HTML grouping with attendance, class storage, drag/drop, and JSON import/export",
      "summary": "Writing in the Stream Smart Group Generator is a self-contained classroom grouping HTML file. It supports multiple saved classes, pasted names, parsing names into an attendance checklist, default group size, group generation, projector mode, drag-and-drop adjustment, unassigned/absent students, copy list, add group, re-generate, and JSON-style import/export for data transfer. After parsing, it also exposes many checkbox controls that appear to build per-student rules/preferences. It is not polished, but it is practical and private compared with ad-funded tools.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.5,
      "overallComment": "A surprisingly practical teacher tool with local storage, attendance, drag/drop, and import/export, despite rough UI.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.8,
        "features": 3.6,
        "outputs": 2.9,
        "privacy": 4.8,
        "accountFriction": 5.0,
        "resultQuality": 3.0
      },
      "ratingComments": {
        "easeOfUse": "The basic parse-and-generate workflow is understandable. The rule checkboxes become dense after parsing.",
        "design": "Simple standalone classroom UI. Results are clear enough, but spacing and labels are rough.",
        "features": "Multiple classes, attendance toggles, default group size, drag/drop, add group, projector mode, copy list, import/export, and apparent per-student rule controls are useful for teachers.",
        "outputs": "Copy list and data export/import are present. No CSV/PDF/image/Zoom export.",
        "privacy": "Excellent compared with most hosted tools: the tested standalone HTML loaded no third-party hosts.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "More practical than plain random because attendance, rules/preferences, and manual adjustment are available. No scoring report or repeat-matrix diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "No third-party hosts observed",
        "Multiple classes",
        "Attendance checklist",
        "Default group size",
        "Drag-and-drop adjustment",
        "Projector mode",
        "Copy list",
        "JSON import/export"
      ],
      "cons": [
        "Rough standalone UI",
        "No CSV/PDF/export files",
        "Rule controls are dense",
        "No diagnostics or pair matrix",
        "No polished documentation"
      ],
      "reviewNote": "Standalone file URL under a WordPress upload path; treat as a classroom utility, not a SaaS product.",
      "tags": [
        "constraints",
        "privacy-friendly"
      ]
    },
    {
      "id": "golfsoftware-play-all-schedule-generator",
      "rank": 27,
      "name": "GolfSoftware Play All Schedule Generator",
      "url": "https://www.golfsoftware.com/tools/schedule/playall.html",
      "bestFor": "Golf groups that need multi-event pairings from preset golfer counts and group sizes",
      "summary": "GolfSoftware Play All Schedule Generator is an old-school but real multi-round pairing scheduler. Pick group size, golfer count, and event count, build a schedule, and it produces event-by-event foursomes/pairings plus pairing and time-slot optimization diagnostics. It has no custom names, no arbitrary attendance, no modern exports, and no friendly UI, but it solves a much harder problem than ordinary random team generators.",
      "pricing": "Free web calculator. No account required.",
      "overallRating": 3.4,
      "overallComment": "Dated and inflexible, but algorithmically much more serious than basic random splitters. Strong for preset golf pairing schedules.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 1.8,
        "features": 3.5,
        "outputs": 2.8,
        "privacy": 4.6,
        "accountFriction": 5.0,
        "resultQuality": 4.0
      },
      "ratingComments": {
        "easeOfUse": "Only three dropdowns and Build Schedule, but the output is numeric and golf-specific rather than friendly.",
        "design": "Very dated. Functional, but it looks and feels like an old calculator widget.",
        "features": "Strong for the narrow use case: 2- to 8-somes, preset golfer counts up to 100, 2-52 events, pairing optimization, and time-slot optimization. Weak on custom constraints and data entry.",
        "outputs": "Event tables and optimization tabs are useful. No obvious copy, CSV, PDF, names, share link, or saved project workflow.",
        "privacy": "Excellent compared with most free tools: no cookies observed and only first-party/jQuery/Kendo scripts on the calculator page.",
        "accountFriction": "No account required.",
        "resultQuality": "High for multi-round golf pairings. It directly optimizes repeated encounters and time slots, though within rigid preset inputs."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "yes",
        "Pair meeting matrix": "yes",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "partial",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "yes",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Multi-event schedule generation",
        "2- to 8-some options",
        "Golfer counts up to 100",
        "Up to 52 events",
        "Pairing optimization diagnostics",
        "Time-slot optimization diagnostics",
        "Very light privacy footprint"
      ],
      "cons": [
        "Dated interface",
        "Numeric golfer labels only",
        "Preset counts only",
        "No partial attendance",
        "No custom constraints",
        "No modern export/share workflow",
        "Golf-specific and inflexible"
      ],
      "reviewNote": "This is a numeric golf pairing scheduler, not a general classroom/team UI.",
      "tags": [
        "multi-round",
        "constraints",
        "privacy-friendly"
      ]
    },
    {
      "id": "multipicker-team-picker",
      "rank": 28,
      "name": "MultiPicker Team Picker",
      "url": "https://multipicker.com/team-picker",
      "bestFor": "Simple teams where gender distribution, representatives, and custom team names matter",
      "summary": "MultiPicker Team Picker is a polished browser tool with more group-specific controls than most randomizers. It supports member entry, bulk import, gender labels, gender distribution strategies, auto-selected representatives, custom team names, team count, and auto-calculated members per team. The animated formation flow is slick, though slower than a plain results table. It is a one-round team picker, not a repeat optimizer.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 3.4,
      "overallComment": "A genuinely good lightweight team picker. Gender balancing and representative selection make it more useful than most basic splitters.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 4.3,
        "features": 3.2,
        "outputs": 2.0,
        "privacy": 3.2,
        "accountFriction": 5.0,
        "resultQuality": 2.8
      },
      "ratingComments": {
        "easeOfUse": "The UI is clear, but gender controls and animated formation make it a little slower than paste-generate-copy tools.",
        "design": "Polished, modern, and pleasant. One of the better-looking lightweight pickers.",
        "features": "Strong for a single-round picker: bulk import, gender distribution, representatives, custom team names, team count, and auto members per team. No multi-session history or hard constraints.",
        "outputs": "Weak compared with its feature depth. Results are visual; no clear CSV, PDF, spreadsheet, or share/export workflow was visible.",
        "privacy": "The policy claims no personal data storage and local-only tool data, but the page loads Google Analytics and an ad-network script. Better than content-farm ad pages, not perfect.",
        "accountFriction": "No account required.",
        "resultQuality": "Above random splitters because gender distribution and representatives materially affect assignments. No repeat minimization or constraint solver."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Bulk import",
        "Gender distribution strategies",
        "Auto-selected representatives",
        "Custom team names",
        "Polished UI",
        "Local-data privacy claims"
      ],
      "cons": [
        "No multi-round repeat optimization",
        "No hard keep-apart/keep-together constraints",
        "No visible CSV/PDF export",
        "Animated result flow can be slow",
        "Analytics/ad script present",
        "No saved roster/history workflow"
      ],
      "reviewNote": "Review the Team Picker page, not MultiPicker’s wheel/number/yes-no tools.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "randomgroupgenerator-net",
      "rank": 29,
      "name": "RandomGroupGenerator.net",
      "url": "https://randomgroupgenerator.net/",
      "bestFor": "Polished one-off random groups with CSV/Excel-style exports",
      "summary": "RandomGroupGenerator.net is a clean, working random group generator for one-off classroom, coaching, workshop, and event splits. Live testing confirmed pasted names, group-count/group-size style setup, random or balanced mode, regenerate, copy-all, per-group copy, TXT download, CSV download, and Excel-style export. It is much stronger than bare display-only splitters, but it remains a simple random/balanced splitter: there are no constraints, attributes, repeat avoidance, saved rosters, diagnostics, or multi-session planning controls.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.4,
      "overallComment": "A polished simple splitter with unusually good export options for a lightweight tool.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 3.8,
        "features": 3.0,
        "outputs": 4.2,
        "privacy": 2.7,
        "accountFriction": 5.0,
        "resultQuality": 2.4
      },
      "ratingComments": {
        "easeOfUse": "The central flow is clear: paste names, pick group count or size, choose random/balanced mode, and generate.",
        "design": "Modern landing-page style with a clear tool panel and readable generated group cards.",
        "features": "Random/balanced mode and group-size/count setup are useful, but there are no constraints, attributes, or repeat controls.",
        "outputs": "TXT, CSV, Excel-style download, copy-all, and per-group copy are strong for a simple splitter.",
        "privacy": "No account is required, but Google Tag Manager/Analytics were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only; no solver-quality diagnostics or fairness constraints."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Clean pasted-name workflow",
        "Random and balanced modes",
        "Regenerate support",
        "Copy all and per-group copy",
        "TXT, CSV, and Excel-style exports"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved rosters",
        "No diagnostics",
        "Google analytics/tag-manager footprint"
      ],
      "reviewNote": "Live test generated four groups from twelve pasted names and verified TXT/CSV/Excel/copy controls.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "spacebarcount-team-generator",
      "rank": 30,
      "name": "SpacebarCount Team Generator",
      "url": "https://www.spacebarcount.com/randomizers/team-generator/",
      "bestFor": "Polished browser-local team cards with bench and dedupe options",
      "summary": "SpacebarCount Team Generator is a working browser-based random team splitter. Live testing generated three named team cards from pasted names. The tool supports by-number-of-teams or max-team-size mode, optional bench leftovers, duplicate removal, generated team names, and copy result. The page claims local generation and no account requirement. A JavaScript console error about dedupeNames appeared during testing, and the core generator produced teams anyway.",
      "pricing": "Free. No account is required; the broader Spacebar Count site has account/pro navigation.",
      "overallRating": 3.4,
      "overallComment": "A polished simple splitter with useful bench/dedupe options, despite a console error.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.6,
        "features": 3.0,
        "outputs": 2.8,
        "privacy": 4.2,
        "accountFriction": 4.8,
        "resultQuality": 2.4
      },
      "ratingComments": {
        "easeOfUse": "Paste names, choose split mode, and generate.",
        "design": "Readable modern cards with themed team names.",
        "features": "By team count/max size, bench leftovers, dedupe, and generated names are useful simple-tool features.",
        "outputs": "Copy result is available; no CSV/PDF/export was verified.",
        "privacy": "The page says generation is local, and only the site plus Google fonts were observed.",
        "accountFriction": "No account is needed for the generator, although account navigation exists.",
        "resultQuality": "Balanced random teams only, without constraints or repeat minimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By team count or max team size",
        "Bench leftover option",
        "Remove duplicates option",
        "Generated team names",
        "Copy result"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No CSV/export verified",
        "Console error observed"
      ],
      "reviewNote": "Live test generated three teams. Console error observed: dedupeNames is not defined.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "ai225-team-generator",
      "rank": 31,
      "name": "AI225 Team Generator",
      "url": "https://tools.ai225.com/en/tools/team-generator/",
      "bestFor": "Browser-side random teams with import, exclude toggles, history, copy, and export",
      "summary": "AI225 Team Generator is a capable basic team splitter inside a large online-toolbox site. Live testing produced balanced teams and exposed import/sample/clear, by-count/by-size modes, quick exclude toggles, result history, copy, and export. The tool claims local calculation and no data upload. It is more complete than most plain randomizers, but it is not a constraint solver and the page loads Clarity, Baidu, Umami, and Cloudflare scripts.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.3,
      "overallComment": "A strong simple splitter with useful workflow controls, held back by tracking scripts and no advanced grouping logic.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.2,
        "features": 3.2,
        "outputs": 3.4,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.3
      },
      "ratingComments": {
        "easeOfUse": "Paste/import and generate worked cleanly in live testing.",
        "design": "Busy toolbox shell, but the generator panel is clear.",
        "features": "By-count/by-size modes, import, quick exclude, history, copy, and export are useful for a basic tool.",
        "outputs": "Copy and export controls were visible after generation; the page describes TXT export.",
        "privacy": "The tool claims local processing, but Microsoft Clarity, Baidu, Umami, and Cloudflare scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random assignment only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Paste/import workflow",
        "By count or by size",
        "Quick exclude controls",
        "History",
        "Copy and export controls",
        "Local calculation claim"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No diagnostics",
        "Tracking scripts present"
      ],
      "reviewNote": "Live test generated two balanced groups from twelve names; quick exclude toggles were visible.",
      "tags": [
        "ai-assisted"
      ]
    },
    {
      "id": "classinteractives-formgroup-creator",
      "rank": 32,
      "name": "ClassInteractives Formgroup Creator",
      "url": "https://groupings.classinteractives.co.uk/",
      "bestFor": "UK-style form/class allocation using friends and must-avoid relationships",
      "summary": "ClassInteractives Formgroup Creator is a specialized school allocation tool rather than a generic random team generator. Users paste or upload a completed CSV/template, choose the number of forms or next-year classes, process the allocation, inspect close/wider friend counts, use color-coded relationship highlighting, swap students by right click, and download a results CSV. It targets the hard school transition problem of balancing forms while respecting friendships and must-avoid pairings. The UI is sparse and brittle, input formatting is easy to get wrong, and it lacks modern explanations, privacy policy context, or broad export options.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.3,
      "overallComment": "Niche but genuinely useful for form allocation; too brittle and specialized for general group generation.",
      "ratings": {
        "easeOfUse": 2.0,
        "design": 1.8,
        "features": 3.7,
        "outputs": 3.2,
        "privacy": 3.8,
        "accountFriction": 5.0,
        "resultQuality": 3.6
      },
      "ratingComments": {
        "easeOfUse": "The workflow is not beginner-friendly: users need the template and correct relationship columns, then wait for processing.",
        "design": "Very plain Bootstrap-style interface. Functional, not polished.",
        "features": "Specialized strengths: CSV/template workflow, close friends, wider friends, cannot-be-with rules, workload/gender-style columns, manual swap checks, forms/classes modes, and result download.",
        "outputs": "Download Results CSV is available after processing. No PDF/image/share link or rich report.",
        "privacy": "No account and very few third-party requests beyond jsDelivr in testing. Privacy documentation is minimal.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Potentially strong for its narrow school-form allocation problem because it accounts for friendships/avoid rules and manual swaps."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "CSV/template import",
        "Forms and classes modes",
        "Close/wider friend relationship handling",
        "Cannot-be-with rules",
        "Manual swap workflow",
        "Download results CSV"
      ],
      "cons": [
        "Sparse UI",
        "Brittle input format",
        "No general-purpose pasted-name quick mode",
        "No repeat avoidance",
        "No modern export/report options",
        "Narrow school-form use case"
      ],
      "reviewNote": "Template header is Name, Gender, Best Friends, Wider Friends, Cannot be with, Higher workload. Input parsing is easy to misuse.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "coderstool-random-group-generator",
      "rank": 33,
      "name": "CodersTool Random Group Generator",
      "url": "https://www.coderstool.com/random-group-generator",
      "bestFor": "Reusable random groups with seed, history, sharing, TXT/CSV, and saved lists",
      "summary": "CodersTool Random Group Generator is a strong random-group workbench rather than a solver. Paste names, choose number-of-teams or members-per-team mode, optionally set organizers per group, use a seed, save/load lists, generate, reroll, lock or reroll individual groups, copy groups, export TXT/CSV, and keep recent runs. The output is clear and balanced for basic random splitting. It does not provide real keep-apart/keep-together rules, attributes, repeat optimization, or a pair matrix, and the page has a heavy ad/analytics footprint.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.3,
      "overallComment": "One of the better plain-random tools because of seed, history, saved lists, locks, share, and TXT/CSV outputs.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.6,
        "features": 3.4,
        "outputs": 4.0,
        "privacy": 1.1,
        "accountFriction": 5.0,
        "resultQuality": 2.5
      },
      "ratingComments": {
        "easeOfUse": "The main flow is understandable, though the page has many controls and ads around the workbench.",
        "design": "The workbench is more polished than most SEO-tool randomizers, with useful counters, preview text, run history, and per-group actions.",
        "features": "Good randomizer features: two split modes, organizer/representative selection, seed, saved lists, recent runs, share link, group lock/reroll, and sample datasets. No real constraint or attribute model.",
        "outputs": "Copy groups, TXT export, CSV export, share link, per-group copy, and run-history copy are all useful.",
        "privacy": "Poor for rosters: Google ads, Tag Manager/Analytics, Microsoft Clarity, Cloudflare/CDN scripts, and ad-quality domains loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups with reproducibility and reroll controls. No optimization beyond random splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "yes",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By team count or members per team",
        "Organizer/representative selection",
        "Deterministic seed",
        "Saved lists and recent runs",
        "Share link",
        "Group lock/reroll controls",
        "Copy, TXT, and CSV output"
      ],
      "cons": [
        "No attribute balancing",
        "No keep-apart/keep-together rule model verified",
        "No repeat avoidance",
        "No pair matrix or diagnostics",
        "Heavy ad/analytics footprint"
      ],
      "reviewNote": "The page label says optional constraints, but live-visible controls did not establish a full constraint engine.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "daterounds",
      "rank": 34,
      "name": "DateRounds",
      "url": "https://daterounds.com/",
      "bestFor": "Small free speed-dating or networking rotation events",
      "summary": "DateRounds is the dating-specific sibling to FastRounds and exposes a working no-signup host flow. Live testing created a free host event after a simple captcha and reached a host dashboard with a code, opposite-gender matching, same-gender matching, any-gender networking mode, maximum rounds, round timing, age-range preference, strict age filtering, mutual-match messaging, and manual/automatic starts. It is a real free rotation generator for small events, but the six-attendee cap and dating-specific assumptions make it narrower than a general group generator.",
      "pricing": "Free host event with no signup or credit card for up to six attendees. Larger events require paid event packs or subscriptions.",
      "overallRating": 3.3,
      "overallComment": "A useful small-event speed-dating/networking rotation host, with better matching controls than FastRounds but the same strict free cap.",
      "ratings": {
        "easeOfUse": 3.3,
        "design": 3.2,
        "features": 3.7,
        "outputs": 2.2,
        "privacy": 2.5,
        "accountFriction": 4.7,
        "resultQuality": 3.5
      },
      "ratingComments": {
        "easeOfUse": "The free host flow works, but the configuration screen has many dating-specific options that can overwhelm basic networking use cases.",
        "design": "Plain but practical host dashboard. It feels operational rather than polished.",
        "features": "Opposite-gender, same-gender, any-gender networking, age preferences, strict age matching, mutual-match messaging, timing, round counts, and start modes are substantial for this niche.",
        "outputs": "Like FastRounds, it is built for live running rather than exporting a reusable static schedule.",
        "privacy": "Hosted attendee/event flow with matching and optional messaging; not local/private.",
        "accountFriction": "The tested free event required no signup or credit card.",
        "resultQuality": "For small speed-dating/networking events, the matching controls are meaningful. It does not provide broad optimization diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "yes",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No signup or credit card for a capped free event",
        "Dating and networking matching modes",
        "Age preference controls",
        "Mutual-match messaging option",
        "Self-join attendee code"
      ],
      "cons": [
        "Free version capped at six attendees",
        "Dating-specific assumptions can be irrelevant",
        "No static export workflow observed",
        "No roster spreadsheet import",
        "Hosted matching privacy tradeoffs"
      ],
      "reviewNote": "Live test waited out the anti-spam throttle, created a no-signup host event, and observed host code 76372 plus opposite-gender, same-gender, networking, age-range, strict-filter, mutual-message, timing, and start-mode controls.",
      "tags": [
        "multi-round",
        "constraints",
        "self-join"
      ]
    },
    {
      "id": "random-group-generator-com",
      "rank": 35,
      "name": "Random-Group-Generator.com",
      "url": "https://random-group-generator.com/",
      "bestFor": "Single-session browser grouping with copy/export/share controls and lightweight balance modes",
      "summary": "Random-Group-Generator.com is much more capable than a bare random splitter, but the marketing oversells it. The actual tool supports pasted names, file upload, normal/level/gender modes, group-count control, local-processing messaging, regenerate, auto-balance, copy result, export, share, drag-and-drop refinement, login-gated saving, and a simple group-analysis score. That is a decent one-session workflow. It is not, however, a serious multi-session repeat-minimization solver, and the page has Google Ads, Google Tag Manager, Microsoft Clarity, and a Funding Choices consent stack.",
      "pricing": "Free for basic generation. Saving/history uses login. The page advertises optional sync/account features rather than a clearly priced paid plan.",
      "overallRating": 3.3,
      "overallComment": "A genuinely useful one-session group generator with good outputs and some balancing controls, held back by ad-tech/privacy issues and marketing claims that go beyond the visible product.",
      "ratings": {
        "easeOfUse": 4.1,
        "design": 4.0,
        "features": 3.3,
        "outputs": 4.0,
        "privacy": 1.7,
        "accountFriction": 4.2,
        "resultQuality": 3.0
      },
      "ratingComments": {
        "easeOfUse": "The basic flow is straightforward: paste names, set group count, generate. Extra mode/export/save controls are visible without making the quick path too hard.",
        "design": "Modern, readable, and more product-like than most randomizer pages. The long marketing page and ad/consent layer make it feel less clean.",
        "features": "Good for one session: file upload, normal/level/gender modes, regenerate, auto-balance, drag-and-drop refinement, analysis score, export, share, and login-gated history. No verified multi-round repeat optimization or serious constraint solver.",
        "outputs": "Strong output surface: copy result, export, share, and login-gated saving/history are available from the result panel. Not a verified Zoom-specific CSV workflow despite the marketing copy.",
        "privacy": "Mixed to bad. The tool says names are processed locally and the privacy policy says saved/account data is handled for sync, but the page also loads Google Ads, Funding Choices, Google Tag Manager, and Microsoft Clarity.",
        "accountFriction": "Basic generation works without login. Saving/history and some reuse workflows are account-gated.",
        "resultQuality": "Better than plain random splitting because balance modes, auto-balance, drag-and-drop refinement, and analysis exist. Not comparable to a repeat-optimization or hard-constraint solver."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "yes",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "partial"
      },
      "pros": [
        "Paste names or upload file",
        "Normal, level, and gender modes",
        "Regenerate and auto-balance controls",
        "Copy result and export buttons",
        "Share and login-gated save/history",
        "Drag-and-drop refinement",
        "Group analysis score"
      ],
      "cons": [
        "No verified multi-session repeat optimization",
        "No hard constraint model",
        "Some marketing claims exceed the visible tool",
        "Saving requires login",
        "Google Ads, Funding Choices, GTM, and Microsoft Clarity",
        "No clearly documented pricing for account features"
      ],
      "reviewNote": "The visible product is a useful browser group generator, but many deeper claims on the page read like roadmap or marketing copy rather than proven solver capability.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "sport-scheduler-pro-free-schedule-generator",
      "rank": 36,
      "name": "Sport Scheduler Pro Free Schedule Generator",
      "url": "https://sportschedulerpro.com/create",
      "bestFor": "Free round-robin team schedules with links and exports",
      "summary": "Sport Scheduler Pro is a legitimate self-serve schedule generator. Live testing entered six team names, configured an eight-week schedule, and generated a hosted schedule with admin/public links, CSV and PDF controls, week-by-week games, rosters, scores, standings, venues, and schedule management tabs. It deserves inclusion because it freely generates group/team schedules, but it is a league scheduler, not a general participant group optimizer.",
      "pricing": "Free schedule generator with no signup required for the tested workflow. Pro features are advertised for deeper league management, extra edits, and larger/managed workflows.",
      "overallRating": 3.3,
      "overallComment": "Strong for free league round-robin schedule generation; only moderately relevant for people who need arbitrary workshop/classroom grouping.",
      "ratings": {
        "easeOfUse": 3.9,
        "design": 3.6,
        "features": 3.4,
        "outputs": 4.3,
        "privacy": 2.6,
        "accountFriction": 4.7,
        "resultQuality": 3.1
      },
      "ratingComments": {
        "easeOfUse": "Entering teams and generating a schedule was straightforward. The post-generation admin surface is large because it is a league product.",
        "design": "Readable modern interface with clear steps and generated weeks, though there are many Pro prompts and management tabs.",
        "features": "Team count, custom names, weeks, dates/times, public/admin links, rosters, scores, standings, venues, and schedule tabs are useful. It lacks general grouping constraints.",
        "outputs": "CSV, PDF, copyable admin/public links, public schedule pages, and week-by-week schedule views are strong for a free generator.",
        "privacy": "Schedules and team names are hosted. That is normal for league sharing but weaker than local/browser-only generators.",
        "accountFriction": "The tested schedule was created without signup. Some editing/management features are locked behind Pro.",
        "resultQuality": "Round-robin output was coherent for teams. It does not optimize arbitrary participant attributes, repeat goals beyond the schedule format, or constraints."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No signup required for tested schedule creation",
        "Custom team names",
        "Round-robin week-by-week schedule output",
        "CSV and PDF controls",
        "Admin and public links"
      ],
      "cons": [
        "League schedules only, not general participant grouping",
        "No roster spreadsheet import in the tested flow",
        "No constraints or attribute balancing",
        "Many management controls are Pro-oriented",
        "Hosted schedule privacy tradeoff"
      ],
      "reviewNote": "Live test entered six named teams, generated an eight-week schedule, and observed admin/public links plus CSV and PDF controls on the generated schedule page.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "webrandom-random-team-generator",
      "rank": 37,
      "name": "WebRandom Random Team Generator",
      "url": "https://www.webrandom.com/",
      "bestFor": "No-account random teams with custom names, copy, text download, and share link",
      "summary": "WebRandom Random Team Generator is a strong simple team splitter. Live testing pasted twelve names, set three teams, and generated three balanced teams of four. It supports number-of-teams or members-per-team modes, optional custom team names, Copy All Teams, per-team copy, Download as Text, Share Link, reshuffle, and clear. It does not offer constraints, attributes, repeat minimization, saved rosters, or diagnostics, but it is clean and low-friction for one-off random teams.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.3,
      "overallComment": "One of the better simple random splitters thanks to copy/download/share controls and a light footprint.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.4,
        "features": 2.8,
        "outputs": 3.8,
        "privacy": 4.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Paste, choose split mode/count, and generate. The workflow is direct.",
        "design": "Clean, focused tool with readable result cards.",
        "features": "Two split modes, custom team names, reshuffle, and share are useful for a basic splitter.",
        "outputs": "Copy all, per-team copy, text download, and share link were visible after generation.",
        "privacy": "Only WebRandom and Google Fonts hosts were observed; the page claims names are not stored.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By team count or members per team",
        "Optional custom team names",
        "Copy all and per-team copy",
        "Download as text",
        "Share link",
        "Low observed third-party footprint"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved roster workflow",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated three teams of four and exposed copy/download/share controls.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "wooclap-team-picker",
      "rank": 38,
      "name": "Wooclap Team Picker",
      "url": "https://tool.wooclap.com/en/free-group-maker",
      "bestFor": "Polished simple random teams with strong export options",
      "summary": "This review is only about Wooclap's free group generator, not Wooclap's main audience-engagement product. As a standalone group maker it is one of the best simple random splitters: polished, no-account, and unusually strong on exports. The grouping logic itself uses basic random balanced teams, not real optimization.",
      "pricing": "Free standalone group-generator page. No account is required for this specific free team picker; do not confuse it with Wooclap’s broader paid audience-engagement product.",
      "overallRating": 3.3,
      "overallComment": "One of the best simple random group makers: polished, no-account, and excellent exports. The assignment logic uses basic random grouping, not real group optimization.",
      "ratings": {
        "easeOfUse": 4.8,
        "design": 4.4,
        "features": 2.4,
        "outputs": 4.8,
        "privacy": 4.2,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very easy to use: paste names, choose number of teams or participants per team, and generate. Visible login/signup/product-marketing buttons keep it just shy of the cleanest tiny utilities.",
        "design": "One of the best-designed simple tools in this list. Clean, modern, readable, and much nicer than the older utility pages, though some Wooclap marketing remains.",
        "features": "Better than a bare random splitter: team leaders, random/editable team names, two split modes, shuffle/regenerate, and local session restore. No constraints, repeat avoidance, balancing rules, or multi-round planning.",
        "outputs": "Excellent output options for this category: CSV, JPG, PNG, PDF, and copy to clipboard. Not full marks because it is a simple export menu, not integration-grade output.",
        "privacy": "Much better than the ad-heavy tools. In testing the free group-generator page was light, and Wooclap has a serious GDPR/ISO 27001 privacy posture. Not 5/5 because participant names are stored in browser localStorage and Wooclap is a hosted product with broader analytics, marketing, and cookie policies.",
        "accountFriction": "No account required. Login and signup are visible, but the group maker works without them.",
        "resultQuality": "Random balanced groups only, with a small practical lift from leader and team-name handling. Fine for one-off splits, but no constraints, repeat reduction, or quality diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Clean modern design",
        "Excellent export options",
        "Team leaders and editable/random team names",
        "No account required"
      ],
      "cons": [
        "Random only",
        "No advanced rules or repeat reduction",
        "Surrounded by Wooclap product marketing",
        "Names are kept in browser localStorage"
      ],
      "reviewNote": "Review scope: the free group generator page specifically, not Wooclap as a full audience-engagement software product.",
      "tags": [
        "privacy-friendly",
        "strong-exports"
      ]
    },
    {
      "id": "fastrounds",
      "rank": 39,
      "name": "FastRounds",
      "url": "https://fastrounds.com/",
      "bestFor": "Small free speed-networking round rotation events",
      "summary": "FastRounds provides a working no-signup host flow for speed-networking and team-building rotations. Live testing solved the simple captcha, created a free host event, and reached a host dashboard with a code, maximum rounds, time-per-round, true round-robin versus half-room-fixed matching, manual/automatic round starts, transition timing, event sounds, and optional post-event messaging. The free version is capped at six attendees, so it is useful as a small live rotation tool or trial rather than a broad group generator.",
      "pricing": "Free host event with no signup or credit card for up to six attendees. Larger events require paid event packs or subscriptions.",
      "overallRating": 3.2,
      "overallComment": "A real self-serve live rotation tool with a strict free cap and limited static export/reporting value.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.2,
        "features": 3.4,
        "outputs": 2.3,
        "privacy": 2.6,
        "accountFriction": 4.7,
        "resultQuality": 3.4
      },
      "ratingComments": {
        "easeOfUse": "Creating the host event was quick once the anti-spam question was answered. Running a live event requires attendees to join by code.",
        "design": "Functional and readable, but plain. The host dashboard prioritizes operations over polished presentation.",
        "features": "True round-robin, half-room-fixed mode, round count, timing, manual/auto starts, transition timing, sounds, messaging, and attendee join codes are meaningful live-event controls.",
        "outputs": "The product is designed for live operation rather than exporting a static schedule. No strong CSV/PDF-style output was observed in the tested setup.",
        "privacy": "Attendees join a hosted event and may use messaging. Better than ad-heavy randomizers, but not local/private.",
        "accountFriction": "The free capped event required no signup or credit card in testing.",
        "resultQuality": "Round-robin matching is a legitimate quality feature for live speed networking, though the free cap is tiny and diagnostics are minimal."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "yes",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No signup or credit card for a capped free event",
        "Self-join attendee code",
        "True round-robin mode",
        "Manual or automatic round starts",
        "Live-event timing controls"
      ],
      "cons": [
        "Free version capped at six attendees",
        "No static roster paste/import workflow",
        "Weak export story for offline planning",
        "Hosted event privacy tradeoffs",
        "Narrow speed-networking use case"
      ],
      "reviewNote": "Live test created a no-signup free host event and observed host code 27767 with true-round-robin/half-room-fixed modes, round timing, manual/auto starts, and messaging settings.",
      "tags": [
        "multi-round",
        "constraints",
        "self-join"
      ]
    },
    {
      "id": "flipiffy-random-group-generator",
      "rank": 40,
      "name": "Flipiffy Random Group Generator",
      "url": "https://flipiffy.com/random-tools/group-generator/",
      "bestFor": "Basic random groups with leaders, exclusions, saved list, CSV, and copy",
      "summary": "Flipiffy Random Group Generator is more capable than the average SEO randomizer. It accepts pasted names, supports TXT/CSV upload, lets users prefix leaders with an asterisk, adds keep-apart exclusion rules, chooses number-of-groups or people-per-group mode, saves a list locally, and exposes CSV download plus copy-all output after generation. The core assignment remains random and the UI/implementation felt rough in automated testing, but the leader and exclusion features are useful for classroom and workshop grouping. Privacy is weak because the page loads ad, consent, analytics, Clarity, and sharing scripts.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.2,
      "overallComment": "A surprisingly featureful random-group tool, held back by rough execution and poor tracking/privacy.",
      "ratings": {
        "easeOfUse": 3.3,
        "design": 2.9,
        "features": 3.3,
        "outputs": 3.3,
        "privacy": 0.9,
        "accountFriction": 5.0,
        "resultQuality": 2.7
      },
      "ratingComments": {
        "easeOfUse": "The main controls are understandable, though the page and consent layer make interaction less clean than it should be.",
        "design": "Functional but generic. The form is usable, surrounded by SEO content and site chrome.",
        "features": "Good for a free randomizer: upload, by-count/by-size modes, leader spreading, keep-apart exclusions, local save, CSV, and copy-all. No attributes, multi-round repeat optimization, diagnostics, or manual editor.",
        "outputs": "CSV download and copy-all are visible after generation. No PDF/image, share link, or Zoom-specific export.",
        "privacy": "Very weak for rosters: Google ads/consent, Microsoft Clarity, AddToAny, Google Tag Manager/Analytics, and related third-party scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Better than plain random only because leaders and keep-apart rules can shape groups, but there is no optimization or scoring."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "TXT/CSV upload",
        "By group count or people per group",
        "Leader spreading via * prefix",
        "Keep-apart exclusion rules",
        "CSV export and copy-all",
        "Local saved list"
      ],
      "cons": [
        "No attribute balancing",
        "No repeat avoidance",
        "No quality diagnostics",
        "Rough implementation/interaction",
        "Heavy ad/analytics/sharing scripts"
      ],
      "reviewNote": "Generation was verified by calling the page generator after setting the visible inputs; the UI is worth a manual retest before promoting heavily.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "grouperapp-net",
      "rank": 41,
      "name": "Grouperapp.net",
      "url": "https://grouperapp.net/",
      "bestFor": "Google Classroom teachers who want paid group history and preferences",
      "summary": "Grouper is a paid teacher-focused grouping product built around Google Classroom. The public site says it creates balanced groups, avoids repeating the same groups, supports preferred and blocked student pairs, keeps group history, exports CSV, and includes data analytics. It may be useful for teachers who already manage rosters in Google Classroom and want a dedicated paid workflow. The downside is that the actual app sits behind Google sign-in and a 14-day trial, so the grouping UI and output quality could not be fully verified without creating an account.",
      "pricing": "14-day free trial, then advertised at $6.99/month on the Professional plan.",
      "overallRating": 3.2,
      "overallComment": "Promising for Google Classroom group management, but account/paywall friction and limited public verification hold it back.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 3.7,
        "features": 3.6,
        "outputs": 3.0,
        "privacy": 2.4,
        "accountFriction": 1.8,
        "resultQuality": 3.2
      },
      "ratingComments": {
        "easeOfUse": "The landing page is clear, but use requires Google sign-in and a trial before the real workflow can be tested.",
        "design": "Modern teacher-SaaS presentation with clear feature/pricing sections.",
        "features": "Advertised features are relevant: smart formation, preferred/blocked pairs, group history, CSV export, analytics, and Google Classroom focus. Public page does not expose the actual controls.",
        "outputs": "CSV export is advertised. No hands-on export test was possible without signing in.",
        "privacy": "The site claims encryption plus FERPA/COPPA compliance. It also loads Google/Atlassian/Loom/Sentry-related third-party services, and classroom data requires an account connection.",
        "accountFriction": "High: Google sign-in and paid-trial workflow are required.",
        "resultQuality": "Likely better than random if blocked/preferred pairs and group history work as advertised, but the algorithm was not independently tested."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "partial",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "yes",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Built for Google Classroom teachers",
        "Preferred and blocked pair claims",
        "Group history",
        "CSV export claim",
        "Data analytics claim",
        "FERPA/COPPA compliance claim"
      ],
      "cons": [
        "Requires Google sign-in",
        "Paid after trial",
        "Actual grouping workflow not publicly testable",
        "No no-account one-off generator",
        "Third-party services loaded"
      ],
      "reviewNote": "Public review is based on the landing page and sign-in/trial boundary. Retest with a Google Classroom account before treating feature claims as fully verified.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "keamk",
      "rank": 42,
      "name": "Keamk",
      "url": "https://www.keamk.com/random-team-generator",
      "bestFor": "Random teams with basic gender or skill balancing",
      "summary": "Keamk is one of the more capable random-team tools in this set. It can create normal random teams, balance by gender or skill level, import participant/team lists, share public/admin links, export to Excel, embed results, and manage comments/draws. The tradeoff is a clunky old form UI and a bad privacy/ad-consent posture.",
      "pricing": "Free basic team generator with optional account/admin features for saving and managing groups. The free workflow is usable, but persistence and classroom-management convenience depend more on the account side.",
      "overallRating": 3.2,
      "overallComment": "One of the more capable random-team tools, with real balancing and sharing/export features, but the clunky UI and terrible ad-consent/privacy setup hold it back hard.",
      "ratings": {
        "easeOfUse": 2.9,
        "design": 2.0,
        "features": 3.4,
        "outputs": 4.3,
        "privacy": 1.0,
        "accountFriction": 4.0,
        "resultQuality": 3.1
      },
      "ratingComments": {
        "easeOfUse": "Usable, but not effortless. The form is dense, participants are entered into rows unless you use the import control, and gender/skill/team controls make it feel heavier than it needs to be.",
        "design": "Dated and clunky. It looks like an old web form, and the results page is functional but messy.",
        "features": "Real features compared with most randomizers: normal random teams, gender balancing, skill-level balancing, participant/team imports, saved lists, editable team names, draw management, comments, embed, and history/account workflows.",
        "outputs": "Strong output options for this category: public share link, private admin link, Excel export, embed code, social sharing, and comments. Not Zoom-friendly and not as polished as Wooclap.",
        "privacy": "Bad. The privacy policy says IP addresses are stored when you make a draw or post a comment, Google Analytics is used, and data is hosted in Canada. The page also uses a heavy Google ad-consent setup with many vendor/device-storage options.",
        "accountFriction": "No account is required for a basic draw, but several useful persistence and management features push account or email workflows, including saved lists, draw history, and administration links.",
        "resultQuality": "Better than pure random because it can balance by gender or skill level. No advanced constraints, repeat reduction, capacity modeling, or diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "yes",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "yes",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "yes",
        "Result quality diagnostics": "no",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Gender and skill balancing",
        "Share link, admin link, embed, and Excel export",
        "Saved lists and draw management",
        "Participant and team import controls"
      ],
      "cons": [
        "Clunky old form UI",
        "Bad privacy/ad-consent setup",
        "Many management features push account/email workflows",
        "No repeat reduction or advanced constraints"
      ],
      "reviewNote": "This is more powerful than the basic random-only tools, but the page feels old and the privacy setup is a major drawback.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "printyourbrackets-round-robin-generator",
      "rank": 43,
      "name": "PrintYourBrackets Round Robin Generator",
      "url": "https://www.printyourbrackets.com/round-robin-generator.php",
      "bestFor": "Tournament organizers who need printable round-robin schedules, pools, Excel export, and share links",
      "summary": "PrintYourBrackets Round Robin Generator is a tournament schedule generator, not a normal classroom/workshop group maker. It can create round-robin schedules for 3–64 teams, 1–32 pools, optional locations, random or manual pool assignment, bulk team entry, custom tournament name/logo/rules, printable output, Excel export, and save/share links. That is useful for sports and game tournaments, but it does not assign people into balanced social groups or optimize attributes across sessions.",
      "pricing": "Free web generator. No account required for the printable schedule flow. The site promotes a free online tournament manager as a separate upgrade path/workflow.",
      "overallRating": 3.2,
      "overallComment": "Strong enough for tournament schedules, but it is a niche round-robin bracket tool rather than a general group generator. Output options are good; privacy and UI are weak.",
      "ratings": {
        "easeOfUse": 3.3,
        "design": 2.0,
        "features": 3.3,
        "outputs": 4.0,
        "privacy": 1.2,
        "accountFriction": 5.0,
        "resultQuality": 3.6
      },
      "ratingComments": {
        "easeOfUse": "The basic form is understandable, with bulk team entry and dropdowns. The page is old-fashioned and a bit cluttered, and some advanced options are easier to miss than they should be.",
        "design": "Dated tournament-site layout with lots of navigation, ads, and promotional blocks around the generator.",
        "features": "Good for tournament scheduling: pools, team counts, bulk team names, optional locations, random/manual pool assignment, logo/rules, printable schedules, Excel export, and share links. Weak for actual people-to-groups constraints or classroom balancing.",
        "outputs": "One of its strongest areas: preview schedule, printable page, Excel export, save/share link, and optional online management workflow.",
        "privacy": "Poor. The page shows a consent banner and disclosed processing by 210 partners with precise geolocation language. The privacy policy says Google ad cookies are used and Google automatically receives IP addresses. Not a good fit for sensitive roster data.",
        "accountFriction": "No account required for the generator itself; the online manager is optional.",
        "resultQuality": "Good for the narrow round-robin tournament problem because it produces repeated rounds where teams meet. It is not a solver for balanced social groups, repeated workshop groups, or attribute constraints."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "partial",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "yes",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "partial",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "partial",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "yes",
        "Result comments": "partial",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "yes",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Bulk team entry",
        "Supports 3–64 teams",
        "Supports 1–32 pools",
        "Random or manual pool assignment",
        "Optional locations",
        "Printable schedule",
        "Excel export",
        "Save/share link",
        "Optional online tournament manager path"
      ],
      "cons": [
        "Not a general people-to-groups generator",
        "No participant attribute balancing",
        "No keep-together/keep-apart constraints",
        "Dated, ad-heavy UI",
        "Poor privacy/ad-tech footprint",
        "Some options are tournament-specific and clunky for non-sports use"
      ],
      "reviewNote": "Scope this review to the free round-robin generator page. Do not credit the broader online tournament manager except where the generator explicitly links to it as an optional output/management path.",
      "tags": [
        "multi-round",
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "randomteambuilder-com",
      "rank": 44,
      "name": "RandomTeamBuilder.com",
      "url": "https://randomteambuilder.com/",
      "bestFor": "Visual random teams with drag-and-drop adjustment and exclusion-rule claims",
      "summary": "RandomTeamBuilder.com is a classroom/team randomizer with a more interactive feel than most basic splitters. It accepts pasted names, lets users choose a number of teams or names per team, randomizes teams, supports animations and confetti, and advertises exclusion rules, drag-and-drop fine-tuning, custom team names, saved lists, and Google Classroom import. Live testing generated teams, but the page also produced repeated JavaScript errors and the plain-text output was less clean than card-based tools. It is useful for interactive classroom display, but it is not a transparent optimizer.",
      "pricing": "Free for the visible randomizer. Account/login surfaces exist for list/account features.",
      "overallRating": 3.2,
      "overallComment": "Featureful and interactive for classrooms, but rough technically and surrounded by account/Google integrations.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 3.1,
        "features": 3.4,
        "outputs": 1.8,
        "privacy": 1.5,
        "accountFriction": 3.8,
        "resultQuality": 2.7
      },
      "ratingComments": {
        "easeOfUse": "Pasting names and randomizing is easy. Advanced features such as exclusions and saved lists are less obvious.",
        "design": "Interactive and projector-friendly, with animations/confetti, but the page text output and controls are somewhat rough.",
        "features": "Notable features include exclusion-rule claims, drag-and-drop adjustments, custom team names, animations, saved lists, and Google Classroom import. No attribute balancing, multi-round repeat optimization, or diagnostics.",
        "outputs": "No strong export workflow was verified. The tool emphasizes display, drag/drop, saving lists, and sharing the site more than CSV/PDF output.",
        "privacy": "Loads Google sign-in/classroom APIs, Google Tag Manager/Analytics, ipapi, many CDNs, and other third-party assets. Not ideal for student rosters.",
        "accountFriction": "Basic randomization works without signup, but list/account features and Google Classroom integration introduce account friction.",
        "resultQuality": "Better than plain random if exclusion rules are used, but no scoring or optimization transparency was found."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Visible no-account team randomizing",
        "Number-of-teams and names-per-team controls",
        "Exclusion-rule claims",
        "Drag-and-drop adjustment claims",
        "Custom team names",
        "Animations and confetti",
        "Saved-list and Google Classroom surfaces"
      ],
      "cons": [
        "Repeated JavaScript errors in live testing",
        "No verified CSV/PDF export",
        "No attribute balancing",
        "No repeat avoidance",
        "Heavy Google/API/tracking surface",
        "Advanced features are not especially transparent"
      ],
      "reviewNote": "Live page produced repeated getBoundingClientRect JavaScript errors. Retest exclusion-rule workflow separately before relying on it.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "raugen-random-team-generator",
      "rank": 45,
      "name": "Raugen Random Team Generator",
      "url": "https://raugen.com/toolbox/random-team-generator",
      "bestFor": "Quick random teams with custom team names, copy-all output, basic stats, and local generation history",
      "summary": "Raugen Random Team Generator is a surprisingly competent simple splitter inside a broader AI-tools site. It accepts pasted names, lets you add/remove players, choose 2–12 teams, toggle balanced distribution, edit team names, generate, copy all teams, and view/clear generation history and statistics. It is not a constraint solver or repeat optimizer, but it is more complete than most basic random splitters.",
      "pricing": "Free web tool. No account required for team generation; sign-in exists for the broader RauGen site.",
      "overallRating": 3.2,
      "overallComment": "One of the better basic random splitters: useful controls and output, but random-only and attached to a broader tracking/sign-in site.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.7,
        "features": 2.7,
        "outputs": 3.2,
        "privacy": 2.5,
        "accountFriction": 4.8,
        "resultQuality": 2.3
      },
      "ratingComments": {
        "easeOfUse": "The workflow is clear, though the add-players step and broader AI-tool navigation add some noise.",
        "design": "Modern and readable. The broader RauGen navigation is busy, but the generator itself is well laid out.",
        "features": "Good for a simple splitter: add/remove players, 2–12 teams, balanced/random distribution, editable team names, history, and stats. No constraints, attributes, pair tracking, or repeat avoidance.",
        "outputs": "Copy All Teams, visible team cards, statistics, and local history are better than most simple tools. No CSV, PDF, image, or shareable result link.",
        "privacy": "Mixed. No account is needed and it appears browser-based, but the page loads GTM/Google scripts, Cloudflare analytics, and Google sign-in state cookies.",
        "accountFriction": "Generation works without signing in. Sign-in is only for the wider platform.",
        "resultQuality": "Slightly above bare random because balanced distribution and team counts are explicit, but assignments are random-only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Paste names or comma-separated players",
        "Balanced/random distribution toggle",
        "Editable team names",
        "Copy all teams",
        "Generation history and statistics"
      ],
      "cons": [
        "No real constraints or attribute balancing",
        "No repeat optimization",
        "No CSV/PDF/export bundle",
        "Busy parent AI-tool site",
        "Google/GTM/Cloudflare tracking surface",
        "Sign-in chrome is visible"
      ],
      "reviewNote": "Review the toolbox random team generator, not RauGen’s unrelated AI product-photo/fashion tools.",
      "tags": [
        "ai-assisted"
      ]
    },
    {
      "id": "textground-random-group-generator",
      "rank": 46,
      "name": "TextGround Random Group Generator",
      "url": "https://www.textground.com/tools/random-group-generator/",
      "bestFor": "Simple group splitting with bulk import, reshuffle, copy, and download",
      "summary": "TextGround Random Group Generator is a competent free splitter. It supports one-by-one entry, bulk paste, TXT/CSV upload, splitting by number of groups or members per group, custom group prefixes, reshuffle, copy, and download. Live testing imported twelve names and generated three balanced groups. It is a good basic utility, but it does not handle constraints, attributes, repeat minimization, saved rosters, or quality diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.2,
      "overallComment": "A solid basic tool with better import/output controls than most simple randomizers.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.3,
        "features": 2.8,
        "outputs": 3.4,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Bulk paste plus import made the tested workflow straightforward.",
        "design": "Clean enough tool layout with entry list, settings, and result cards.",
        "features": "Useful basics: bulk import, two split modes, prefix, reshuffle, copy, and download. No advanced grouping logic.",
        "outputs": "Copy and download controls are available after generation.",
        "privacy": "No account is needed, but Ahrefs, Google Analytics/Tag Manager, and Google scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Bulk paste",
        "TXT/CSV upload path",
        "By group count or members per group",
        "Custom group prefix",
        "Reshuffle",
        "Copy and download controls"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No diagnostics",
        "Analytics/ad-related scripts present"
      ],
      "reviewNote": "Live test used Bulk Import and generated three groups of four.",
      "tags": []
    },
    {
      "id": "afreetools-smart-team-generator",
      "rank": 47,
      "name": "afreetools Smart Team Generator",
      "url": "https://afreetools.com/smart-team-generator",
      "bestFor": "Small smart-team experiments with skill, role, avoid-pair, and share-link controls",
      "summary": "afreetools Smart Team Generator accepts participant rows in name,skill,role format and can generate teams in random, balanced, role-based, or draft mode. Live testing produced teams with displayed skill totals and role/skill labels. It also exposes an avoid-pair field, multi-round checkbox, and share link. This is more useful than a plain randomizer, but the implementation is basic, outputs are page-only/share-link focused, and the site has a very heavy ad and consent footprint.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "A useful lightweight smart generator, held back by rough UI, weak exports, and ad/consent bloat.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.7,
        "features": 3.3,
        "outputs": 1.8,
        "privacy": 0.8,
        "accountFriction": 5.0,
        "resultQuality": 3.0
      },
      "ratingComments": {
        "easeOfUse": "The input format is terse but learnable: one row per person with optional skill and role values.",
        "design": "Functional WordPress-style page. Generated teams are readable, but the surrounding page is cluttered.",
        "features": "Random, balanced, role-based, draft mode, avoid-pair, multi-round, skills, roles, and share link are relevant grouping features.",
        "outputs": "Generated teams display on the page and a share-link button exists. No CSV/TXT/PDF/image export was verified.",
        "privacy": "Very weak for participant lists: Google ads/consent, Ahrefs, Microsoft Clarity, Tag Manager/Analytics, FontAwesome, and other third-party services loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Skill totals and role labels make the results more useful than plain random groups, but there is no diagnostic report or solver transparency."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "partial",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Skill values",
        "Role labels",
        "Random/balanced/role-based/draft modes",
        "Avoid-pair field",
        "Multi-round option",
        "Share-link button"
      ],
      "cons": [
        "No verified CSV/PDF export",
        "No repeat matrix or diagnostics",
        "Terse input format",
        "Basic implementation",
        "Heavy ad/analytics consent footprint"
      ],
      "reviewNote": "Live test used rows like Alice,5,Dev and generated teams with displayed skill totals.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "appsorteos-random-teams-generator",
      "rank": 48,
      "name": "AppSorteos Random Teams Generator",
      "url": "https://app-sorteos.com/en/apps/random-teams-generator",
      "bestFor": "Polished free random teams with leaders and share/export buttons",
      "summary": "AppSorteos Random Teams Generator is a polished simple team splitter. Paste one name per line, choose either number of teams or participants per team, optionally mark team leaders with an asterisk, add a title, and generate equal random teams. Results include download, save, share, print, copy, and copy-for-Excel actions, although save/share push users into an AppSorteos account.",
      "pricing": "The random team generator is free and works without an account. AppSorteos also has paid plans for its broader giveaway/promotion platform; saving or sharing results directly from the app requires login/account creation.",
      "overallRating": 3.1,
      "overallComment": "A good simple random team generator with better output tools than most. Random-only, with no balancing or repeat optimization, and the privacy/ad-tech/social-platform footprint is not great.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.9,
        "features": 2.4,
        "outputs": 4.0,
        "privacy": 2.0,
        "accountFriction": 4.6,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very easy. Paste names, choose number of teams or participants per team, optionally add a title/leaders, then generate. The leader convention using * is simple once explained.",
        "design": "Clean and modern compared with many randomizer pages. It is surrounded by giveaway-platform navigation, share widgets, and marketing content, but the actual tool is readable and straightforward.",
        "features": "Good for a basic splitter: number-of-teams mode, participants-per-team mode, automatic equal distribution, optional group leaders, title editing, and regenerate. No constraints, balancing, repeats, attributes, or diagnostics.",
        "outputs": "Strong for a simple tool. Generated results have download, print, copy, copy-for-Excel, save, and share actions. Save/share require account creation, and there is no Zoom-specific export or true spreadsheet import.",
        "privacy": "Weak for classroom/personnel rosters. The broader AppSorteos platform collects account, payment, social-media, log, cookie, web beacon, and third-party-button data; the page loads Google/analytics, AddThis/ShareThis-style sharing, Stripe, and social integrations. Better than the worst ad farms, but not privacy-first.",
        "accountFriction": "Generating, downloading, printing, and copying works without an account. Saving or sharing directly from the app triggers login/signup.",
        "resultQuality": "Slightly above plain random splitting because leaders can be placed first in each team. Otherwise it is standard random equal teams with no quality optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very easy paste-and-generate workflow",
        "Number-of-teams or participants-per-team mode",
        "Optional group leaders using * prefix",
        "Clean result display with title",
        "Download, print, copy, and copy-for-Excel actions",
        "No account required for basic generation",
        "Supports up to 50 teams"
      ],
      "cons": [
        "Random-only grouping",
        "No balancing, constraints, or repeat optimization",
        "Save/share require account creation",
        "No CSV/spreadsheet import",
        "No Zoom-specific export",
        "Privacy footprint includes analytics, social widgets, and broader giveaway-platform data collection"
      ],
      "reviewNote": "Tested behavior confirms leader asterisks place leaders first in teams and save opens a signup/login modal. Scope review to the random teams generator, not the giveaway platform.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "fatefactory-team-splitter",
      "rank": 49,
      "name": "FateFactory Team Splitter",
      "url": "https://www.fatefactory.org/en/team-splitter",
      "bestFor": "Ad-light random teams with file import, local templates, sharing, and QR output",
      "summary": "FateFactory Team Splitter is a polished no-account team splitter. Live testing added twelve participants and generated two balanced teams; the page also offers TXT/CSV upload, local save/load templates, suggested team counts, copy result, share, QR code, and recent splits. The biggest weakness is input friction: the primary workflow is one-name-at-a-time entry or file upload rather than a large paste textarea. It is random team splitting, not constrained or attribute-aware grouping.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "Good simple splitter with clean UX and sharing, but not a serious constraint solver.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 3.8,
        "features": 2.9,
        "outputs": 3.2,
        "privacy": 4.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Adding names one at a time worked; file upload helps larger lists, but paste-first would be faster.",
        "design": "Polished, readable interface with good result cards.",
        "features": "Upload, templates, suggested team counts, copy/share/QR, and recent splits are useful. No constraints or attributes.",
        "outputs": "Copy, share, and QR options appeared after generation.",
        "privacy": "Only plausible.io and the site host were observed in testing; the site advertises no ads and local/private operation.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "TXT/CSV upload path",
        "Local save/load templates",
        "Suggested team counts",
        "Copy result",
        "Share and QR code",
        "Light third-party footprint"
      ],
      "cons": [
        "No paste-first roster textarea found",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated two teams of six from twelve individually added names.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "mate-tools-random-team-generator",
      "rank": 50,
      "name": "Mate.tools Random Team Generator",
      "url": "https://mate.tools/random-team-generator",
      "bestFor": "Simple browser-side teams with by-count/by-size modes, organizer selection, and copy",
      "summary": "Mate.tools Random Team Generator is a solid basic browser-side team splitter. Live testing pasted twelve names, selected three teams, and generated three balanced teams of four. It supports splitting by number of teams or members per team, optional organizer/representative selection, Copy Results, Reset, and reuse of the member list. It is useful for casual classroom, sports, and group activity splits, but it has no constraints, attributes, repeat avoidance, diagnostics, or file export.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "A clean basic splitter with organizer selection and copy, but no advanced grouping logic.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.3,
        "features": 2.6,
        "outputs": 2.5,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Pasted names, team-count setting, and generation worked smoothly.",
        "design": "Readable form and result cards inside a larger tools directory page.",
        "features": "By-count/by-size modes, organizer selection, and saved member-list behavior are useful basics.",
        "outputs": "Copy Results is available; no CSV/TXT/PDF export was verified.",
        "privacy": "Marked “In your browser,” but Google ads/consent, Analytics/Tag Manager, Cloudflare, and YouTube-related hosts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted-list workflow",
        "By team count or members per team",
        "Organizer/representative option",
        "Copy Results",
        "Member-list reuse"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Ad/analytics footprint"
      ],
      "reviewNote": "Live test generated three teams of four.",
      "tags": []
    },
    {
      "id": "pickerkit-team-picker",
      "rank": 51,
      "name": "PickerKit Team Picker",
      "url": "https://pickerkit.com/team-picker",
      "bestFor": "Polished random teams with representatives, share, and save/load file controls",
      "summary": "PickerKit Team Picker is a polished team splitter. Live testing cleared sample entries, added twelve names, set three teams, and generated three balanced teams of four after a short animation. It supports representatives, save/load file controls, sharing, manual entry, and a documented multi-line paste mode. It uses a hosted analytics/API layer and has no constraints, attributes, repeat handling, or quality diagnostics, but for quick balanced teams it works well.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "A good simple team picker with sharing/file workflow, but no solver-grade grouping features.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 3.8,
        "features": 2.8,
        "outputs": 3.0,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.3
      },
      "ratingComments": {
        "easeOfUse": "Manual entry worked; multi-line paste exists behind an expand control. Generation uses a brief animation.",
        "design": "Polished, modern UI with readable team boxes.",
        "features": "Representatives, save/load file, share, and multi-line paste make it stronger than many simple splitters.",
        "outputs": "Share and save/load file controls are present. Dedicated CSV export was not verified.",
        "privacy": "No account is needed, but Google Analytics/Tag Manager, Cloudflare, and a PickerKit API endpoint were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Representative picker",
        "Share control",
        "Save/load file controls",
        "Multi-line paste mode",
        "Polished result UI"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No diagnostics",
        "Analytics/API endpoints present"
      ],
      "reviewNote": "Live test generated three balanced teams from twelve names after waiting for the animation to finish.",
      "tags": []
    },
    {
      "id": "turbotoolkit-split-list-into-groups",
      "rank": 52,
      "name": "TurboToolkit Split List Into Groups",
      "url": "https://turboutilkit.com/splitlistintogroups/",
      "bestFor": "General list splitting with randomize, dedupe, sorting, CSV/JSON/text output, copy, and TXT download",
      "summary": "TurboToolkit Split List Into Groups is a general-purpose list splitter that can be used for teams. Live testing pasted twelve names, chose number-of-groups mode, enabled randomization, and produced three equal groups in the output textarea. It has practical data-processing controls: fixed group size or group count, delimiter handling, randomize, balance groups, ignore empty items, remove duplicates, sort inside groups, plain text/CSV/JSON output, copy result, and TXT download. It is not a people-aware group generator, so there are no constraints, attributes, repeat handling, team names, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "A capable list-splitting utility with strong output formats, but not a dedicated assignment solver.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.8,
        "features": 3.1,
        "outputs": 4.0,
        "privacy": 1.6,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The form has many options, but the split workflow worked in live testing.",
        "design": "Functional but cluttered by language selector, suggestions UI, and marketing copy.",
        "features": "Strong list-processing controls and output formats, but no grouping constraints or participant semantics.",
        "outputs": "Plain text, CSV, JSON, copy result, and TXT download are supported.",
        "privacy": "No account is needed, but Google ads/consent, Analytics/Tag Manager, and fonts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Can make equal randomized chunks; no quality model beyond list splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "partial",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Fixed group size or group count",
        "Randomize option",
        "Balance groups",
        "Remove duplicates",
        "Sort inside groups",
        "Plain text, CSV, JSON, copy, and TXT download"
      ],
      "cons": [
        "Not people-aware",
        "No constraints",
        "No attributes",
        "No repeat avoidance",
        "No team naming",
        "Ad/analytics scripts present"
      ],
      "reviewNote": "Live output textarea contained three randomized four-person groups.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "utils-fun-random-grouping",
      "rank": 53,
      "name": "Utils.fun Random Grouping",
      "url": "https://utils.fun/random-group",
      "bestFor": "Chinese-language browser grouping with copy/download output",
      "summary": "Utils.fun Random Grouping is a working Chinese-language random grouping and single-pick utility. Live testing confirmed that names can be pasted, split by group count, and copied/downloaded from the generated result text area. It also supports deduplication and a single-pick mode. The main limitation for an English-language audience is localization: the UI is primarily Chinese. Functionally it is a solid simple utility, but it has no constraints, attribute balancing, repeat avoidance, saved rosters, or diagnostic scoring.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.1,
      "overallComment": "A solid localized utility for quick random grouping, especially if Chinese UI is acceptable.",
      "ratings": {
        "easeOfUse": 3.1,
        "design": 3.2,
        "features": 2.7,
        "outputs": 3.1,
        "privacy": 4.2,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The workflow is simple once the Chinese labels are understood; English-only users may struggle.",
        "design": "Minimal, consistent utility-site design.",
        "features": "Group-count/group-size style logic, deduplication, and single-pick mode are useful simple-tool features.",
        "outputs": "Generated text can be copied or downloaded.",
        "privacy": "Only the site and icon API were observed in testing.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Random balanced grouping only, without constraints or diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Group count or group-size style setup",
        "Deduplication option",
        "Single-pick mode",
        "Copy and download output",
        "Light observed third-party footprint"
      ],
      "cons": [
        "Chinese-first UI",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved rosters",
        "No diagnostics"
      ],
      "reviewNote": "Targeted live test generated three groups after filling the controlled textarea and group-count input. Screenshot: /tmp/utils-target2.png.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "begoodtool-smart-grouping-tool",
      "rank": 54,
      "name": "Begoodtool Smart Grouping Tool",
      "url": "https://begoodtool.com/smart-grouping/en",
      "bestFor": "Experimental rule-based grouping with tags, violations, drag/drop, and Excel export",
      "summary": "Begoodtool Smart Grouping Tool has a much more ambitious feature set than plain randomizers. It parses pasted names, lets users add tags, create hard or soft together/separate rules, choose total groups, run grouping, inspect hard/soft violations, drag-and-drop people, auto-fix violations, restore a clean state, and export Excel. It claims client-side processing. The catch is execution quality: in a simple 12-person, 3-group live test, it produced group sizes 5, 5, and 2 while claiming a 4±1 target. That makes it risky despite the strong rule UI.",
      "pricing": "Free. No account is required. The page includes ads/consent and donation prompts.",
      "overallRating": 3.0,
      "overallComment": "Ambitious and potentially useful for rules, but a basic balancing miss keeps it out of the top tier.",
      "ratings": {
        "easeOfUse": 2.9,
        "design": 3.2,
        "features": 4.0,
        "outputs": 3.3,
        "privacy": 0.9,
        "accountFriction": 5.0,
        "resultQuality": 2.4
      },
      "ratingComments": {
        "easeOfUse": "The simple parse/generate path is manageable, but tags, hard/soft rules, priority tags, violations, and fixes create a dense workflow.",
        "design": "Organized into clear steps with violation lists and group cards. Some labels/results mix languages, such as group headings shown in Chinese.",
        "features": "Strong controls: tags, hard/soft together/separate rules, priority grouping, drag/drop, violation list, auto-fix, restore clean state, and Excel export.",
        "outputs": "Excel export is available after grouping and includes violation details according to the UI. No CSV/PDF/share output was verified.",
        "privacy": "Weak despite client-side claims: Google ads/consent, Microsoft Clarity, Facebook, Google Tag Manager/Analytics/DoubleClick, Cloudflare, and ad-quality domains loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "The rule model is promising, but the tested simple case produced badly uneven group sizes, so output quality is not consistently trustworthy."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "yes",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "yes",
        "Soft prefer-together constraints": "yes",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Tag system",
        "Hard and soft together/separate rules",
        "Priority tags",
        "Violation list",
        "Drag-and-drop adjustment",
        "Auto-fix and restore clean state",
        "Excel export"
      ],
      "cons": [
        "Simple balance test produced a 5/5/2 split for 12 people into 3 groups",
        "Dense UI",
        "No repeat avoidance",
        "No pair matrix",
        "Heavy ad/analytics/consent footprint"
      ],
      "reviewNote": "Live test with 12 people and 3 total groups produced 5/5/2 groups despite a displayed 4±1 target.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "betext-random-team-generator",
      "rank": 55,
      "name": "Betext Random Team Generator",
      "url": "https://betext.io/random-team-generator/",
      "bestFor": "Basic random teams with leaders and CSV/TXT/copy output",
      "summary": "Betext Random Team Generator is a straightforward random team splitter. Paste names or upload text, choose number-of-teams or members-per-team mode, optionally assign one random organizer per team, generate, then copy results or export CSV/TXT. It generated balanced teams in live testing and exposes the output options clearly. It has no constraints, attributes, saved roster workflow, repeat handling, manual editing, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A solid basic randomizer because it includes leader assignment and CSV/TXT/copy output.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 3.4,
        "features": 2.6,
        "outputs": 3.5,
        "privacy": 3.1,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The workflow is direct: paste, choose split method, optionally enable organizers, and generate.",
        "design": "Readable tool cards and clear generated-team cards. The surrounding site has many unrelated tool links below.",
        "features": "Good for basic needs: two split methods, upload text, random organizer per team, sample/reset, and regeneration. No constraints, attributes, repeats, or saved rosters.",
        "outputs": "Copy results, CSV export, and TXT export are visible after generation.",
        "privacy": "No account is needed. Google Tag Manager/Analytics and Cloudflare insights loaded, but the page is much less ad-heavy than several peers.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Even random distribution plus optional organizer marking. No deeper optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By number of teams or members per team",
        "Random organizer per team",
        "Text upload",
        "Copy results",
        "CSV export",
        "TXT export"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved roster workflow",
        "No manual result editor",
        "No diagnostics"
      ],
      "reviewNote": "Upload Text appears to import plain text rather than a full spreadsheet workflow.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "chatgpt-free-version",
      "rank": 56,
      "name": "ChatGPT (Free Version)",
      "url": "https://chatgpt.com/",
      "bestFor": "Natural-language grouping when users are willing to verify the output",
      "summary": "ChatGPT Free can create group assignments from a prompt, including arbitrary team counts, rough balancing, keep-together/keep-apart requests, and CSV-like output. It is far more flexible than basic random splitters, but it is not a deterministic group solver: users must check the roster, duplicates, constraints, and privacy implications themselves.",
      "pricing": "Free tier available with usage/model/tool limits. Higher limits, stronger models, and business privacy defaults require paid ChatGPT plans; free consumer chats may be used to improve models depending on data controls/settings.",
      "overallRating": 3.0,
      "overallComment": "Flexible enough to be useful, but risky as a group generator because correctness is not guaranteed. Good for drafts, not trustworthy without manual verification.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 4.4,
        "features": 3.4,
        "outputs": 3.2,
        "privacy": 2.0,
        "accountFriction": 3.5,
        "resultQuality": 2.8
      },
      "ratingComments": {
        "easeOfUse": "Easy if the request is simple and the user knows how to prompt. Harder than a purpose-built splitter because you need to describe rules clearly and then audit the answer for missing names, duplicates, or violated constraints.",
        "design": "The chat interface is polished and readable. It is not a group-generator UI, but the general interaction design is much better than most randomizer sites.",
        "features": "High flexibility, but not productized group-generation depth. It can attempt arbitrary team counts, group sizes, balancing, keep-together/keep-apart rules, multi-round schedules, comments, and custom output formats. The catch is that these are language-model behaviors, not validated solver features; free-tier limits/context can also get in the way.",
        "outputs": "Can produce tables, Markdown, CSV-like text, explanations, and revised versions on request. There is no native group roster export button, Zoom export, persistent scenario file, or structured diagnostics unless the user asks and verifies the text.",
        "privacy": "Poor fit for sensitive rosters unless configured carefully. Free/consumer ChatGPT may use submitted content to improve models depending on settings; chats are stored unless deleted or temporary chat is used; and users should not paste student/personnel data without the right account, consent, and data controls.",
        "accountFriction": "Free access exists and some use is possible without signing in, but practical saved workflows, higher limits, file/context features, and data controls depend on account state and plan limits.",
        "resultQuality": "Can be surprisingly good for small, clearly specified grouping tasks, but it can also make silent mistakes. No deterministic seed, no guaranteed constraint satisfaction, no repeat matrix, and no solver validation. Manual checking is mandatory."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "partial",
        "No account required": "partial",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "partial",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "partial",
        "Per-session constraints": "partial",
        "Person/group visit count constraints": "partial",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "yes",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "no",
        "Weighted random entries": "partial",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "partial"
      },
      "pros": [
        "Natural-language grouping instructions",
        "Can handle unusual constraints in a draft",
        "Can explain and revise assignments",
        "Can format output as tables or CSV-like text",
        "Useful for brainstorming grouping rules"
      ],
      "cons": [
        "Not a deterministic solver",
        "Must manually check duplicates, omissions, and rule violations",
        "Poor default fit for sensitive rosters",
        "Free-tier limits and model variability",
        "No native group-generator export or diagnostics"
      ],
      "reviewNote": "Review the free consumer ChatGPT workflow, not paid Team/Enterprise/API or custom solver code. The main risk is unvalidated output and privacy, not lack of flexibility.",
      "tags": [
        "constraints",
        "ai-assisted"
      ]
    },
    {
      "id": "chirag-mehta-team-maker",
      "rank": 57,
      "name": "Chirag Mehta Team Maker",
      "url": "https://chir.ag/projects/team-maker/",
      "bestFor": "Lightweight random teams with editable team names and CSV output",
      "summary": "Chirag Mehta Team Maker is a classic lightweight random team generator. Paste names, choose a number of teams with a slider, optionally use preset or custom team names, then generate HTML output. It also offers a new-window HTML output and a CSV export labeled “Save as Excel.” For a small old web tool, that is a solid output surface. The limitation is that it is just random teams: no group-size mode, constraints, balancing, repeat handling, saved rosters, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "One of the better old-school simple team makers because it has custom/random team names and CSV export, but it remains a basic random splitter.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 2.5,
        "features": 2.7,
        "outputs": 3.5,
        "privacy": 2.7,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Paste names, set the number of teams, optionally edit team names, and generate. The slider-only team count is a little awkward, but the workflow is mostly obvious.",
        "design": "Old but compact and readable. It is far less noisy than many ad-heavy randomizer pages, though visually dated.",
        "features": "Good conveniences for a simple randomizer: preset team-name themes, editable team names, HTML preview/new-window output, and CSV export. It has no constraints, balancing, repeat avoidance, saved rosters, or multi-round planning.",
        "outputs": "Stronger than most basic splitters because it can show HTML output in the page, open a new-window HTML result, and export CSV for Excel. There is no dedicated copy button or Zoom breakout export.",
        "privacy": "No account and no giant consent/ad wall, but the page loaded Google Tag Manager/Analytics/DoubleClick and generation appears to post names to the site for output, so it is not ideal for sensitive rosters.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Fine random teams, with custom labels. It does not optimize membership quality or manage repeat pairings."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "CSV/Excel export",
        "HTML preview and new-window output",
        "Editable team names",
        "Preset themed team names",
        "Simple compact interface"
      ],
      "cons": [
        "No constraints or balancing",
        "No repeat avoidance",
        "No saved rosters",
        "No group-size mode",
        "Dated interface",
        "Names appear to be posted to the site for generation"
      ],
      "reviewNote": "Keep this rated as a simple random team maker. Its CSV export and editable team names are real advantages, but they should not be mistaken for constraint-aware grouping.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "cindergpt-random-team-generator",
      "rank": 58,
      "name": "CinderGPT Random Team Generator",
      "url": "https://www.cindergpt.com/tools/random-team",
      "bestFor": "Quick random teams with copy/download/share and local browser processing claims",
      "summary": "CinderGPT Random Team Generator is a competent simple splitter. Paste one name per line, choose either number of teams or team size, generate, then copy, download, or share the result. The page claims local browser processing and cryptographically secure random numbers via the Web Crypto API. It is random-only: no constraints, roles, balancing, saved rosters, repeat reduction, or diagnostics.",
      "pricing": "Free web tool. No registration required.",
      "overallRating": 3.0,
      "overallComment": "A solid simple random team tool with better outputs than many. Feature depth uses basic, and the site has analytics/tracking surface despite local-processing claims.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 3.6,
        "features": 2.1,
        "outputs": 3.4,
        "privacy": 2.7,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Straightforward paste, choose method, generate workflow.",
        "design": "Modern dark UI and readable results. The broad tools-hub navigation adds some noise but not much.",
        "features": "Number-of-teams and team-size modes are useful basics. No constraints, leaders, attributes, repeats, saved rosters, or diagnostics.",
        "outputs": "Good for this tier: copy, download, and share buttons are available after generation. No spreadsheet/Zoom-specific export.",
        "privacy": "The tool claims local browser processing and the privacy policy says no personal data collection, but the page loads Google Tag Manager/analytics-style scripts and Yandex-related storage.",
        "accountFriction": "No registration required.",
        "resultQuality": "Slightly above the bare minimum because it supports team-size mode and uses Web Crypto according to page copy, but assignment quality remains random-only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No registration required",
        "Number-of-teams or team-size mode",
        "Copy, download, and share controls",
        "Claims local browser processing",
        "Claims Web Crypto randomness",
        "Modern UI"
      ],
      "cons": [
        "No constraints or balancing",
        "No leaders or roles",
        "No saved rosters/history",
        "No repeat optimization",
        "No pair diagnostics",
        "Analytics/tracking scripts despite privacy-friendly copy"
      ],
      "reviewNote": "Scope to the Random Team tool, not CinderGPT’s broader AI/tools network branding.",
      "tags": []
    },
    {
      "id": "converterpanda-random-group-generator",
      "rank": 59,
      "name": "ConverterPanda Random Group Generator",
      "url": "https://converterpanda.com/random-group-generator/",
      "bestFor": "Basic random groups with remaining-member handling, naming styles, stats, export, and print",
      "summary": "ConverterPanda Random Group Generator is a surprisingly full basic splitter. Live testing pasted twelve names and generated four groups of three. It supports grouping by size or number of groups, handling remaining members by distributing, separating, or excluding them, multiple group naming styles, shuffle list, sample data, regenerate, statistics, export, print, and clear results. It has no constraints, attributes, repeat avoidance, saved rosters, or quality diagnostics, and the page loads ads/consent/Grow/WordPress tracking.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A good basic splitter with useful output and remaining-member options, not an advanced grouping solver.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 3.1,
        "features": 3.0,
        "outputs": 3.2,
        "privacy": 1.2,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The form is somewhat busy but generation worked clearly.",
        "design": "Readable settings, stats, and generated group cards.",
        "features": "By-size/by-count, remaining-member handling, naming styles, shuffle, regenerate, stats, export, and print are useful basics.",
        "outputs": "Export Groups and Print Groups controls were visible after generation.",
        "privacy": "Google ads/consent, Grow, WordPress stats/pixel, and fonts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By size or by number of groups",
        "Remaining-member handling",
        "Multiple group naming styles",
        "Shuffle and regenerate",
        "Statistics",
        "Export and print controls"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved roster workflow",
        "Heavy ad/tracking footprint"
      ],
      "reviewNote": "Live test generated four groups of three with statistics and export/print controls.",
      "tags": []
    },
    {
      "id": "diverse-group-generation",
      "rank": 60,
      "name": "Diverse Group Generation",
      "url": "https://diverse-group-generation.vercel.app/",
      "bestFor": "Small attribute-balanced grouping experiments",
      "summary": "Diverse Group Generation is a prototype-style balanced grouping tool. Instead of pasting names, you build a member table made of attributes and options, then choose the number of groups. It runs an optimization/genetic-algorithm approach to make each group’s attribute distribution resemble the overall member distribution. That is much more interesting than a plain random splitter, but the workflow is narrow: members are IDs, setup is manual, there is no roster import, no names-first workflow, no constraints, no export, and no saved scenarios.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A genuinely interesting balancing prototype with better assignment logic than most simple randomizers, but too rough and output-limited for normal classroom or workshop use.",
      "ratings": {
        "easeOfUse": 2.2,
        "design": 3.1,
        "features": 3.0,
        "outputs": 1.4,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 3.6
      },
      "ratingComments": {
        "easeOfUse": "The concept is clear once understood, but the names-first workflow most people expect is missing. You have to build attributes/options and edit member rows manually.",
        "design": "Clean enough for a prototype, with collapsible sections and visible distribution counts. Some UI text and duplicate-looking options are rough.",
        "features": "The important feature is real attribute-distribution balancing across multiple attributes. It lacks many practical features: import/export, named rosters, constraints, repeat handling, saved scenarios, and result editing.",
        "outputs": "Results are shown as tables of member IDs and attribute distributions. There is no obvious CSV, copy, PDF/image, share link, or structured export.",
        "privacy": "No account is required and the app appears lightweight, but the page loads Google advertising infrastructure and Vercel analytics. There is no strong privacy posture for roster data.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "For attribute-balanced grouping, the assignment logic is more serious than random splitting. It only optimizes the simple attribute table it is given and offers no constraints or repeat history."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "yes",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Balances multiple attributes",
        "Shows per-group attribute distributions",
        "Uses an optimization/genetic-algorithm approach",
        "No account required",
        "Custom attributes/options"
      ],
      "cons": [
        "No names-first paste workflow",
        "No import or export",
        "No constraints or repeat avoidance",
        "Members are displayed as IDs rather than normal roster names",
        "Prototype-like UI and limited practical workflow",
        "Loads Google advertising infrastructure"
      ],
      "reviewNote": "Score as a balancing prototype, not as a polished classroom roster tool. Its result quality deserves credit for attribute optimization, while usability/output should stay low until it supports names, import/export, and practical review/edit workflows.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "jarvisbox-team-picker",
      "rank": 61,
      "name": "JarvisBox Team Picker",
      "url": "https://tools.jarvisbox.app/pick/team-picker/",
      "bestFor": "Privacy-friendly one-page team splitting with copy/download",
      "summary": "JarvisBox Team Picker is a clean client-side splitter. Live testing pasted names, set the number of teams, and generated output with Copy and Download controls. The page says it uses crypto.getRandomValues and that names never leave the device; the observed host footprint was only tools.jarvisbox.app. It is good for simple privacy-conscious splits, but it has no constraints, attributes, saved rosters, repeat avoidance, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "Excellent privacy posture for a simple random splitter; limited feature depth.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.3,
        "features": 2.2,
        "outputs": 3.0,
        "privacy": 4.8,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Paste names, set team count, split. The workflow is direct.",
        "design": "Clean, uncluttered result area inside a larger tool directory page.",
        "features": "Basic team-count splitting with copy and download. No advanced grouping controls.",
        "outputs": "Copy and download controls were visible after generation.",
        "privacy": "Strong: client-side claim and only the JarvisBox host was observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Client-side privacy claim",
        "Very light host footprint",
        "Simple pasted-list workflow",
        "Copy and download controls"
      ],
      "cons": [
        "No team-size mode verified",
        "No constraints",
        "No attributes",
        "No repeat avoidance",
        "No saved rosters or diagnostics"
      ],
      "reviewNote": "Live test generated a 92-character output from twelve names.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "lekktura-random-name-picker-group-maker",
      "rank": 62,
      "name": "Lekktura Random Name Picker & Group Maker",
      "url": "https://lekktura.com/tools/random-name-picker",
      "bestFor": "Classroom name picking plus basic random groups",
      "summary": "Lekktura combines a random name picker wheel with a basic group maker. For grouping, paste names, apply the list, choose by size or by count, use quick presets, create groups, shuffle, copy, or export CSV. It stores the current list locally in the browser and does not require an account. The group maker is useful and more export-friendly than many simple tools, but it has no lock-together/keep-apart rules, attribute inputs, repeat handling, saved multiple class lists, or diagnostics.",
      "pricing": "Free tool. No account is required for the picker/group maker, though the surrounding Lekktura product has login, school, pricing, and Stripe/payment surfaces.",
      "overallRating": 3.0,
      "overallComment": "A good classroom utility with CSV/copy output and a name picker, limited to basic random grouping.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.4,
        "features": 2.6,
        "outputs": 3.4,
        "privacy": 1.9,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The grouping workflow works, but it requires applying names before group creation. That extra step makes it less immediate than the simplest splitters.",
        "design": "Modern and classroom-oriented. Some emoji/icons rendered garbled in testing, and the page is embedded in a broader product-marketing site.",
        "features": "Useful basic grouping features: by-size/by-count modes, presets, shuffle, copy, CSV, and local current-list storage. No constraints, attributes, repeated rounds, or saved multi-class roster management.",
        "outputs": "Copy and CSV export both exist, and CSV download worked. No PDF/image, share link, Zoom export, or richer result format.",
        "privacy": "The tool says names stay in browser local storage, which is a good design choice. The page also loaded Google Analytics/Tag Manager, Microsoft Clarity, Contentsquare, Ahrefs analytics, Stripe, and other product-site scripts.",
        "accountFriction": "No signup or login is needed for the free tool.",
        "resultQuality": "Balanced random grouping only. It is practical for one-off classroom groups, not for constraints or optimized group quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Name picker and group maker in one page",
        "By size or by count",
        "Quick presets",
        "Copy results",
        "CSV export",
        "Local current-list storage"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved multi-class roster manager",
        "Requires an apply-names step",
        "Heavy product-site analytics/tracking surface"
      ],
      "reviewNote": "Scope the review to the free random name picker/group maker page, not Lekktura’s broader school dashboard.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "letsrandomize-random-team-generator",
      "rank": 63,
      "name": "LetsRandomize Random Team Generator",
      "url": "https://letsrandomize.org/tools/random-team-generator/",
      "bestFor": "Fast browser-side team splits with copy/share, recent history, and random-captain mode",
      "summary": "LetsRandomize Random Team Generator is a good simple splitter. Paste names, choose 2, 3, 4, 5, 6, or 8 teams, choose Equal Teams or Random Captains, generate, regenerate, copy all teams, share, and keep recent results in local storage. It uses cryptographic randomness and runs client-side, but it is random-only: no constraints, attributes, repeat avoidance, imports, or solver diagnostics.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 3.0,
      "overallComment": "A strong basic random team generator with nice copy/share/history touches. It is not a solver, but it does the simple job well.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.6,
        "features": 2.2,
        "outputs": 3.1,
        "privacy": 2.3,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very straightforward: paste names, pick team count, generate. Preset team-count buttons are quick but less flexible than arbitrary counts.",
        "design": "Clean and readable, with useful guidance below the tool. Ads add some noise.",
        "features": "Better than the bare minimum thanks to random captains, regenerate, share, copy, and recent history. No constraints, balancing attributes, saved rosters, or repeat planning.",
        "outputs": "Copy All Teams, Share, and local recent results are useful. No CSV, PDF, spreadsheet, or Zoom-specific export.",
        "privacy": "The tool says randomization is client-side and stores history locally, which is good. The page loads Google AdSense, Funding Choices, and Google Analytics.",
        "accountFriction": "No account required.",
        "resultQuality": "Slightly above bare random because captains mode can nominate leaders, but it is random-only assignment."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Paste names textarea",
        "Equal teams or random captains",
        "Regenerate button",
        "Copy all teams",
        "Share button",
        "Recent results stored locally",
        "Client-side cryptographic randomness claim"
      ],
      "cons": [
        "Preset team counts only",
        "No group-size mode",
        "No constraints or attribute balancing",
        "No saved rosters",
        "No CSV/PDF export",
        "AdSense/Funding Choices privacy footprint"
      ],
      "reviewNote": "Good basic splitter; do not inflate it for the long educational article around the tool.",
      "tags": []
    },
    {
      "id": "partyplay-team-generator",
      "rank": 64,
      "name": "PartyPlay Team Generator",
      "url": "https://partyplay.games/en/team-generator/",
      "bestFor": "Casual party/classroom teams with paste, saved lists, captain mode, copy, and share",
      "summary": "PartyPlay Team Generator is a working casual team splitter. Live testing opened the paste-names panel, pasted twelve names, added them, and generated two teams of six after an animation. It supports by-teams and by-size modes, saved lists in the browser, captain mode, shuffle/regenerate, Copy All, and Share. It is more usable than many basic splitters, but it has no constraints, attributes, repeat handling, diagnostics, or CSV/PDF export.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A polished casual team generator with useful copy/share flow, not an advanced grouping tool.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.7,
        "features": 2.8,
        "outputs": 2.7,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The paste panel is slightly hidden, but the workflow worked once opened.",
        "design": "Modern dark UI with clear team cards.",
        "features": "By teams/by size, saved lists, captain mode, shuffle, copy, and share are solid casual features.",
        "outputs": "Copy All and Share controls appeared after generation; no file export was verified.",
        "privacy": "No account is needed, but Google ad/consent and Cloudflare scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Paste names panel",
        "By teams or by size",
        "Saved lists",
        "Captain mode",
        "Shuffle/regenerate",
        "Copy All and Share controls"
      ],
      "cons": [
        "Paste panel is hidden by default",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Ad/consent scripts present"
      ],
      "reviewNote": "Live test generated two teams of six after waiting for the shuffle animation.",
      "tags": []
    },
    {
      "id": "randly-group-generator",
      "rank": 65,
      "name": "Randly Group Generator",
      "url": "https://randly.app/tools/group-generator",
      "bestFor": "Clean no-account random groups with multiple generated draws",
      "summary": "Randly Group Generator is a working no-account group generator with a polished interface. A user-confirmed browser retest showed it generating multiple draws from the same roster: users paste names, choose number of groups and number of draws, then get Draw 1, Draw 2, Draw 3, each with balanced group cards. It also exposes copy/regenerate-style controls. Earlier headless automation had failed to observe output because of a React hydration/runtime issue, so the review now credits the human-visible browser behavior while noting that automated testing remained flaky. It is useful for quick alternate random arrangements, but it does not provide constraints, attribute balancing, repeat minimization across draws, saved rosters, diagnostics, or file export.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A clean simple generator with multiple draws; good for alternate random arrangements, not constraint solving.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.6,
        "features": 2.7,
        "outputs": 2.4,
        "privacy": 4.0,
        "accountFriction": 5.0,
        "resultQuality": 2.3
      },
      "ratingComments": {
        "easeOfUse": "Paste names, set number of groups and number of draws, then generate. The visible browser workflow is straightforward.",
        "design": "Polished dark UI with clear draw and group cards.",
        "features": "Multiple draws are useful for comparing random arrangements. There are no constraints, attributes, or repeat-optimization controls.",
        "outputs": "Copy-style controls are visible near results; no CSV/TXT/PDF/image export was verified.",
        "privacy": "No account is needed and only Cloudflare insights was observed in automated testing.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups across multiple independent draws; not a solver or repeat minimizer."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "partial",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Clean pasted-list workflow",
        "Number of groups control",
        "Number of draws control",
        "Multiple generated arrangements",
        "Readable group cards",
        "Light observed third-party footprint"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat minimization across draws",
        "No saved roster workflow",
        "No file export verified",
        "Headless automation observed React hydration flakiness"
      ],
      "reviewNote": "Updated after user-provided screenshot confirmed successful generation with multiple draws. Headless automation continued to show a React hydration error and did not reliably observe output, so browser behavior may be sensitive to runtime/hydration conditions.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "spinnchoose-random-team-generator",
      "rank": 66,
      "name": "SpinnChoose Random Team Generator",
      "url": "https://spinnchoose.com/random-team-generator/",
      "bestFor": "Casual sports, gaming, and classroom team splits with list/bracket views",
      "summary": "SpinnChoose Random Team Generator is a working random team and tournament-bracket maker for casual use. A retest of the underlying tool script generated three balanced teams from twelve pasted names, and a human browser check confirmed the public tool works well. It supports pasted names, custom team names, number-of-teams or team-size mode, list view, bracket view, and copy output. It is useful for quick sports, gaming, and classroom teams, but it has no constraints, attribute balancing, repeat avoidance, saved rosters, diagnostics, or file export. Automated testing also observed that the page depends on LiteSpeed-delivered JavaScript; if that loader fails, inline handlers can break.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "A useful casual team splitter with bracket/list views, once its page JavaScript loads correctly.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.2,
        "features": 2.8,
        "outputs": 2.5,
        "privacy": 1.6,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Pasted-name generation is straightforward in a normal browser, with number-of-teams and team-size modes.",
        "design": "Sports/gaming themed page with a clear tool panel plus extensive article content.",
        "features": "Custom team names, count/size modes, list view, bracket view, and copy output are good casual-team features. No constraints or balancing attributes.",
        "outputs": "Copy Teams is available; no CSV/TXT/PDF/image export was verified.",
        "privacy": "No account is needed, but Google ads/consent, Analytics/Tag Manager, fonts, and ad-quality domains loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only; no solver or quality diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted names",
        "Number-of-teams or team-size mode",
        "Custom team names",
        "List view and bracket view",
        "Copy Teams output",
        "Good for sports/gaming/classroom casual teams"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Ad/analytics footprint",
        "Depends on LiteSpeed-delivered JavaScript loading correctly"
      ],
      "reviewNote": "Retested after user report. Normal headless page load showed missing inline-handler functions when LiteSpeed JavaScript did not execute, but loading the page script produced working three-team output and user confirmed browser behavior works.",
      "tags": []
    },
    {
      "id": "utilitynestai-team-generator",
      "rank": 67,
      "name": "UtilityNestAI Team Generator",
      "url": "https://www.utilitynestai.com/team-generator",
      "bestFor": "Small team splits with individual entry, skill-balance option, custom names, share, and export",
      "summary": "UtilityNestAI Team Generator is a working browser tool, but its input workflow is more manual than paste-first tools. Users add players one at a time or use an import path, set number of teams, optionally add custom team names, enable skill balancing, and generate. Live testing produced three balanced teams and exposed Share and Export buttons. It has useful sports/team-building features, but the page showed React hydration errors, the fastest pasted-roster workflow is not obvious, and the site loads Google ad infrastructure.",
      "pricing": "Free. No account is required for the generator.",
      "overallRating": 3.0,
      "overallComment": "A decent basic team generator with share/export and skill-balance claims, slowed by manual input and rough implementation.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 3.2,
        "features": 3.0,
        "outputs": 3.0,
        "privacy": 2.2,
        "accountFriction": 4.8,
        "resultQuality": 2.7
      },
      "ratingComments": {
        "easeOfUse": "Adding players one by one works, but is slower than paste-first roster tools. Import exists but was not deeply tested.",
        "design": "Result cards are readable and the page explains the workflow, but the huge tool navigation around it is noisy.",
        "features": "Player list, import, team count, custom team names, skill-balance option, share/export, and generated team cards are useful. No constraints, repeats, or diagnostics.",
        "outputs": "Share and Export buttons appear after generation. Exact export format was not deeply verified.",
        "privacy": "No account is needed, but Google Tag Manager and Google ad/quality domains loaded. React errors appeared in testing.",
        "accountFriction": "No signup is needed for generation, though a Sign In button exists.",
        "resultQuality": "Balanced random groups with optional skill-balancing claim. No transparent scoring or solver report."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Player import path",
        "Custom team names",
        "Skill balancing option",
        "Share button",
        "Export button",
        "Clear result cards"
      ],
      "cons": [
        "No paste-first roster workflow found",
        "No keep-apart/keep-together rules",
        "No repeat avoidance",
        "No diagnostics",
        "React hydration errors",
        "Ad infrastructure present"
      ],
      "reviewNote": "Live test added players individually and generated Red/Blue/Green teams. React minified errors appeared during page load.",
      "tags": [
        "constraints",
        "ai-assisted"
      ]
    },
    {
      "id": "wheelplay-team-picker-wheel",
      "rank": 68,
      "name": "WheelPlay Team Picker Wheel",
      "url": "https://wheelplay.net/team-picker-wheel/",
      "bestFor": "Visual team picking with CSV export, representatives, and label/gender distribution options",
      "summary": "WheelPlay Team Picker Wheel is a feature-rich but confusing visual team picker. Live testing eventually worked after adding names, setting pick quantity to all participants, setting three groups, and starting the picker; it generated three groups of four and offered a Groups Board plus CSV download. The page also advertises gender/label distribution, representative picking, custom team names, and preset same/different group rules. The downside is serious UX friction: if pick quantity is left wrong, it can generate only one selected person, and the page loaded unusual third-party hosts.",
      "pricing": "Free. No account is required.",
      "overallRating": 3.0,
      "overallComment": "Potentially powerful for a free visual picker, but easy to misconfigure and not privacy-clean.",
      "ratings": {
        "easeOfUse": 2.1,
        "design": 3.0,
        "features": 3.7,
        "outputs": 3.2,
        "privacy": 1.4,
        "accountFriction": 5.0,
        "resultQuality": 2.6
      },
      "ratingComments": {
        "easeOfUse": "The live test required discovering that pick quantity must be set to all participants before normal grouping works.",
        "design": "Visual wheel/group-board interface is useful, but the control model is cluttered.",
        "features": "Gender/label distribution, representative picking, CSV download, custom team names, and preset same/different group options are stronger than a plain splitter.",
        "outputs": "Groups Board and Download Result (.csv) were visible after successful generation.",
        "privacy": "No login is needed, but CloudFront, Google fonts, a QuikNode endpoint, and suspicious .beer script hosts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Can create balanced random groups; advanced balancing/rules were not deeply validated."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "CSV download",
        "Group board",
        "Representative picker",
        "Gender/label distribution options",
        "Custom team names",
        "Preset same/different group option"
      ],
      "cons": [
        "Confusing pick quantity control",
        "Easy to generate the wrong result",
        "Unusual third-party script hosts",
        "No repeat avoidance",
        "Advanced rules not deeply verified"
      ],
      "reviewNote": "Live test worked only after explicitly setting pickQuantity to 12. Initial generic test selected one participant into one group.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "classroom-group-online-group-generator",
      "rank": 69,
      "name": "Classroom.Group Online Group Generator",
      "url": "https://classroom.group/online-group-generator",
      "bestFor": "Teachers who want a simple local web splitter and may later upgrade to the iOS Groups app",
      "summary": "Classroom.Group Online Group Generator is the web companion to the Groups iOS app. The online tool lets you add student names, choose grouping by size or count, generate groups, and view previous groups. It says groups are generated locally and names are saved locally on the device. The more interesting features — avoided peers, gender balancing, unlimited classes, bulk import, PDF/print/export, and iCloud sync — are in the native app, not the web generator.",
      "pricing": "Online generator is free. The iOS app is free with in-app purchases: Pro Monthly $2.99, Pro Yearly $14.99, or Pro $39.99.",
      "overallRating": 2.9,
      "overallComment": "A clean teacher-focused web splitter with good local-data posture, but most serious features live in the paid/native app.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 3.7,
        "features": 2.2,
        "outputs": 1.4,
        "privacy": 3.6,
        "accountFriction": 4.4,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The web flow is understandable, but adding students one by one is slower than pasting a whole roster into a textarea.",
        "design": "Clean, teacher-friendly, and uncluttered. Much better than generic ad-heavy randomizer pages.",
        "features": "The web tool has group size/count and previous groups. Avoided peers, gender balancing, classes, bulk import, export/print, and sync are app features, not web features.",
        "outputs": "Weak on the web: visible results and previous groups, but no clear copy, CSV, PDF, print, or share workflow. The native app has export and print.",
        "privacy": "Good for the web tool because generation and names are described as local. The site uses Google Analytics, and the app privacy policy lists Firebase/Crashlytics/TelemetryDeck usage and diagnostics.",
        "accountFriction": "The web generator does not require an account. Advanced app features require installing the app and some features are Pro/in-app purchase.",
        "resultQuality": "Slightly above a bare splitter because it avoids impossible/singleton group outputs and keeps previous groups, but the web tool is random-only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Clean teacher-focused UI",
        "Group by size or count",
        "Names saved locally on device",
        "Generation described as local",
        "Previous groups visible",
        "Native app offers avoided peers, gender balancing, import, export, and print"
      ],
      "cons": [
        "Web tool lacks paste-a-roster textarea",
        "Most advanced features require the app",
        "No web copy/CSV/export workflow",
        "No multi-session optimizer",
        "Google Analytics on the site",
        "App has Firebase/Crashlytics/TelemetryDeck diagnostics"
      ],
      "reviewNote": "Scope the score to the online generator while mentioning the separate native Groups app where relevant.",
      "tags": []
    },
    {
      "id": "decidehub-team-generator",
      "rank": 70,
      "name": "DecideHub Team Generator",
      "url": "https://decidehub.app/team-generator/",
      "bestFor": "Sports-style two-to-six-team splits with copy and local saved rosters",
      "summary": "DecideHub Team Generator is a clean sports-oriented random team tool. Live testing pasted twelve names and generated two balanced teams of six. It supports quick team-count buttons from two to six, regenerate, copy results, sharing, and locally saved player lists. It is easy and lightweight, but it has no group-size mode, constraints, attributes, repeat avoidance, export files, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "A pleasant basic team generator with local roster saving, limited to simple random teams.",
      "ratings": {
        "easeOfUse": 3.9,
        "design": 3.4,
        "features": 2.3,
        "outputs": 2.4,
        "privacy": 4.2,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste names and choose a team-count button. The workflow is straightforward.",
        "design": "Clean sports-themed page with readable result cards.",
        "features": "Regenerate, copy results, share, and local saved rosters are useful. Advanced grouping features are absent.",
        "outputs": "Copy Results and Share controls were visible; no file export was verified.",
        "privacy": "Only decidehub.app was observed in the broad test.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Simple pasted-list workflow",
        "Quick team-count buttons",
        "Regenerate",
        "Copy results",
        "Local saved player lists",
        "Light observed host footprint"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Team count capped by preset buttons"
      ],
      "reviewNote": "Live test generated two teams of six from twelve names.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "findutils-random-picker-team-mode",
      "rank": 71,
      "name": "FindUtils Random Picker / Team Mode",
      "url": "https://findutils.com/generate/random-picker/",
      "bestFor": "Privacy-leaning browser-side team splits inside a multipurpose random picker",
      "summary": "FindUtils Random Picker includes a working Team Generator mode. Live testing selected Team Generator, pasted twelve names, set three teams, and generated three balanced teams with a Copy control. The page claims client-side Web Crypto randomization and no upload. It is practical for simple teams, but team mode is one tab in a broader random picker, with no constraints, attributes, repeat avoidance, saved roster workflow, file export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "A useful privacy-leaning basic team mode, limited to simple balanced random groups.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.2,
        "features": 2.2,
        "outputs": 2.4,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Team mode works, but users must select the correct tab from a multipurpose random-picker UI.",
        "design": "Modern page with clear form/results, but much surrounding content.",
        "features": "Team-count splitting and copy are the main relevant features.",
        "outputs": "Copy control appeared after generation; no file export was verified.",
        "privacy": "The page claims client-side processing, but Clarity, Google Analytics, and Tag Manager loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted-list workflow",
        "Web Crypto/client-side claim",
        "Copy output",
        "Balanced teams in live test"
      ],
      "cons": [
        "Team mode is hidden behind tabs",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Analytics scripts present"
      ],
      "reviewNote": "Live test generated three teams of four in Team Generator mode.",
      "tags": []
    },
    {
      "id": "microsoft-excel",
      "rank": 72,
      "name": "Microsoft Excel",
      "url": "https://www.microsoft.com/microsoft-365/excel",
      "bestFor": "Spreadsheet users who want local files or organization-controlled rosters",
      "summary": "Microsoft Excel can be used as a DIY random group generator with RAND/RANDBETWEEN formulas, random sorting, templates, or macros. It is powerful for rosters, exports, and offline/organization-controlled workflows, but like Google Sheets it is not a purpose-built group generator unless the user builds or downloads a template.",
      "pricing": "Included in Microsoft 365 plans or standalone Office licenses; Excel for the web is available with a Microsoft account, and organization/education pricing varies.",
      "overallRating": 2.9,
      "overallComment": "Slightly better than Google Sheets for privacy/offline control, but a DIY spreadsheet workflow rather than a real group-generator product.",
      "ratings": {
        "easeOfUse": 2.0,
        "design": 3.7,
        "features": 2.8,
        "outputs": 4.8,
        "privacy": 3.8,
        "accountFriction": 2.2,
        "resultQuality": 2.6
      },
      "ratingComments": {
        "easeOfUse": "Not easy as a group generator. Excel users can build a random grouping sheet with formulas or templates, but this is setup work, not paste names and click generate.",
        "design": "Excellent spreadsheet UI for people who know Excel, but no purpose-built grouping interface unless you build one with a template, macro, or workbook design.",
        "features": "Flexible but DIY. Excel can handle arbitrary team counts, group sizes, saved rosters, notes, formulas, filters, imports, exports, macros, Power Query, and custom templates. Constraints, balancing, and repeat handling are only partial because users must design the logic themselves.",
        "outputs": "Excellent output surface: copy/paste, XLSX, CSV, PDF/print, local files, OneDrive/SharePoint sharing, versioning, and organization workflows. Stronger than most dedicated simple randomizers on export alone.",
        "privacy": "Better than many web tools because workbooks can stay local/offline or inside an organization-controlled Microsoft 365 tenant. Not automatically private: cloud storage, connected experiences, diagnostic/service data, links, macros, and sharing permissions all need care.",
        "accountFriction": "Desktop Excel requires a license or Microsoft 365 access, and Excel for the web requires a Microsoft account. Organizations may already have it, but it is not a no-account web tool.",
        "resultQuality": "Basic formula-based random groups are normal random-splitter quality. Better logic is possible with formulas/macros, but Excel has no built-in group solver, repeat minimizer, validation, or diagnostics."
      },
      "features": {
        "API/programmatic access": "partial",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "partial",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "partial",
        "No account required": "partial",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "partial",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "partial",
        "Per-session constraints": "partial",
        "Person/group visit count constraints": "partial",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "partial",
        "Result comments": "yes",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "yes",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "partial",
        "Weighted random entries": "partial",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "partial"
      },
      "pros": [
        "Very flexible for spreadsheet users",
        "Excellent CSV/XLSX/PDF/print output",
        "Can work offline or in controlled organization storage",
        "Good for saved rosters, notes, and versioned workbooks",
        "Extensible with formulas, templates, macros, and Power Query"
      ],
      "cons": [
        "Not purpose-built for group generation",
        "Requires formulas/templates/macros",
        "Microsoft account or license required for normal use",
        "No built-in constraints or repeat optimizer",
        "Privacy depends on local/cloud/sharing/admin setup"
      ],
      "reviewNote": "Review as Excel used directly for grouping, not a specific third-party Excel template. Credit offline/local and organization-controlled workflows, but keep grouping scores below purpose-built generators because the logic is user-built.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "randomgroup-online",
      "rank": 73,
      "name": "RandomGroup.online",
      "url": "https://randomgroup.online/",
      "bestFor": "Multilingual basic random groups with copy, TXT, and Excel export",
      "summary": "RandomGroup.online is a basic multilingual random group generator. Paste a list, choose fixed number of groups or fixed number of members, optionally adjust separators, generate, then copy groups or download TXT/Excel output. Live testing generated three balanced groups from twelve names and exposed Copy All, Download TXT, Download Excel, Reset, and per-group copy buttons. The tool is useful for simple one-off grouping, but it has no constraints, attributes, repeat handling, saved rosters, diagnostics, or polished result text extraction.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "A solid simple splitter with multilingual pages and TXT/Excel output, limited to random grouping.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 2.8,
        "features": 2.2,
        "outputs": 3.5,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Simple pasted-name workflow with group-count or member-count mode.",
        "design": "Plain but functional. Result display was less text-accessible in automated testing than the best tools.",
        "features": "Basic random grouping with two split modes, separator options, multilingual pages, and copy/download controls. No constraints, attributes, repeats, or saved lists.",
        "outputs": "Copy All, per-group copy, TXT download, and Excel download are available after generation.",
        "privacy": "No account is required. Google Tag Manager/Analytics and cdnjs loaded, but no large ad consent wall was observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Fixed group count or fixed members mode",
        "Custom separators",
        "Copy all and per-group copy",
        "Download TXT",
        "Download Excel",
        "Many languages"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved roster workflow",
        "No diagnostics",
        "Plain UI"
      ],
      "reviewNote": "The tool offers many localized paths. Live output showed group counts and export controls; names were not cleanly exposed in body text extraction.",
      "tags": []
    },
    {
      "id": "randomgroup-org-random-group-generator",
      "rank": 74,
      "name": "RandomGroup.org Random Group Generator",
      "url": "https://randomgroup.org/",
      "bestFor": "No-account random groups with TXT/CSV export",
      "summary": "RandomGroup.org is a clean basic random group generator. Paste names or upload a file, choose by number of groups or by group size, generate, then export results as TXT or CSV. It claims browser-side processing and no stored information. The tool is practical for simple one-off groups, but it has no constraints, attributes, repeat handling, saved rosters, manual editing, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "A solid basic splitter because TXT/CSV export is built in. Assignment quality remains random-only.",
      "ratings": {
        "easeOfUse": 4.5,
        "design": 3.5,
        "features": 2.4,
        "outputs": 3.5,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, choose a split mode, set the number, and generate.",
        "design": "Clean and readable with multilingual navigation. The page is generic but not chaotic.",
        "features": "Covers the basic random grouping workflow with pasted names, file upload, by-count/by-size modes, and regeneration. No grouping rules, attributes, repeats, or optimization controls.",
        "outputs": "TXT and CSV exports are useful and visible after generation. No PDF/image, share link, copy button, or Zoom-specific format.",
        "privacy": "Better than ad-heavy utilities because no account is required and the site claims browser-side processing with no stored information. The page loaded Google Analytics/Tag Manager and an additional third-party domain, so it is not tracker-free.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random distribution only. Good enough for quick teams, not for constraints or repeat reduction."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By group count or group size",
        "File upload",
        "TXT export",
        "CSV export",
        "Multilingual interface"
      ],
      "cons": [
        "No constraints or balancing attributes",
        "No repeat avoidance",
        "No saved roster/history workflow",
        "No manual result editing",
        "Tracking scripts present"
      ],
      "reviewNote": "The footer GitHub link appears placeholder-like; do not over-credit openness unless verified separately.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "rapidwebapp-random-team-generator",
      "rank": 75,
      "name": "RapidWebApp Random Team Generator",
      "url": "https://www.rapidwebapp.com/random-team-generator",
      "bestFor": "Iframe-based random teams with custom names, leaders, copy, and image export",
      "summary": "RapidWebApp Random Team Generator embeds a working random-team app inside an ad-heavy article page. In the iframe, paste names, optionally enter custom team names, choose number-of-teams or people-per-team mode, optionally assign a team leader, generate, shuffle results, copy text, or save the teams as an image. The app generated balanced teams in live testing. The outer page is cluttered with ads, games, share widgets, comments, and a consent system, and the tool has no constraints, attributes, repeats, roster saving, CSV export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "Useful basic iframe tool with image export and leaders, weakened by a noisy ad-heavy host page.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 2.7,
        "features": 2.5,
        "outputs": 3.0,
        "privacy": 0.8,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The embedded app is simple once located. The outer page makes it harder to focus.",
        "design": "The iframe form and team cards are clear; the surrounding RapidWebApp page is cluttered with unrelated content and ads.",
        "features": "Basic split modes, custom team names, leader assignment, shuffle, copy, and image export. No constraints, attributes, repeat planning, saved rosters, or diagnostics.",
        "outputs": "Copy Text and Save as Image are available. No CSV/TXT/PDF or shareable result link was verified.",
        "privacy": "Very weak for roster data: Google ads/consent, AddToAny, Google Tag Manager/Analytics, Cloudflare/CDN, and many ad-related requests loaded on the host page.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Plain balanced random groups with optional leader labels."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By number of teams or people per team",
        "Custom team names",
        "Optional team leader assignment",
        "Shuffle results",
        "Copy text",
        "Save as image"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No CSV export",
        "No saved roster workflow",
        "Ad-heavy outer page and consent system"
      ],
      "reviewNote": "The working tool is inside iframe https://www.rapidwebapp.com/web-app/randomteam/.",
      "tags": []
    },
    {
      "id": "teamshufflr",
      "rank": 76,
      "name": "TeamShufflr",
      "url": "https://teamshufflr.com/de/",
      "bestFor": "In-person workshops that want printable team cards rather than a normal result table",
      "summary": "TeamShufflr is not a conventional paste-names-and-show-groups generator. It creates individualized team cards for workshops: set participant/card counts, define teams and team sizes, choose distinguishing features such as colors/names/icons, print cards, and reshuffle by using card features during activities. That can be useful for facilitation, but it is an indirect card workflow rather than a serious group assignment solver.",
      "pricing": "Basic version is free. The site mentions custom branded cards by contacting them.",
      "overallRating": 2.9,
      "overallComment": "A clever physical-workshop card system, not a normal group generator. Useful niche, but it should not be rated like a solver.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 4.0,
        "features": 2.7,
        "outputs": 3.4,
        "privacy": 2.6,
        "accountFriction": 4.8,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "More setup than a normal random splitter because the product centers on creating cards and using them during an event.",
        "design": "Polished and friendly. The app and landing page are much better designed than most randomizer pages.",
        "features": "Niche but real: participant/card setup, team sizes, card features, names/colors/icons, printable cards, and repeated shuffling during workshops. No constraints, attributes, diagnostics, or repeat optimization.",
        "outputs": "Good if you want printable cards or workshop handouts. Weak if you just want copy/CSV/Zoom-ready groups.",
        "privacy": "German/GDPR-style privacy pages and cookie settings are better than many utilities, but the site uses Google Analytics/GTM cookies.",
        "accountFriction": "The simple card workflow can be used without an account.",
        "resultQuality": "Random card assignment can mix people during activities, but it does not optimize assignments or reduce repeats algorithmically."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished workshop-focused design",
        "Printable team cards",
        "Can use names, colors, and icons",
        "Useful for repeated in-person shuffles",
        "No account needed for basic card creation",
        "Free basic version"
      ],
      "cons": [
        "Indirect card workflow",
        "Not a normal group result table",
        "No copy/CSV/Zoom export",
        "No constraints or balancing solver",
        "No repeat-minimization engine",
        "Google analytics/tag cookies"
      ],
      "reviewNote": "Evaluate TeamShufflr as a facilitation-card product, not a conventional result-table generator.",
      "tags": []
    },
    {
      "id": "trumpexcel-random-team-generator",
      "rank": 77,
      "name": "TrumpExcel Random Team Generator",
      "url": "https://trumpexcel.com/tools/random-team-generator/",
      "bestFor": "Simple local random groups with spreadsheet-friendly output",
      "summary": "TrumpExcel Random Team Generator is a polished simple random splitter embedded in a spreadsheet-focused site. Paste names, choose number of groups or people per group, generate, shuffle again, then copy to clipboard, download CSV, or print a clean table. It runs locally according to the page copy, and the output is genuinely spreadsheet-friendly, but there are no constraints, balancing, leaders, repeat controls, or saved rosters.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.9,
      "overallComment": "A good basic splitter with strong spreadsheet-oriented exports. Privacy is the major drag because the surrounding site has a heavy consent/ad-tech layer.",
      "ratings": {
        "easeOfUse": 4.5,
        "design": 3.7,
        "features": 2.0,
        "outputs": 4.0,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, choose split method, generate. The surrounding blog page is busy, but the embedded tool itself is clear.",
        "design": "The tool UI is clean and modern enough, but it sits inside a busy WordPress/Excel blog page with newsletter/promo/navigation clutter.",
        "features": "Basic: number-of-groups, people-per-group, live name count, shuffle again, reset. No constraints, balancing, multi-session repeats, leaders, attributes, or diagnostics.",
        "outputs": "Strong for a simple splitter: copy-to-clipboard in spreadsheet-friendly columns, CSV download, and print view. No Zoom-specific export or share links.",
        "privacy": "Bad for sensitive rosters despite local tool processing. The page shows a consent dialog for 141 partners, including precise geolocation and ad/personalization purposes, plus Google tags and a heavy WordPress/ad-tech environment.",
        "accountFriction": "No account required.",
        "resultQuality": "Standard random grouping. Fisher-Yates shuffle and spreadsheet output are useful, but result quality remains random-only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Easy paste-and-generate workflow",
        "Number-of-groups or people-per-group mode",
        "Shuffle again",
        "Copy in spreadsheet-friendly columns",
        "CSV download",
        "Print view",
        "Runs locally according to page copy"
      ],
      "cons": [
        "No constraints or balancing",
        "No repeat optimization",
        "No leaders or pinned placements",
        "No Zoom-specific export",
        "Heavy 141-partner privacy/ad-tech consent layer",
        "Busy blog-page wrapper"
      ],
      "reviewNote": "Playwright test generated 3 groups from 9 names after rejecting the consent dialog and verified Copy, Download CSV, Print, and Shuffle Again buttons.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "wanglitou-list-randomizer-with-teams",
      "rank": 78,
      "name": "Wanglitou List Randomizer with Teams",
      "url": "https://www.wanglitou.com/list-randomizer/",
      "bestFor": "Seedable list randomization and simple team output with copy/TXT download",
      "summary": "Wanglitou List Randomizer with Teams is a general list randomizer with a team mode. Live testing selected Create teams, pasted twelve names, set count three, and produced three four-person teams in a readonly output area. It also supports shuffle, random sample, optional seed for repeatable order, cleanup modes, Copy Output, and Download TXT. It is useful for simple transparent list work, but it is not a dedicated group generator: no constraints, attributes, team naming, repeat handling, saved rosters, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.9,
      "overallComment": "Good list utility with seed and TXT output; limited as a people-grouping tool.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 2.7,
        "features": 2.7,
        "outputs": 3.2,
        "privacy": 3.2,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Team mode works, but changing the select is less obvious than dedicated team-generator forms.",
        "design": "Plain business/tool page with simple controls and output statistics.",
        "features": "Team mode, sample mode, shuffle, seed, cleanup, copy, and TXT download are useful list features.",
        "outputs": "Copy Output and Download TXT are available.",
        "privacy": "No account is needed; Google Analytics/Tag Manager loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Random equal teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "yes",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "partial",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Create teams mode",
        "Seed for repeatable order",
        "Cleanup options",
        "Copy Output",
        "Download TXT",
        "Shuffle and sample modes"
      ],
      "cons": [
        "Generic list utility, not people-aware",
        "No constraints",
        "No attribute balancing",
        "No team naming",
        "No repeat avoidance",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated three teams of four in team mode. Output was plain text.",
      "tags": []
    },
    {
      "id": "zoom-breakout-room-assignment",
      "rank": 79,
      "name": "Zoom breakout room assignment",
      "url": "https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0062540",
      "bestFor": "Assigning live meeting participants directly into Zoom rooms",
      "summary": "Zoom breakout rooms are not a general group generator, but they are a real in-meeting grouping workflow. Hosts can create up to 100 rooms, auto-assign participants evenly, assign manually, let participants choose rooms, pre-assign rooms with a CSV, save assignments for recurring meetings, and move people during the session. It is convenient inside Zoom and weak everywhere else.",
      "pricing": "Breakout rooms are available in Zoom meetings, including free/basic contexts, but meeting duration, participant capacity, admin controls, and large-meeting needs depend on Zoom plan and account settings.",
      "overallRating": 2.9,
      "overallComment": "Very useful if the only destination is a live Zoom meeting. Not a general-purpose group generator and not a quality optimizer.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 3.6,
        "features": 3.0,
        "outputs": 2.8,
        "privacy": 3.2,
        "accountFriction": 2.0,
        "resultQuality": 2.3
      },
      "ratingComments": {
        "easeOfUse": "Easy enough for hosts already comfortable with Zoom, but awkward as a group generator: breakout settings must be enabled, pre-assignment lives in the web portal, CSV setup uses email addresses, and participants often need to be signed in correctly.",
        "design": "The in-meeting breakout UI is functional and integrated into the meeting experience. It is not a dedicated planning interface, but it is much better than exporting from a randomizer and then manually recreating rooms.",
        "features": "Moderate for Zoom-specific grouping: automatic even assignment, manual assignment, participant self-select, room renaming, moving/swapping, up to 100 rooms, CSV pre-assignment, saved assignments for recurring meetings, timers, broadcast, and activity status. Missing general group-generator features: constraints, balancing attributes, repeat optimization, multi-session planning outside recurring-room saves, and diagnostics.",
        "outputs": "The output is directly actionable inside Zoom, which is valuable. Outside Zoom it is weak: pre-assignment CSV import exists, but there is no normal roster export, spreadsheet/report output, or shareable assignment page for other tools.",
        "privacy": "Zoom has serious enterprise/security documentation, DPAs, and education compliance materials, but this is a hosted meeting platform processing participant identities, room names, telemetry/service data, chats/recordings depending on settings, and account/admin data. Better than ad-tech utilities, not private like a local tool.",
        "accountFriction": "High friction for a “group generator”: the host needs a Zoom account/meeting, breakout settings enabled, and pre-assigned participants need matching Zoom accounts/emails for assignments to apply reliably.",
        "resultQuality": "Automatic assignment creates evenly sized rooms, which is fine for live one-off breakouts. It does not balance attributes, satisfy constraints, reduce repeats across varied sessions, or explain quality."
      },
      "features": {
        "API/programmatic access": "partial",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "yes",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "partial",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "no",
        "Per-session capacities": "partial",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "yes",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "partial",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "yes"
      },
      "pros": [
        "Built directly into Zoom meetings",
        "Automatic, manual, and self-select room assignment",
        "CSV pre-assignment import",
        "Can save breakout assignments for recurring meetings",
        "Hosts can move/swap participants live",
        "Timers, broadcast, and activity status help live facilitation"
      ],
      "cons": [
        "Only useful inside Zoom",
        "Host/account/settings friction",
        "Pre-assignment depends on participant Zoom account emails",
        "No constraints or attribute balancing",
        "No general export/report output",
        "No repeat optimization across arbitrary sessions"
      ],
      "reviewNote": "Review only Zoom breakout-room assignment, not Zoom as a full meeting product. It should score well for in-meeting execution but not for general group-generation quality.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "cojoro-team-generator",
      "rank": 80,
      "name": "Cojoro Team Generator",
      "url": "https://cojoro.dedyn.io/RandTeamGen/index.html",
      "bestFor": "Standalone team generation with custom team names, leader selection, and multiple export formats if certificate warnings are acceptable",
      "summary": "Cojoro Team Generator is a capable standalone random team page, but its current HTTPS certificate problem is a major trust and access issue. Retesting with certificate errors ignored produced working output: twelve names, three groups, generated three teams of four. The UI supports optional team names, presets, number of groups or members per team, random leader selection, saved/opened names, help, share/export menu, and page text/search results indicate text, CSV, Markdown, and PNG downloads. The feature set is good for a hobby tool, but the invalid certificate makes it hard to recommend for participant data.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "Featureful for a simple tool, but an invalid HTTPS certificate sharply reduces trust.",
      "ratings": {
        "easeOfUse": 2.6,
        "design": 2.7,
        "features": 3.4,
        "outputs": 3.8,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 2.4
      },
      "ratingComments": {
        "easeOfUse": "The generator worked after bypassing certificate errors; normal users may be blocked or warned away.",
        "design": "Functional form with compact results, not polished.",
        "features": "Custom team names, presets, group count/member count, leader selection, saved/opened names, and export menu are useful.",
        "outputs": "Share/export menu and documented text/CSV/Markdown/PNG options are strong for a simple page.",
        "privacy": "No account or obvious third-party tracking in the targeted run, but the invalid certificate is a serious trust issue.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams with optional leaders, not constraint optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By number of groups or members per team",
        "Custom team names and presets",
        "Random leaders",
        "Save/open names",
        "Text/CSV/Markdown/PNG style export options"
      ],
      "cons": [
        "Invalid HTTPS certificate",
        "Trust/access warning for users",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "Basic UI"
      ],
      "reviewNote": "Initial navigation failed with ERR_CERT_AUTHORITY_INVALID. Retest with ignoreHTTPSErrors generated three teams of four.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "dicegamehub-list-randomizer-team-generator",
      "rank": 81,
      "name": "DiceGameHub List Randomizer & Team Generator",
      "url": "https://dicegamehub.com/tools/list-randomizer",
      "bestFor": "Simple team generation with copy-all and image download",
      "summary": "DiceGameHub List Randomizer & Team Generator combines a list shuffler with a team generator. Live testing selected Generate Teams, set three teams, and produced three teams of four with Copy All and Download Image controls. It is an appealing no-account tool for casual teams or presentation order shuffling. It does not offer constraints, attributes, repeat avoidance, saved rosters, CSV export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A solid casual list/team randomizer with image output, limited to random assignment.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 3.2,
        "features": 2.2,
        "outputs": 2.8,
        "privacy": 2.8,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Mode selection plus team count was simple once the Generate Teams mode was selected.",
        "design": "Playful, readable UI with clear result cards.",
        "features": "Shuffle-list and generate-teams modes are useful; no advanced grouping controls.",
        "outputs": "Copy All and Download Image controls were visible after generation.",
        "privacy": "No account is needed, but Google Tag Manager/Analytics loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "List shuffle and team modes",
        "Team count control",
        "Copy All",
        "Download Image",
        "Clear result cards"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved rosters",
        "No CSV export verified",
        "Google analytics scripts present"
      ],
      "reviewNote": "Live test generated three teams of four.",
      "tags": []
    },
    {
      "id": "google-sheets",
      "rank": 82,
      "name": "Google Sheets",
      "url": "https://sheets.google.com/",
      "bestFor": "Spreadsheet users willing to build their own random grouping template",
      "summary": "Google Sheets can be made into a random group generator with formulas, random sorting, templates, or Apps Script. It is flexible and excellent for storing rosters and exporting results, but it is not a purpose-built group generator: users have to build or copy the grouping logic themselves.",
      "pricing": "Free with a Google account for consumer use; Google Workspace and Workspace for Education plans vary by organization.",
      "overallRating": 2.8,
      "overallComment": "Powerful as a platform, mediocre as a group generator. It can outperform many tiny randomizers if you know Sheets, but the actual group-generation workflow is DIY.",
      "ratings": {
        "easeOfUse": 2.0,
        "design": 3.7,
        "features": 2.8,
        "outputs": 4.7,
        "privacy": 3.4,
        "accountFriction": 2.0,
        "resultQuality": 2.6
      },
      "ratingComments": {
        "easeOfUse": "Not easy as a group generator. Entering a roster is easy, but random grouping requires formulas, sorting, a copied template, or Apps Script. Spreadsheet-comfortable users will be fine; everyone else gets setup work.",
        "design": "The spreadsheet interface is mature, readable, collaborative, and reliable. It is not tailored to group generation, so the UX depends entirely on the sheet/template you build.",
        "features": "Flexible but DIY. Sheets can handle arbitrary team counts, group sizes, saved rosters, notes, formulas, filters, imports, exports, and custom scripts. Attribute balancing, keep-apart rules, fixed placement, or repeats are only partial because users must design formulas/scripts themselves; none of it is a built-in group-generator workflow.",
        "outputs": "Excellent export and sharing surface: copy/paste, CSV, XLSX, PDF/print, share links, collaboration, version history, and integration with the broader Google ecosystem. Output is where Sheets is much stronger than most simple web randomizers.",
        "privacy": "Mixed. There is no ad-tech utility-page mess inside Sheets, and Workspace for Education has serious privacy terms. Rosters live in Google cloud under an account, sharing permissions can leak data if misconfigured, and consumer Google account data handling is not the same as a local/browser-only tool.",
        "accountFriction": "A Google account is required for the normal workflow, and organizational users may need Workspace permissions. Not a no-account web splitter.",
        "resultQuality": "Basic formula-based random groups are roughly normal random-splitter quality. Better results are possible with custom formulas/scripts, but there is no built-in solver, repeat minimization, constraint validation, or diagnostics."
      },
      "features": {
        "API/programmatic access": "yes",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "partial",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "yes",
        "Embeddable results": "partial",
        "Excel export": "yes",
        "Fixed person placement": "partial",
        "Gender/label balancing": "partial",
        "Google Sheets import": "yes",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "partial",
        "No account required": "no",
        "Pair meeting count targets": "partial",
        "Pair meeting matrix": "partial",
        "Partial attendance by session": "partial",
        "Paste names": "yes",
        "Per-session capacities": "partial",
        "Per-session constraints": "partial",
        "Person/group visit count constraints": "partial",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "partial",
        "Result comments": "yes",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "yes",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "partial",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "yes",
        "Storage management/cleanup": "yes",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "partial",
        "Weighted random entries": "partial",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "partial"
      },
      "pros": [
        "Very flexible for spreadsheet users",
        "Excellent CSV/XLSX/PDF/share output",
        "Good for saved rosters and notes",
        "Collaboration and version history",
        "Can be extended with formulas, templates, and Apps Script"
      ],
      "cons": [
        "Not purpose-built for group generation",
        "Requires formulas/templates/scripts",
        "Google account required",
        "No built-in constraints or repeat optimizer",
        "Privacy depends on Google account/admin/sharing setup"
      ],
      "reviewNote": "Review as Google Sheets used directly for grouping, not as a marketplace add-on or custom app. Credit platform flexibility and exports, but keep feature/result scores below purpose-built group generators because the grouping logic is user-built.",
      "tags": [
        "constraints",
        "strong-exports"
      ]
    },
    {
      "id": "goonlinetools-random-group-generator",
      "rank": 83,
      "name": "GoOnlineTools Random Group Generator",
      "url": "https://goonlinetools.com/random-group-generator/",
      "bestFor": "Simple random groups with a modern UI, regenerate, statistics, and possible copy/download/share icons",
      "summary": "GoOnlineTools Random Group Generator is a polished basic web splitter. Paste names, choose by groups or by members, generate, regenerate, and see simple statistics such as total groups, total members, average per group, and size range. The page advertises advanced options like custom team names, exclusions, representative selection, and export/share, but the visible tested workflow is much closer to a simple random splitter than a serious constraint tool. Privacy is the main weakness because the page carries ads, Funding Choices, Google sign-in scripts, Microsoft Clarity, and other tracking/storage surface.",
      "pricing": "Free web tool. No account required for generation; sign-in exists for the broader GoOnlineTools site.",
      "overallRating": 2.8,
      "overallComment": "A decent modern simple splitter, but the privacy/ad-tech load is bad and the advertised advanced controls are not enough to make it a solver.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 3.8,
        "features": 2.5,
        "outputs": 2.8,
        "privacy": 1.3,
        "accountFriction": 4.8,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Easy paste-and-generate flow with by-groups/by-members modes and a clear regenerate button.",
        "design": "Modern and readable, though ads and surrounding tool-site chrome add clutter.",
        "features": "Better than the bare minimum: by groups/by members, regenerate, statistics, and advertised advanced options. No proven hard constraints, repeat optimization, or real diagnostics.",
        "outputs": "Result action icons and page copy indicate copy/download/share, but output formats are not as clear or strong as CSV/PDF-focused tools.",
        "privacy": "Poor. The page runs ads/Funding Choices, Google account/sign-in scripts, Microsoft Clarity, and stores ad/recent/favorite/color-mode data. The policy also allows ad cookies and IP collection.",
        "accountFriction": "Generation works without sign-in. Sign-in is visible for site features such as favorites.",
        "resultQuality": "Slightly above bare random because by-members mode and stats help, but assignments are random-only unless the advanced options prove more substantial."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "yes",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Modern UI",
        "Paste names textarea",
        "By groups or by members",
        "Regenerate button",
        "Simple result statistics",
        "No account needed for generation",
        "PWA/offline claim"
      ],
      "cons": [
        "Heavy ad and consent stack",
        "Microsoft Clarity and Google scripts",
        "No verified hard constraint solver",
        "No repeat optimization",
        "Output formats unclear",
        "Advanced claims feel stronger than the visible product"
      ],
      "reviewNote": "Treat the marketing claims for advanced options cautiously; the verified workflow is a basic random grouping tool.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "gynzy-group-maker",
      "rank": 84,
      "name": "Gynzy Group Maker",
      "url": "https://www.gynzy.com/en/library/items/group-maker",
      "bestFor": "Interactive whiteboard random groups inside Gynzy",
      "summary": "Gynzy Group Maker is a simple interactive-whiteboard group randomizer. The public library page says it randomizes groups of students from a list and opens without an account. In the board tool, you enter student names on separate lines, choose the number of students per group, save, and get a whiteboard-style randomized layout with a shuffle button. It looks good for classroom display, but it is a basic random splitter with no constraints, balancing, exports, or repeat handling.",
      "pricing": "The Group Maker opens with “No account needed” from the Gynzy library page. Gynzy itself is a broader paid/education whiteboard platform, but this specific tool can be opened without signing in.",
      "overallRating": 2.8,
      "overallComment": "A nice presentation-oriented classroom randomizer, not a serious group planner. It is much better as a whiteboard reveal tool than as a constraint-aware generator.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 4.3,
        "features": 2.0,
        "outputs": 2.3,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Once the tool is open, the workflow is simple: paste names, set students per group, save, shuffle. The Cookiebot banner and onboarding screens add friction before the actual tool appears.",
        "design": "Good interactive-whiteboard design. The output is large, visual, and classroom-friendly, which is the main reason to use it.",
        "features": "Basic group-generation depth: names, number of students per group, random layout, and reshuffle. No constraints, attribute balancing, imports, repeat handling, diagnostics, or group-count mode was visible.",
        "outputs": "The output is useful for live display on a Gynzy board, but there is no obvious CSV, copy, PDF/image, share, or Zoom-friendly export workflow for the generated groups.",
        "privacy": "Poor for sensitive roster use. The site exposes a large Cookiebot surface with statistics/marketing categories and providers such as Google, RudderStack, Segment, Typeform, Vimeo, Intercom, Stripe, and Sprig. Necessary-only cookies can be selected, but the surrounding tracking stack is heavy.",
        "accountFriction": "The specific Group Maker tool opened without signing in.",
        "resultQuality": "Result quality is basic random splitting. Fine for quick classroom grouping, but it does not improve assignment quality beyond random groups of a chosen size."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required for the tool",
        "Good classroom whiteboard presentation",
        "Simple name entry",
        "Choose students per group",
        "Shuffle/regenerate button",
        "Clean visual output"
      ],
      "cons": [
        "Basic random splitter only",
        "No constraints or balancing",
        "No repeat avoidance",
        "No spreadsheet/copy/share export workflow",
        "Heavy cookie/tracking surface around the site",
        "Onboarding and cookie screens add friction"
      ],
      "reviewNote": "Review the Group Maker library item and board tool, not the whole Gynzy whiteboard platform. It is a presentation-friendly randomizer with no-account access, but privacy and feature depth should stay conservative.",
      "tags": []
    },
    {
      "id": "inkpx-random-group-generator",
      "rank": 85,
      "name": "InkPx Random Group Generator",
      "url": "https://inkpx.com/random-group-generator",
      "bestFor": "Simple group-count splits with remembered local input history",
      "summary": "InkPx Random Group Generator is a working lightweight splitter. Live testing confirmed pasted names, number-of-groups input, and generated group output. The page also advertises input history for reusing previous lists. It is easy enough for quick classroom or event grouping, but the feature set is shallow: no group-size mode was verified, no constraints, no attribute balancing, no repeat avoidance, no exports beyond any basic page/browser interactions, and a heavy ad/analytics footprint was observed.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A usable simple splitter, held back by shallow features and ad-tech clutter.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.1,
        "features": 2.1,
        "outputs": 1.6,
        "privacy": 1.4,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste names, set a group count, and press Start Generating.",
        "design": "Clean enough, with a compact setup panel and readable groups.",
        "features": "Basic random grouping plus input history; no constraints, attributes, repeat controls, or advanced setup.",
        "outputs": "Generated groups are readable, but no strong CSV/TXT/PDF/export workflow was verified.",
        "privacy": "Google ads, funding choices, Analytics/Tag Manager, and remote font/image hosts were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Straightforward group-count workflow",
        "Readable group output",
        "Input history feature"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No strong export verified",
        "Ad-heavy third-party footprint"
      ],
      "reviewNote": "Live test generated three groups from twelve pasted names. Hosts observed included Google ads/analytics/funding choices and remote fonts.",
      "tags": []
    },
    {
      "id": "kordu-team-randomizer",
      "rank": 86,
      "name": "Kordu Team Randomizer",
      "url": "https://kordu.tools/tools/gaming/team-randomizer/",
      "bestFor": "Clean browser-side random teams with re-roll and copy",
      "summary": "Kordu Team Randomizer is a clean basic team splitter aimed at gaming but usable for classrooms, workshops, and sports. Paste names, choose 2–10 teams, randomize, re-roll, copy results, or reset. It generated balanced teams correctly in live testing and clearly explains its Fisher-Yates shuffle and round-robin distribution. It has no group-size mode, constraints, attributes, repeat planning, saved rosters, CSV/PDF export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A polished basic randomizer with copy and re-roll, but intentionally narrow.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 4.0,
        "features": 1.9,
        "outputs": 2.0,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, pick a team count, randomize, re-roll if needed.",
        "design": "Clean, modern, and readable result cards with minimal friction in the tool area.",
        "features": "Pasted names, 2–10 team count, re-roll, copy, reset. No group-size mode, constraints, attributes, repeats, or saved lists.",
        "outputs": "Copy output is available. No CSV, TXT, PDF/image, share link, or Zoom-specific export.",
        "privacy": "The page says names are not sent anywhere and the tool runs in-browser. It also loaded Ahrefs, Microsoft Clarity, Google Tag Manager/Analytics/DoubleClick, and Cloudflare insights.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Clean UI",
        "2–10 team selection",
        "Re-roll",
        "Copy results",
        "Browser-side claim"
      ],
      "cons": [
        "No group-size mode",
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No file export",
        "Analytics/tracking scripts present"
      ],
      "reviewNote": "Gaming positioning should not hide that it is just a plain random splitter.",
      "tags": []
    },
    {
      "id": "randomlists-top-team-generator",
      "rank": 87,
      "name": "RandomLists.top Team Generator",
      "url": "https://randomlists.top/team-generator/",
      "bestFor": "Simple large-list random teams with rename, upload, copy, and save",
      "summary": "RandomLists.top Team Generator is a basic browser randomizer wrapped in a long SEO article. It accepts pasted names, sets the number of groups, supports divide-all or pick-specific-quantity mode, can remove duplicates, upload a file, rename groups, copy results, and save the output. It generated balanced groups correctly in live testing. It has no constraints, attributes, saved rosters, repeated-round planning, result diagnostics, or specialized exports beyond text-style save/copy.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A competent basic random splitter with rename/upload/save extras, but no assignment intelligence.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 2.6,
        "features": 2.5,
        "outputs": 2.7,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The tool works once you find it above the long article. The controls are simple.",
        "design": "Functional but cluttered by WordPress/article layout and table-of-contents chrome.",
        "features": "Pasted names, group count, pick-specific mode, dedupe, upload, rename, and save cover basic randomizing. No constraints, attributes, repeats, or diagnostics.",
        "outputs": "Copy results and Save are available. No CSV/PDF/image/Zoom-specific output was verified.",
        "privacy": "The page claims client-side processing. Google Tag Manager/Analytics, DoubleClick, Cloudflare/CDN, and WordPress sharing assets loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random distribution only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Group-count mode",
        "Pick-specific-quantity mode",
        "Rename groups",
        "Upload button",
        "Remove duplicates",
        "Copy results",
        "Save output"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved roster manager",
        "No diagnostics",
        "Long SEO page around the tool"
      ],
      "reviewNote": "Test the actual #rtg-names textarea; the page also contains a separate copy-area textarea.",
      "tags": []
    },
    {
      "id": "randomlyfun-random-team-generator",
      "rank": 88,
      "name": "RandomlyFun Random Team Generator",
      "url": "https://randomlyfun.app/tools/random-team-generator",
      "bestFor": "Casual 2–6 team splits with reroll/copy/share",
      "summary": "RandomlyFun Random Team Generator is a working casual team splitter. Live testing confirmed pasted names, quick team-count buttons, Shuffle Teams, readable generated team cards, Reroll, Copy, and Share controls. It is friendly for small casual groups, but team count is button-driven rather than a broad arbitrary input, and there are no constraints, attributes, repeat controls, saved rosters, exports, or diagnostics. Several analytics/ad-related requests and 500 responses were observed.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A friendly casual splitter for small team counts, not a serious planning tool.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.4,
        "features": 2.2,
        "outputs": 2.2,
        "privacy": 1.7,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste names, select a team-count button, and shuffle.",
        "design": "Polished editorial/tool page with clear team cards.",
        "features": "Reroll/copy/share are useful; no advanced grouping features.",
        "outputs": "Copy and Share controls are visible; no CSV/TXT/PDF/image export was verified.",
        "privacy": "Google ads/funding choices, analytics/tag manager, and a custom analytics host were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Simple pasted-name workflow",
        "Reroll",
        "Copy",
        "Share",
        "Readable team cards"
      ],
      "cons": [
        "Limited visible team-count controls",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Ad/analytics footprint"
      ],
      "reviewNote": "Live test generated two teams from twelve pasted names. The UI offers 2–6 team buttons.",
      "tags": []
    },
    {
      "id": "the-decider-team-generator",
      "rank": 89,
      "name": "The Decider Team Generator",
      "url": "https://www.the-decider.com/team-generator",
      "bestFor": "Quick random teams with by-count/by-size mode, reshuffle, and copy",
      "summary": "The Decider Team Generator is a clean basic team splitter. Live testing pasted twelve names and generated two balanced teams of six. It supports splitting by number of teams or team size, plus/minus controls, reshuffle, copy, and clear. It uses cryptographic random shuffling according to the page text. It is useful for quick one-off random teams, but lacks constraints, attributes, repeat avoidance, saved rosters, file export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A clean no-account splitter with copy and reshuffle, limited to random grouping.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.3,
        "features": 2.3,
        "outputs": 2.3,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Paste names, choose split mode/count, and generate worked cleanly.",
        "design": "Focused, readable form and result cards.",
        "features": "By teams/by size, reshuffle, copy, and clear are useful basics.",
        "outputs": "Copy was visible after generation; no file export was verified.",
        "privacy": "No account is needed, but Google ads/consent, Analytics/Tag Manager, and fonts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By number of teams or team size",
        "Reshuffle",
        "Copy",
        "Clear focused UI",
        "Cryptographic randomization claim"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No saved rosters",
        "No file export verified",
        "Ad/analytics scripts present"
      ],
      "reviewNote": "Live test generated two teams of six.",
      "tags": []
    },
    {
      "id": "thunderbit-random-team-generator",
      "rank": 90,
      "name": "Thunderbit Random Team Generator",
      "url": "https://thunderbit.com/tool/random-team-generator",
      "bestFor": "Quick random teams with CSV download if hosted processing and marketing funnel are acceptable",
      "summary": "Thunderbit Random Team Generator is a working hosted tool. Live testing pasted twelve names, entered three teams, and after a short backend run it returned a table with three teams plus Clear, Copy, and Download .CSV controls. The output is useful for a basic split, but the tool sends the roster to Thunderbit public-tool API endpoints, sits inside a large web-scraping/Chrome-extension marketing site, and loads many third-party marketing/analytics services. It has no constraints, attributes, repeat avoidance, or solver diagnostics.",
      "pricing": "Free public tool; broader Thunderbit product has sign-in and paid-product context.",
      "overallRating": 2.8,
      "overallComment": "Usable output and CSV export, but privacy and product-funnel concerns keep it below cleaner browser-side tools.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.2,
        "features": 2.2,
        "outputs": 3.5,
        "privacy": 0.8,
        "accountFriction": 3.8,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The form is simple, but generation waits on a hosted backend and the page is dominated by Thunderbit marketing.",
        "design": "Polished table output, surrounded by a large product landing page.",
        "features": "Basic team-count generation with copy and CSV download. No advanced assignment controls.",
        "outputs": "Clear, Copy, and Download .CSV controls appeared after generation.",
        "privacy": "Weak for participant names: the roster was sent to Thunderbit public-tool API endpoints, and Amplitude, Reddit, Bing, Iubenda, Google, and other marketing services loaded.",
        "accountFriction": "The public tool ran without login, but the page strongly funnels toward extension install/sign-in.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No login required for public test",
        "Simple pasted-list form",
        "Table output",
        "Copy control",
        "CSV download"
      ],
      "cons": [
        "Roster sent to hosted API",
        "Heavy marketing/analytics footprint",
        "Chrome extension/sign-in funnel",
        "No constraints",
        "No attributes or repeat avoidance"
      ],
      "reviewNote": "Live test generated Team 1/2/3 table and Download .CSV after backend polling.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "ud5-random-team-generator",
      "rank": 91,
      "name": "UD5 Random Team Generator",
      "url": "https://www.ud5.com/tool/random-team-generator",
      "bestFor": "Simple local team splits with cleanup, custom prefix, history, and export menu",
      "summary": "UD5 Random Team Generator is a polished basic splitter inside a large toolkit site. Paste names, trim empty lines, deduplicate, choose by number of teams or people per team, set a team-name prefix, generate, reshuffle, and use the export menu. The tool indicates no login, local save, and data-private operation, and generated balanced teams in testing. It does not provide constraints, attributes, repeat planning, saved multi-roster workflows, quality diagnostics, or specialized exports.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.8,
      "overallComment": "A solid basic splitter with nice cleanup/prefix touches, but not a serious assignment optimizer.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 3.4,
        "features": 2.3,
        "outputs": 2.7,
        "privacy": 2.9,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The form is clear, with sample, clear, trim, dedupe, split-mode, and generate controls.",
        "design": "Modern toolkit interface with readable result cards, though the page includes a lot of unrelated tool navigation.",
        "features": "Good basic controls: by-team-count, by-people-per-team, custom team prefix, trim, dedupe, reshuffle, and local history controls. No constraints, attributes, repeats, or diagnostics.",
        "outputs": "An export menu is present after generation, but no specialized CSV/PDF/Zoom output was verified. Result cards are clear.",
        "privacy": "The site prominently claims no login, data-private, and local save. Baidu analytics and CDN scripts loaded, so it is not tracker-free.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By team count or people per team",
        "Trim empty lines and deduplicate",
        "Custom team prefix",
        "Reshuffle",
        "Export menu",
        "Local/history claims"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No diagnostics",
        "No verified specialized export format",
        "Large toolkit navigation and analytics"
      ],
      "reviewNote": "Export menu was visible after generation; individual export formats should be retested if needed.",
      "tags": []
    },
    {
      "id": "vertex42-random-group-generator-template",
      "rank": 92,
      "name": "Vertex42 Random Group Generator Template",
      "url": "https://www.vertex42.com/ExcelTemplates/random-group-generator.html",
      "bestFor": "Spreadsheet users who want a downloadable Excel/Google Sheets random grouping template",
      "summary": "Vertex42 is a spreadsheet template rather than a normal web app. It gives you an Excel or Google Sheets random group generator with a names worksheet, group names, RAND-column sorting, two grouping orders, and no macros. That makes it more reusable than many throwaway web splitters, and the page is unusually honest that it does not solve the social golfer/repeat-minimization problem. It is just a spreadsheet workaround, not a dedicated optimizer.",
      "pricing": "Free template for private use. Downloadable Excel file and Google Sheets option; no account required for the template page.",
      "overallRating": 2.8,
      "overallComment": "A useful spreadsheet workaround with honest documentation. Better than many web toys for people already in Excel, but not a serious group-generation product.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 3.0,
        "features": 2.4,
        "outputs": 4.0,
        "privacy": 3.0,
        "accountFriction": 4.7,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Not as fast as a web splitter because you need to download/copy a spreadsheet and understand the RAND-sort workflow. Easy enough for spreadsheet users.",
        "design": "The template page is dated but clear, and the spreadsheet screenshot explains the workflow well.",
        "features": "Useful spreadsheet basics: editable roster, group names, random sorting, two grouping layouts, and custom sorting. No constraints, attributes, repeat optimization, or diagnostics.",
        "outputs": "Strong because the result lives in Excel or Google Sheets and can be copied, printed, saved, or exported through spreadsheet tools.",
        "privacy": "Roster data can stay in your own spreadsheet after download, which is good. The website page itself runs ads and Google tags.",
        "accountFriction": "No account required for the template page. Google Sheets use may involve a Google account.",
        "resultQuality": "Slightly above plain web randomizers because spreadsheet sorting gives manual control, but random-only and explicitly not social-golfer solving."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "yes",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Excel and Google Sheets options",
        "No macros",
        "Editable roster and group names",
        "Reusable spreadsheet workflow",
        "Spreadsheet-native saving/printing/export",
        "Honest about not solving social golfer repeat minimization"
      ],
      "cons": [
        "Not a quick web generator",
        "Requires spreadsheet comfort",
        "No constraints or balancing",
        "No repeat optimization",
        "Website has ads/tracking",
        "Private-use license limits redistribution"
      ],
      "reviewNote": "Scope this as a spreadsheet template, not a hosted generator.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "classdojo-group-maker",
      "rank": 93,
      "name": "ClassDojo Group Maker",
      "url": "https://www.classdojo.com/toolkit/groupmaker/",
      "bestFor": "Teachers already using ClassDojo who want quick classroom groups",
      "summary": "ClassDojo Group Maker is not really a standalone web group generator. It is a Toolkit feature inside the ClassDojo app for teachers with a ClassDojo class roster. It can randomly generate student groups of any size and supports sets of students who should not be grouped together. For existing ClassDojo classrooms that is handy; for everyone else it is an account/app workflow around a basic random classroom splitter.",
      "pricing": "ClassDojo Toolkit is advertised as free and included in the ClassDojo app. ClassDojo also has optional paid/premium family features, but the Group Maker workflow itself is positioned as free.",
      "overallRating": 2.7,
      "overallComment": "Useful if your class already lives in ClassDojo, but weak as a general-purpose group generator. The keep-apart sets are real value; the app/account wall and limited export surface are the problem.",
      "ratings": {
        "easeOfUse": 3.1,
        "design": 4.1,
        "features": 2.6,
        "outputs": 1.5,
        "privacy": 3.7,
        "accountFriction": 1.5,
        "resultQuality": 2.4
      },
      "ratingComments": {
        "easeOfUse": "For an existing ClassDojo teacher with a roster, group generation is probably very easy. For anyone else, it starts with downloading/signing into ClassDojo and setting up a class, which is a lot of friction for one random split.",
        "design": "ClassDojo is polished, classroom-friendly, and much nicer than most randomizer pages. The public Group Maker page is clear, but it mostly advertises the app rather than exposing the tool directly.",
        "features": "Better than the weakest random splitters because it uses a saved class roster and supports keep-apart sets. Limited: random groups only, group size choices, no attribute balancing, no multi-session repeat minimization, no solver diagnostics, and no serious planning controls.",
        "outputs": "Very weak for export. The visible product positioning is in-app classroom display/use, not CSV, Excel, Zoom breakout export, share links, PDFs, or reusable result reports.",
        "privacy": "ClassDojo has a much more serious student-privacy posture than ad-heavy utility sites: COPPA/FERPA/GDPR language, iKeepSafe certifications, Student Privacy Pledge, no selling/renting, and no student behaviorally targeted advertising. It is a hosted classroom platform collecting rosters, account data, device/usage data, and service-provider analytics, so it is not comparable to local/no-account tools.",
        "accountFriction": "High. The Group Maker is part of the ClassDojo app, not a no-login webpage. You need the ClassDojo ecosystem and likely a teacher account/class roster for real use.",
        "resultQuality": "Slightly above a plain random splitter because keep-apart sets can prevent bad pairings. It does not optimize balance, preferences, repeated encounters, or multi-session coverage."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "yes",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "partial",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished classroom-friendly UI",
        "Uses existing ClassDojo class roster",
        "Random groups of any size",
        "Keep-apart sets for students who should not be grouped together",
        "Free inside ClassDojo Toolkit",
        "Strong education privacy posture compared with ad-heavy utilities"
      ],
      "cons": [
        "Not a standalone group generator",
        "Requires ClassDojo app/account ecosystem",
        "No CSV/Excel/Zoom export surface",
        "No balancing or repeat optimization",
        "Hosted student roster data",
        "Mostly useful only for existing ClassDojo classrooms"
      ],
      "reviewNote": "Scope this to the Toolkit Group Maker, not the full ClassDojo classroom platform. Do not let ClassDojo polish or broader classroom features inflate the group-generator score. Unknown review-builder feature states were resolved conservatively because the public Group Maker positioning does not show custom team names, clipboard export, or saved result history.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "fun-group-names-random-team-generator",
      "rank": 94,
      "name": "Fun Group Names Random Team Generator",
      "url": "https://fungroupnames.com/random-team-generator/",
      "bestFor": "A content-site group randomizer if the embedded script works in your browser",
      "summary": "Fun Group Names Random Team Generator is a working content-site group randomizer with more controls than the weakest random splitters. Paste a list, process it, choose 1–20 groups, randomize groups, re-randomize members, edit the list, randomize themed group names, and use the advertised TXT/PDF download workflow. It uses basic random splitting and the page is wrapped in heavy ad/consent tracking, but the tool itself should not be treated as broken.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.7,
      "overallComment": "A useful basic splitter with fun group names and advertised downloads, dragged down hard by a noisy ad-tech wrapper and lack of real balancing.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 2.3,
        "features": 2.4,
        "outputs": 3.2,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The intended workflow is easy: paste names, process list, choose group count, randomize. Extra edit/re-randomize controls are understandable.",
        "design": "The widget is usable, but it sits inside a generic WordPress/content page with a lot of surrounding article/ad noise.",
        "features": "Above the bare minimum for a random splitter: 1–20 groups, edit list, re-randomize members, random themed group names, and download workflow. No constraints, balancing attributes, saved rosters, or repeat planning.",
        "outputs": "TXT/PDF downloads are advertised and the page exposes a download workflow, which is better than copy-only tools. No spreadsheet/CSV, share link, or integration-specific export.",
        "privacy": "Very poor. The page loads a large ad/consent stack including consentmanager-style storage, Journey/Mediavine/OpenX/Criteo/ID5/Amazon ad scripts, Clarity, Grow, and many localStorage/cookie identifiers. Not a good place for classroom rosters.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even distribution. Useful for one-off splits, but no meaningful balancing or optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Paste names textarea",
        "1–20 group-count control",
        "Edit list after generating",
        "Re-randomize members",
        "Random themed group names",
        "Advertised TXT/PDF download workflow"
      ],
      "cons": [
        "Heavy ad/consent/tracking footprint",
        "No constraints or attribute balancing",
        "No saved roster/history",
        "No CSV/spreadsheet export",
        "Generic content-site wrapper",
        "Random-only assignment quality"
      ],
      "reviewNote": "Do not mark this as non-working. The generator works when the page scripts are allowed to load; judge it as a basic random splitter with extra naming/download conveniences and a very poor privacy footprint.",
      "tags": []
    },
    {
      "id": "group-assigner",
      "rank": 95,
      "name": "Group Assigner",
      "url": "https://group-assigner.com/",
      "bestFor": "Quick classroom or workshop groups with random team names and focus mode",
      "summary": "Group Assigner is a simple free random team generator with a nicer interface than most bare utilities. Paste names, choose Auto-Optimize or a specific group count, assign groups, shuffle, use Focus Mode, and it gives the teams random names. It stores names/results/preferences in the browser for the next visit. The weak spots are output/export and privacy: there is no serious export workflow, and the page runs Google ads/Funding Choices.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.7,
      "overallComment": "A good simple splitter with better UX than average, but random-only and ad-supported.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.7,
        "features": 2.3,
        "outputs": 1.5,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, pick auto or a group count, assign. Shuffle and focus mode are obvious.",
        "design": "Clean enough, with random team names and a useful focus mode. Affiliate/ad content adds noise.",
        "features": "Auto-optimize, group-count choices, random team names, shuffle, focus mode, and browser-saved state. No constraints, attributes, leaders, repeats, or diagnostics.",
        "outputs": "Mostly screen presentation. Focus mode helps display, but there is no strong copy/download/CSV workflow.",
        "privacy": "Names are said to stay in the browser and local storage confirms that. The downside is Google ads/Funding Choices and ad cookies on the page.",
        "accountFriction": "No account required.",
        "resultQuality": "Slightly above the weakest splitters because auto-optimize picks sensible group counts, but assignments are random-only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Easy paste-and-generate workflow",
        "Auto-Optimize mode",
        "Specific group-count buttons",
        "Random team names",
        "Shuffle control",
        "Focus Mode",
        "Browser-saved names/results"
      ],
      "cons": [
        "No CSV/spreadsheet export",
        "No constraints or balancing",
        "No repeat optimization",
        "No leaders or pinned placements",
        "Ad/affiliate clutter",
        "Google ad-tech on the page"
      ],
      "reviewNote": "Random team names are a UX feature, not evidence of deeper assignment quality.",
      "tags": []
    },
    {
      "id": "online-stopwatch-random-group-generator",
      "rank": 96,
      "name": "Online Stopwatch Random Group Generator",
      "url": "https://www.online-stopwatch.com/random-group-generators/",
      "bestFor": "Classroom presentation-style random groups with animated reveals",
      "summary": "Online Stopwatch offers a collection of themed random group generators. The core workflow is basic: paste comma- or newline-separated names, choose either maximum number of groups or maximum group size, generate random groups, reveal them with animations, then view all groups. It has useful presentation/export extras like fullscreen mode, copy-to-clipboard, CSV download, jump-to-group, sound/transition toggles, and premium saved lists, but the grouping logic is random-only.",
      "pricing": "Free with ads. Premium removes ads and adds account features such as saved lists/My Page; the premium page advertises one-off access options and group accounts, with cookies required for premium login.",
      "overallRating": 2.7,
      "overallComment": "Good classroom showmanship around a basic random splitter. The exports and fullscreen presentation are useful, but the tool has no real grouping intelligence and the ad/tracking/privacy story is weak.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 2.8,
        "features": 2.3,
        "outputs": 3.6,
        "privacy": 1.7,
        "accountFriction": 4.8,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The basic workflow is not hard: paste names, choose a number, generate. The old animated UI, settings cog, iframed app, and many themed variants make it less clean than the best simple splitters.",
        "design": "Fun for classrooms, but busy and dated. The site is full of navigation, premium prompts, ads, animations, sounds, and themed variants. That is presentation value, not a clean modern group-generator UI.",
        "features": "Decent for a basic random splitter: number-of-groups mode, max-group-size mode, animated reveals, fullscreen, sound/transition toggles, jump-to-group, copy, CSV export, and premium saved lists. No constraints, balancing, repeats, attributes, or diagnostics.",
        "outputs": "Better than many simple randomizers. It can copy one group or all groups, download a CSV, show all groups together, use fullscreen presentation, and save lists/results through premium workflows. No Zoom-specific export, spreadsheet import, PDF/image export, or serious report format.",
        "privacy": "Poor. The free site is ad-supported and uses Google Analytics/Google Tag Manager, Google AdSense-style advertising, Publift/Fuse ad scripts, cookies, Cloudflare, and premium account storage. The user-data terms explicitly warn not to upload personal/sensitive data and to treat uploaded data as non-sensitive/non-personal.",
        "accountFriction": "Generating groups does not require an account. Premium is only needed for saved lists, ad-free use, and account convenience features.",
        "resultQuality": "Plain random grouping with even-ish sizes. Animations, themes, and stronger randomness presentation do not improve assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "partial",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Many fun classroom themes",
        "No account required for basic use",
        "Number-of-groups and max-group-size modes",
        "Fullscreen animated reveal mode",
        "Copy results to clipboard",
        "CSV download",
        "Premium saved lists for repeated rosters"
      ],
      "cons": [
        "Random-only grouping",
        "No constraints, balancing, or repeat optimization",
        "Ad-heavy/tracking-heavy site",
        "Dated busy UI",
        "Saved-list workflow requires premium",
        "User-data terms warn against personal/sensitive data",
        "No Zoom-specific export"
      ],
      "reviewNote": "Do not over-credit the many themed generators; they are mostly skins around the same random splitter. The CSV/copy/fullscreen output surface is real and should be credited.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "randomtools-app-random-team-generator",
      "rank": 97,
      "name": "RandomTools.app Random Team Generator",
      "url": "https://randomtools.app/random-team-generator/",
      "bestFor": "Simple random teams with copy output and recent-draw history",
      "summary": "RandomTools.app Random Team Generator is a clean basic splitter. It accepts multiline or comma-separated names, supports a number-of-teams setting, optional target team size, balanced vs uneven mode, copy-list output, and a recent team-draw history for comparing the last eight assignments. It generated balanced teams correctly when the target team-size override was left blank. It has no constraints, attributes, repeat optimization, roster import/export, PDF/CSV export, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.7,
      "overallComment": "A good lightweight randomizer thanks to copy output and history, but it remains basic random splitting.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.3,
        "features": 2.2,
        "outputs": 2.3,
        "privacy": 2.9,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Simple pasted-name workflow. Users need to notice that target team size overrides number of teams.",
        "design": "Clear and compact with useful summary stats and recent-draw history.",
        "features": "Basic team count, optional team size, balanced/uneven mode, copy output, and recent-history log. No constraints, attributes, repeats, imports, or diagnostics.",
        "outputs": "Copy List is available. There is no CSV, PDF/image, share link, or specialized export.",
        "privacy": "The page says everything runs locally. Google Tag Manager/Analytics and Google fonts loaded, so it is not fully tracker-free.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random distribution only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Multiline or comma-separated input",
        "Balanced or uneven mode",
        "Optional target team size",
        "Copy list",
        "Recent draw history"
      ],
      "cons": [
        "No CSV/PDF/share export",
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved roster manager",
        "Target-size override can surprise users"
      ],
      "reviewNote": "When both team count and target team size are filled, team size takes priority and can produce extras/benched participants.",
      "tags": []
    },
    {
      "id": "super-teacher-tools-classroom-seating-groups",
      "rank": 98,
      "name": "Super Teacher Tools Classroom Seating / Groups",
      "url": "https://www.superteachertools.us/instantclassroom/group-maker.php",
      "bestFor": "Teachers who want saved class rosters plus simple random classroom groups",
      "summary": "Super Teacher Tools Instant Classroom / Group Maker is an old-school but working classroom roster system. You create an Instant Classroom account with a group name, email, display name, and password, then create or import a class list of up to 100 students. The Group Maker can split a saved roster by students per group or by number of groups, with options from 2 to 10 and a remainder-distribution workflow. It also sits beside seating-chart and random-name tools. For group generation specifically, it uses basic random splitting: no constraints, no attribute balancing, no repeat avoidance, no diagnostics, and no clean export format.",
      "pricing": "Free. The product page says “100% Free forever,” but actual custom class use requires creating a Super Teacher Tools / Instant Classroom group account.",
      "overallRating": 2.7,
      "overallComment": "A functional saved-roster classroom randomizer with useful group-size/group-count controls, held back by account friction, a dated interface, ad/consent load, and no optimization beyond random grouping.",
      "ratings": {
        "easeOfUse": 2.4,
        "design": 1.8,
        "features": 2.6,
        "outputs": 2.0,
        "privacy": 1.1,
        "accountFriction": 1.4,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "After setup, generating groups is straightforward: choose students per group or number of groups and click Create Groups. Getting there requires account creation, password login, old-style roster forms, and sometimes hidden/awkward bulk-upload controls.",
        "design": "Very dated classroom-web layout with image-button navigation and ad blocks. It works, but it feels much older and less polished than modern tools.",
        "features": "Better than a one-shot splitter because it saves class rosters and supports both group-size and group-count generation plus remainder distribution. It does not support constraints, attribute balancing, repeat minimization, multiple sessions, pinned placements, or solver diagnostics.",
        "outputs": "Results are shown on a web page as Group #1, Group #2, etc. There is no obvious CSV, Excel, copy-to-clipboard, PDF/image, Zoom breakout, or structured export workflow.",
        "privacy": "Weak for student-roster entry. Testing showed Google advertising/analytics/consent infrastructure, DoubleClick, AddThis on the landing flow, and a Funding Choices consent dialog mentioning data sharing with 210 partners. Rosters are stored server-side in an account-like classroom group.",
        "accountFriction": "The demo can be viewed freely, but real class roster use requires creating a named group account with email, display name, and password, then logging in.",
        "resultQuality": "Good enough random classroom splitting, including uneven remainder handling. It does not optimize group quality or avoid repeated pairings."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "yes",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free to use",
        "Saved class rosters up to 100 students",
        "Can create groups by students per group or by number of groups",
        "Remainder distribution option for uneven groups",
        "Adjacent seating-chart and random-name tools for the same roster",
        "Working demo is available"
      ],
      "cons": [
        "Requires account-style setup for real class rosters",
        "Very dated interface",
        "No constraints, balancing, or repeat avoidance",
        "No clean export/copy workflow for generated groups",
        "Ad and consent stack is heavy for student roster data",
        "Roster setup is clunky despite bulk/import support"
      ],
      "reviewNote": "Live-tested the Instant Classroom demo and a temporary dummy class. Keep score focused on Group Maker capability, not the adjacent seating-chart or random-name-picker tools. Do not rate it as no-account: real custom roster use requires sign-up/login even though the demo is public.",
      "tags": []
    },
    {
      "id": "teacher-commons-group-maker",
      "rank": 99,
      "name": "Teacher Commons Group Maker",
      "url": "https://teachercommons.com/classroom-management-and-productivity-tools/group-maker",
      "bestFor": "Minimal classroom group maker from a teacher-tool site",
      "summary": "Teacher Commons Group Maker is a working minimalist classroom group splitter. Live testing confirmed pasted names, split by number of groups, split by students per group, and generated groups. The page is pleasantly simple and no-account, but it has no exports, no copy button verified, no constraints, no saved rosters, no repeat handling, and no diagnostics. It is good enough for a teacher who just needs a fast random split.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.7,
      "overallComment": "A clean teacher-focused basic splitter with almost no advanced features.",
      "ratings": {
        "easeOfUse": 4.1,
        "design": 3.0,
        "features": 1.8,
        "outputs": 1.2,
        "privacy": 3.7,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Very simple form with names, split mode, and generate.",
        "design": "Plain but uncluttered teacher-tool layout.",
        "features": "Number-of-groups and students-per-group modes; no constraints or advanced setup.",
        "outputs": "On-page groups only; no copy/export workflow was verified.",
        "privacy": "Cloudflare CDN and Google Tag Manager were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Clean classroom-oriented page",
        "Number-of-groups mode",
        "Students-per-group mode",
        "Readable output"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No exports verified",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated three groups from twelve pasted names.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "utilitykit-random-team-generator",
      "rank": 100,
      "name": "UtilityKit Random Team Generator",
      "url": "https://utilitykit.tools/random-team-generator",
      "bestFor": "Simple browser-side random squads on a low-friction page",
      "summary": "UtilityKit Random Team Generator is a simple browser-side randomizer. Live testing pasted twelve names, set three teams, and generated three groups of four. It advertises processing in the browser and had a small observed host footprint. The tool is easy and private enough for casual use, but it lacks copy/export controls in the tested result area and has no constraints, attributes, saved rosters, repeat minimization, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.7,
      "overallComment": "A decent privacy-leaning simple splitter, but output and advanced features are thin.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.0,
        "features": 1.8,
        "outputs": 0.8,
        "privacy": 4.2,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste names, set number of teams, generate.",
        "design": "Usable tool panel, though surrounded by a very large tool navigation shell.",
        "features": "Only basic random team count splitting was verified.",
        "outputs": "No copy/download/export controls were visible in the tested output.",
        "privacy": "The page claims browser processing; only UtilityKit and stats.utilitykit.tools were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted-list workflow",
        "Browser-processing claim",
        "Low observed third-party footprint",
        "Balanced output in live test"
      ],
      "cons": [
        "No export controls found",
        "No constraints",
        "No attribute balancing",
        "No team-size mode verified",
        "No repeat avoidance or diagnostics"
      ],
      "reviewNote": "Live test generated three groups of four.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "visualtimer-random-group-generator",
      "rank": 101,
      "name": "VisualTimer Random Group Generator",
      "url": "https://visualtimer.com/tools/random-group-generator/",
      "bestFor": "Simple classroom random groups with reveal mode",
      "summary": "VisualTimer Random Group Generator is a small classroom tool inside a timer site. Paste names, choose number of groups or group size, optionally enable reveal mode, generate, shuffle again, and clear. It saves names in the browser for next time and uses a light page with Simple Analytics. The grouping itself is basic random splitting with no exports, copy button, constraints, attribute balancing, repeat handling, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.7,
      "overallComment": "A pleasant basic classroom splitter with reveal mode and local saved names, but output options are weak.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.7,
        "features": 2.2,
        "outputs": 1.2,
        "privacy": 4.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, pick group count or group size, generate. The buttons are obvious.",
        "design": "Clean and classroom-friendly. The long timer-site footer/navigation adds page bulk, but the tool area is uncluttered.",
        "features": "Basic split modes plus reveal mode and local saved names. No constraints, attributes, imports, exports, repeat planning, or result editing.",
        "outputs": "Results are displayed on the page only. There is no visible copy, CSV, PDF/image, share, or Zoom-friendly export.",
        "privacy": "Better than many free tools: no account, no ad-tech wall in testing, and only Simple Analytics was observed. Names are saved in the browser according to the page.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Plain random balanced groups. Reveal mode changes presentation, not assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "By group count or group size",
        "Reveal mode",
        "Shuffle again",
        "Names saved locally in browser",
        "Light analytics footprint"
      ],
      "cons": [
        "No copy or export workflow",
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved multi-list roster management",
        "Long unrelated timer-site navigation"
      ],
      "reviewNote": "Review as the group generator, not the surrounding visual timer catalog.",
      "tags": [
        "privacy-friendly"
      ]
    },
    {
      "id": "webby-student-group-generator",
      "rank": 102,
      "name": "Webby Student Group Generator",
      "url": "https://webby.tools/student-group-generator/",
      "bestFor": "Quick classroom random groups with printable PDF output",
      "summary": "Webby Student Group Generator is a simple classroom splitter. Paste names, choose students-per-group or number-of-groups mode, choose how to handle extras, generate, shuffle again, and download a printable PDF. It is useful for a fast one-off classroom grouping, especially if the teacher wants paper output. It has no constraints, balancing attributes, repeat handling, saved rosters, copy/CSV export, or diagnostics.",
      "pricing": "Free. No account is required. The site discloses affiliate links and loads advertising/affiliate scripts.",
      "overallRating": 2.7,
      "overallComment": "A decent basic classroom splitter with PDF output, but the grouping logic is random-only and the privacy/ad-tech surface is poor.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.2,
        "features": 2.2,
        "outputs": 2.8,
        "privacy": 1.3,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Straightforward: paste names, select group size or group count, generate, and optionally shuffle again.",
        "design": "Readable teacher-tool page. It is surrounded by broad utility-site navigation and promotional/tool links, but the actual form is clear.",
        "features": "Basic random grouping with two split modes and an extra-student handling option. No constraints, attributes, repeat avoidance, saved rosters, imports, or result diagnostics.",
        "outputs": "PDF export worked and is useful for classroom printing. There is no CSV, spreadsheet, copy button, share link, or Zoom-friendly output.",
        "privacy": "Weak for student rosters. The page loaded Google Analytics/Tag Manager, Google ads, VigLink/Sovrn affiliate/ad scripts, and related ad-quality requests.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Fine for one-off random classroom groups with even sizes. It does not improve assignment quality beyond random splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Students-per-group and number-of-groups modes",
        "Extra-student handling option",
        "Shuffle again",
        "PDF export"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No CSV/copy/share export",
        "No saved rosters",
        "Heavy ad/affiliate tracking surface"
      ],
      "reviewNote": "Review the student group generator page specifically, not the rest of the Webby tools catalog.",
      "tags": []
    },
    {
      "id": "wordmint-random-group-generator",
      "rank": 103,
      "name": "WordMint Random Group Generator",
      "url": "https://wordmint.com/random-group-generator",
      "bestFor": "Simple classroom groups with a copy-to-clipboard button",
      "summary": "WordMint Random Group Generator is a basic but functional classroom splitter. Paste names, choose number of groups or count per group, generate, and copy the results to the clipboard. That is enough for quick classroom use, and the UI is cleaner than many randomizer pages. It is random-only and the surrounding WordMint site has account, pricing, analytics, Facebook pixel, and PostHog tracking surface.",
      "pricing": "Free web tool. No account required for the group generator; the broader WordMint product has accounts and paid plans.",
      "overallRating": 2.7,
      "overallComment": "A decent simple splitter with copy output. Nothing advanced, but less painful than many tools in this tier.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.2,
        "features": 2.0,
        "outputs": 2.2,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, choose number of groups or count per group, generate.",
        "design": "Clean, readable, and focused enough, despite the broader WordMint navigation.",
        "features": "Basic but complete for a simple splitter: number-of-groups mode and count-per-group mode. No constraints, leaders, balancing, repeats, saved rosters, or diagnostics.",
        "outputs": "Copy to Clipboard is useful. No CSV, spreadsheet export, print-specific view, share link, or saved result history.",
        "privacy": "Weak. No account is required, but the page loads Google tags, Facebook pixel, and PostHog-related storage. The broader privacy policy is for a commercial puzzle/product site.",
        "accountFriction": "No account required for the generator.",
        "resultQuality": "Plain random grouping only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Easy paste-and-generate workflow",
        "Number-of-groups or count-per-group mode",
        "Copy to Clipboard",
        "No account required",
        "Cleaner UI than many randomizer pages"
      ],
      "cons": [
        "No CSV/spreadsheet export",
        "No constraints or balancing",
        "No repeat optimization",
        "No saved roster/history",
        "Commercial product-site tracking",
        "Facebook pixel and analytics present"
      ],
      "reviewNote": "Review the free generator page, not WordMint’s broader puzzle/test-making product.",
      "tags": []
    },
    {
      "id": "fotify-speed-dating-event-planner",
      "rank": 104,
      "name": "Fotify Speed Dating Event Planner",
      "url": "https://fotify.app/tools/speed-dating-event-planner/",
      "bestFor": "Quick speed-dating event timing plans",
      "summary": "Fotify’s public planner is freely usable and generated an event plan in-browser during live testing. With 12 attendees and five-minute rounds, it produced a minute-by-minute plan with doors-open timing, host welcome, open mingling, five structured speed rounds, breaks, wrap-up, and event-end timing. That is useful event planning output, but it does not assign named participants to pairs or tables; the page upsells Fotify’s paid Match & Connect product for the actual matchmaking layer.",
      "pricing": "The planner page is free and requires no account. Fotify advertises Match & Connect at $19.99 per event for the matchmaking app layer.",
      "overallRating": 2.6,
      "overallComment": "Useful as a free timing planner for speed-dating/networking events, but weak as a group generator because it does not output named pairings.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 4.0,
        "features": 2.2,
        "outputs": 2.0,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 1.9
      },
      "ratingComments": {
        "easeOfUse": "The planner is extremely easy: attendee count, format, start time, round length, buffer, generate.",
        "design": "Clean modern page with understandable generated schedule blocks and explanatory copy.",
        "features": "It handles attendee count, timing, classic/hybrid format, and minute-by-minute event planning. It does not generate named pairs, tables, constraints, or repeat-aware assignments.",
        "outputs": "The output is readable on-page, but no strong CSV/PDF/export workflow was observed for the free planner.",
        "privacy": "The free planner can be used without participant names. Cookie/analytics and the paid hosted app are separate considerations.",
        "accountFriction": "No signup is needed for the planner.",
        "resultQuality": "It calculates a plausible event timeline, not actual participant assignments. For group generation, that is a serious limitation."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "yes",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free planner with no account",
        "Fast event-timeline generation",
        "Good for speed-dating and speed-networking timing",
        "Clean interface",
        "Does not require participant personal data"
      ],
      "cons": [
        "Does not assign named participants",
        "No roster import",
        "No constraints or repeat optimization",
        "No strong export observed",
        "Actual matchmaking layer is a paid Fotify product"
      ],
      "reviewNote": "Live test generated a 12-attendee speed-dating plan with five rotation rounds and a minute-by-minute schedule; no named pair/table assignments were produced.",
      "tags": [
        "multi-round"
      ]
    },
    {
      "id": "games4esl-random-group-generator",
      "rank": 105,
      "name": "Games4esl Random Group Generator",
      "url": "https://games4esl.com/teacher-tools/random-group-generator/",
      "bestFor": "Teachers who want quick random classroom groups and a printable PDF",
      "summary": "Games4esl Random Group Generator is a classroom-focused random splitter. Paste names, choose a group size from 2 to 10, generate groups, and download a PDF. It also describes a leftover-handling choice for uneven splits. The actual grouping uses basic random assignment, but PDF output gives it a practical classroom advantage over many bare page-only splitters.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.6,
      "overallComment": "A good teacher-friendly basic splitter with PDF output. The ad/consent stack is the big downside.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.1,
        "features": 1.7,
        "outputs": 3.4,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Easy classroom flow: paste names, choose group size, generate. The cookie/consent overlay gets in the way.",
        "design": "Readable and teacher-focused, with less chaos than many old randomizer pages. Embedded in a busy content site.",
        "features": "Group-size mode, 2–10 size choices, and uneven-leftover handling are useful basics. No constraints, balancing, saved lists, or repeat planning.",
        "outputs": "Better than most simple splitters because it has a PDF download. No CSV/spreadsheet export or share link.",
        "privacy": "Poor. The page loads Google ads/AdSense, Google Analytics, Ezoic/gatekeeper consent scripts, and Cloudflare analytics, and the policy names Google, Amazon, and Ezoic advertising partners.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random classroom grouping. Fine for one-off teams, not for fairness beyond group sizes."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "yes",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Teacher-focused workflow",
        "Paste names textarea",
        "Group size from 2 to 10",
        "PDF download",
        "Uneven leftover handling described"
      ],
      "cons": [
        "Ad/consent stack is heavy",
        "No constraints or balancing",
        "No group-count mode visible",
        "No CSV/spreadsheet export",
        "No saved roster/history",
        "No repeat minimization"
      ],
      "reviewNote": "Score the teacher tool itself, not Games4esl’s broader ESL resource library.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "rakkotools-random-group-generator",
      "rank": 106,
      "name": "RakkoTools Random Group Generator",
      "url": "https://en.rakko.tools/tools/59/",
      "bestFor": "Basic random groups with CSV export",
      "summary": "RakkoTools is a better-than-average basic random group generator. It can divide by number of teams or members per team, select organizers/representatives, and export CSV. That makes it more useful than the pure toy randomizers, but it is random-only and the page has a bad consent/ad-tech environment.",
      "pricing": "Free, ad-supported web tool. No account or payment is needed for the basic generator; pricing is not the issue, the weak privacy/ad-tech environment is.",
      "overallRating": 2.6,
      "overallComment": "A better-than-average basic randomizer because it has CSV export, two split modes, and representatives. Not a real group-planning tool, and the privacy/ad-tech setup is bad.",
      "ratings": {
        "easeOfUse": 4.3,
        "design": 2.2,
        "features": 2.4,
        "outputs": 4.0,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The form is simple, but the page is cluttered and consent/ad friction prevents a clean 5/5.",
        "design": "Cluttered Rakko network utility page, but the actual tool area is usable.",
        "features": "Better than the weakest randomizers: number-of-teams mode, members-per-team mode, representative selection, and CSV export. No constraints, balancing attributes, repeat avoidance, or diagnostics.",
        "outputs": "CSV export is real and worked in testing. No spreadsheet import, Zoom export, shareable result link, or richer result workflow.",
        "privacy": "Bad privacy setup. The consent banner mentions personal data sharing with 210 partners, precise geolocation, ad personalization, and device storage. The privacy policy is generic and includes marketing/newsletter use.",
        "accountFriction": "No account required.",
        "resultQuality": "Mostly random-only, but representative selection adds a tiny bit of assignment usefulness. There is no real balancing, constraints, repeat reduction, or quality explanation."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "CSV export",
        "Can divide by teams or members per team",
        "Can select representatives",
        "No account required",
        "Paste names workflow"
      ],
      "cons": [
        "Cluttered page",
        "Bad privacy/ad-consent setup",
        "No advanced rules",
        "No balancing or constraints",
        "No repeat avoidance",
        "No shareable result link"
      ],
      "reviewNote": "It does not have the same obvious search dominance as ClassTools or RandomLists, but it is mostly a generic utility page. Its CSV export and representative selection make it stronger than the weakest random splitters.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "randomhub-random-group-generator",
      "rank": 107,
      "name": "RandomHub Random Group Generator",
      "url": "https://randomhub.io/random-group-generator",
      "bestFor": "Minimal no-account random group splits with copy output",
      "summary": "RandomHub Random Group Generator is a compact cyber-styled random team splitter. Paste one name per line, set the number of groups, generate, see live member/group statistics, and copy all results. It is simple and quick, but narrower than many peers: no group-size mode, no import/export files, no PDF/image, no constraints, no attribute balancing, no saved rosters, and no repeat planning.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.6,
      "overallComment": "A clean minimal splitter with copy output, but feature depth and exports are thin.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.8,
        "features": 1.9,
        "outputs": 2.0,
        "privacy": 3.6,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The workflow is obvious and fast: paste names, set group count, generate. Keyboard shortcut support helps.",
        "design": "Distinct, compact cyber-style interface with clear statistics and result cards.",
        "features": "Only the essentials: pasted names, number-of-groups mode, live stats, regenerate, and copy all. No group-size mode, constraints, imports, saved lists, repeat handling, or diagnostics.",
        "outputs": "Copy-all output is useful. There is no CSV, TXT, PDF/image, share link, or spreadsheet workflow.",
        "privacy": "No account is required and the tested page did not show a large ad/consent stack. It is a hosted web tool, so it is not equivalent to an offline/local app.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Plain random balanced groups. There is no result-quality logic beyond even distribution."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Fast pasted-name workflow",
        "Copy all results",
        "Live member/group statistics",
        "Keyboard shortcut"
      ],
      "cons": [
        "No group-size mode",
        "No CSV/PDF/export files",
        "No constraints or balancing attributes",
        "No repeat avoidance",
        "No saved rosters"
      ],
      "reviewNote": "Treat as a minimal generic randomizer. Its UI is nicer than its feature set.",
      "tags": []
    },
    {
      "id": "teacher-toolset-random-group-maker",
      "rank": 108,
      "name": "Teacher Toolset Random Group Maker",
      "url": "https://www.teacher-toolset.online/en/onlinetools/group-maker",
      "bestFor": "Classroom random groups when teachers can add/import a roster and export text",
      "summary": "Teacher Toolset Random Group Maker is a simple classroom randomizer. It lets teachers add students individually, use Bulk Add or Import, choose by group count or group size, start grouping, rerun, and export results as text. Live testing with individually added students produced balanced groups. It is adequate for quick classroom groups, but it has no constraints, attributes, repeat handling, saved multi-class workflow, diagnostics, or strong privacy posture because the page uses Google ads and a 210-partner consent system.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.6,
      "overallComment": "A usable classroom splitter with export, but limited features and poor consent/privacy posture.",
      "ratings": {
        "easeOfUse": 3.4,
        "design": 3.1,
        "features": 2.1,
        "outputs": 2.2,
        "privacy": 0.7,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Adding students individually and grouping works. Bulk Add exists, but the tested route was not as smooth as paste-first tools.",
        "design": "Teacher-focused page with clear result cards and educational use-case copy.",
        "features": "By-count/by-size grouping, add/bulk/import, current list, regroup, and export. No constraints, attributes, repeats, or saved class manager.",
        "outputs": "Export is available after results. No CSV/PDF/share output was verified.",
        "privacy": "Bad for student names: Google ads/consent, Tag Manager/Analytics, click tracking, and a 210-partner consent notice loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Plain random balanced groups."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Add students individually",
        "Bulk Add and Import controls",
        "By count or by size",
        "Balanced classroom result cards",
        "Export control"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No diagnostics",
        "No verified CSV/PDF output",
        "Heavy Google ad/consent surface"
      ],
      "reviewNote": "Live test added 12 names individually and generated four groups of three. Bulk Add was visible but not fully verified.",
      "tags": []
    },
    {
      "id": "teachquill-classroom-group-generator",
      "rank": 109,
      "name": "TeachQuill Classroom Group Generator",
      "url": "https://teachquill.com/classroom-group-generator",
      "bestFor": "AI-assisted classroom grouping drafts from natural-language constraints",
      "summary": "TeachQuill Classroom Group Generator is an AI-style classroom grouping form, not a normal deterministic group generator. The page accepts a quick natural-language description or a guided form with class size, names/notes, objectives, timing, materials, and constraints. In testing, attempting to generate groups opened a sign-in/create-account modal, so the actual output quality was not verifiable without an account.",
      "pricing": "Account required to generate in the tested workflow. Pricing is part of TeachQuill’s broader AI educator platform; the page pushes “Get started free” and login rather than a no-account group-generator workflow.",
      "overallRating": 2.6,
      "overallComment": "Interesting as an AI grouping draft tool, but account friction and unverified output keep it well below purpose-built group generators. Useful if you already want TeachQuill’s broader AI platform; not a good no-account group maker.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 4.1,
        "features": 2.8,
        "outputs": 1.8,
        "privacy": 2.3,
        "accountFriction": 1.4,
        "resultQuality": 2.7
      },
      "ratingComments": {
        "easeOfUse": "The prompt and guided form are easy to understand, but the workflow stops at account creation before showing generated groups.",
        "design": "Polished modern educator-platform page with good examples and a clean form.",
        "features": "Natural-language constraints and guided fields are useful, but the group-generator-specific controls are mostly prompt-based and output was not verifiable without signing in.",
        "outputs": "No useful output/export surface was verified because generation led to login. The page promises professional output, but not concrete CSV/copy/share controls in the free visible workflow.",
        "privacy": "The policy is broad and generic, including account data, user content, cookies, automatic collection, third-party providers, marketing contact, and tracking that may count as sale/sharing under California law. Not ideal for student rosters.",
        "accountFriction": "Generation required sign-in or account creation in the tested workflow.",
        "resultQuality": "Could be useful for drafts when a teacher writes good instructions, but the actual grouping behavior was not verifiable without an account and should not be credited like a proven constraint solver."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "yes",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Clean prompt-based interface",
        "Guided form for class size, names, timing, and constraints",
        "Can express unusual grouping instructions in natural language",
        "Modern design"
      ],
      "cons": [
        "Account required to generate in tested workflow",
        "Output/export not verifiable without login",
        "Prompt-based behavior is harder to audit than a deterministic grouping UI",
        "Broad privacy policy and tracking/sale-sharing language",
        "Not a multi-round optimizer"
      ],
      "reviewNote": "Review the classroom group generator page, not TeachQuill’s whole AI educator platform. Generation prompted sign-in during testing, so keep output/result claims conservative.",
      "tags": [
        "constraints",
        "ai-assisted"
      ]
    },
    {
      "id": "toolita-team-picker",
      "rank": 110,
      "name": "Toolita Team Picker",
      "url": "https://toolita.com/decision/team-picker/",
      "bestFor": "Casual random teams or fixed-size groups when ad/cookie load is acceptable",
      "summary": "Toolita Team Picker is a straightforward generator that works. Live testing pasted twelve names and produced two groups of six. It supports even split and fixed team size modes, reset, and rerunning for a different random mix. The page is surrounded by cookie/ad infrastructure and does not expose serious export, constraints, attributes, saved rosters, repeat handling, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.6,
      "overallComment": "A working casual splitter, but weaker than cleaner tools with exports or privacy-first design.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.0,
        "features": 2.0,
        "outputs": 1.0,
        "privacy": 1.2,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The basic paste-and-pick workflow works.",
        "design": "Readable form and result cards, mixed into a broad content/ratings page.",
        "features": "Even split and fixed-size group modes are the main useful features.",
        "outputs": "No copy/download/export control was verified in the result area.",
        "privacy": "Google ads/consent, Tag Manager/Analytics, and related scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Paste names",
        "Even split mode",
        "Fixed team size mode",
        "Rerun/reset workflow"
      ],
      "cons": [
        "No verified export",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "Heavy ad/cookie infrastructure"
      ],
      "reviewNote": "Live test generated two teams of six.",
      "tags": []
    },
    {
      "id": "versakit-group-generator",
      "rank": 111,
      "name": "Versakit Group Generator",
      "url": "https://versakit.net/generators/group",
      "bestFor": "Clean no-account random groups with copy/text download",
      "summary": "VersaKit Group Generator is a clean basic random group splitter. Paste one name per line, choose number of groups or people per group, choose random/alphabetical/reverse sorting inside groups, generate evenly sized groups, then copy all groups or download a text file. It runs client-side with no account, but it has no constraints, balancing, leaders, repeats, or spreadsheet-oriented export.",
      "pricing": "Free. No account or payment required.",
      "overallRating": 2.6,
      "overallComment": "A clean and privacy-friendly basic splitter. Better than many junk randomizers as a utility page, but not a serious group generator.",
      "ratings": {
        "easeOfUse": 4.7,
        "design": 3.8,
        "features": 1.8,
        "outputs": 2.5,
        "privacy": 4.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy. Paste names, choose number of groups or people per group, and generate. The controls are obvious and there is a sample-name button.",
        "design": "Clean, readable, and much less cluttered than ad-heavy randomizer sites. It feels like a generic toolkit page rather than a dedicated group-planning product.",
        "features": "Basic feature depth only: two split modes, even size distribution, random/alphabetical/reverse ordering, sample names, live count, and stats. No leaders, constraints, balancing, repeats, imports, saved rosters, or diagnostics.",
        "outputs": "Usable but limited. It provides copy-to-clipboard and text-file download with a simple generated summary. No CSV/Excel structure, no Zoom export, no share link, no PDF/image output, and no saved history.",
        "privacy": "Better than most free randomizer pages. The policy says most tools process locally in the browser and input data is not retained, and the tested grouping code is client-side. There is automatic device/usage data, cookies/analytics language, and Cloudflare Insights.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even-ish sizes. Fine for one-off random teams, but no assignment quality beyond random distribution."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very easy to use",
        "No account required",
        "Client-side random grouping",
        "Number-of-groups and people-per-group modes",
        "Clean interface",
        "Copy all groups",
        "Download as text file"
      ],
      "cons": [
        "Random-only grouping",
        "No balancing, constraints, or repeat optimization",
        "No leaders or representative assignment",
        "No CSV/Excel/Zoom export",
        "No saved rosters or result history",
        "Generic toolkit page, not a dedicated planning workflow"
      ],
      "reviewNote": "Playwright test confirmed client-side generate, stats, copy, and text download. Scope to the group generator, not the broader VersaKit utility site.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "wheel-of-decision-team-generator",
      "rank": 112,
      "name": "Wheel of Decision Team Generator",
      "url": "https://wheelofdecision.com/tool/team-generator/",
      "bestFor": "Simple team generation with history/statistics and local participant state",
      "summary": "Wheel of Decision Team Generator is a working random team tool. Live testing pasted twelve names and generated two teams of six. It shows generation history, statistics, participant count, animation/sound settings, and a clear team-card result. It is easy enough for basic sports/classroom splits, but it lacks team-size mode depth, constraints, attributes, repeat avoidance, file export, copy controls in the tested view, and diagnostics. The page also loads a heavy ad/analytics stack.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.6,
      "overallComment": "A usable basic splitter with history, undermined by limited features and tracking load.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 3.0,
        "features": 2.2,
        "outputs": 1.4,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste participants and generate worked in live testing.",
        "design": "Readable team cards, history, and statistics panels.",
        "features": "History/statistics and animation/sound settings are useful extras, but grouping controls are basic.",
        "outputs": "No dedicated copy/download/export control was verified in the result view.",
        "privacy": "Google ads/consent, Tag Manager/Analytics, Microsoft Clarity, fonts, and ad-quality domains loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted names work",
        "History panel",
        "Statistics panel",
        "Animation/sound settings",
        "Readable result cards"
      ],
      "cons": [
        "No verified export",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "Heavy ad/analytics stack"
      ],
      "reviewNote": "Live test generated two teams of six and recorded a generation in history.",
      "tags": []
    },
    {
      "id": "agentcalc-random-team-generator",
      "rank": 113,
      "name": "AgentCalc Random Team Generator",
      "url": "https://agentcalc.com/random-team-generator",
      "bestFor": "Educational simple random teams with clear algorithm explanation",
      "summary": "AgentCalc Random Team Generator is a basic working calculator with unusually clear explanatory text. Live testing pasted twelve names, set three teams, and generated three balanced groups. The page explains Fisher-Yates shuffling, distribution limits, and privacy assumptions. As a tool, though, it is basic: no constraints, attributes, repeat handling, saved rosters, or verified export/copy button beyond visible results.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.5,
      "overallComment": "Good educational transparency for a basic splitter, but feature depth is low.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 2.7,
        "features": 1.7,
        "outputs": 1.0,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The form worked once the consent overlay was removed.",
        "design": "Text-heavy calculator page; the output is readable.",
        "features": "Basic paste, team count, generate. The algorithm explanation is useful but not a grouping feature.",
        "outputs": "No dedicated copy/download/export button was verified in the generated result area.",
        "privacy": "The page says client-side processing, but Google ad/consent and Cloudflare scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "partial",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted names work",
        "Clear Fisher-Yates explanation",
        "Balanced group sizes",
        "Embeddable calculator code"
      ],
      "cons": [
        "No verified export",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "Consent/ad overlay can interfere"
      ],
      "reviewNote": "Live test generated three teams of four. A consent overlay initially blocked the Generate button.",
      "tags": []
    },
    {
      "id": "comment-picker-random-team-generator",
      "rank": 114,
      "name": "Comment Picker Random Team Generator",
      "url": "https://commentpicker.com/team-generator.php",
      "bestFor": "Basic random teams with stronger copy/print/Excel output",
      "summary": "Comment Picker Random Team Generator is a legitimate basic group splitter. It supports creating teams by number of teams or by participants per team and has better output options than many simple tools, including copy, print, and Excel export. The downside is the ad-tech-heavy page and complete lack of grouping rules beyond even random distribution.",
      "pricing": "Free, ad-supported web tool. Comment Picker Premium starts at $9.99 and is positioned as ad-free with higher limits/features, but the random team generator FAQ says team generation is free without limits.",
      "overallRating": 2.5,
      "overallComment": "A solid basic random splitter with unusually good output/export for this tier, dragged down by heavy ad-tech/privacy issues and no real grouping intelligence.",
      "ratings": {
        "easeOfUse": 5.0,
        "design": 2.6,
        "features": 2.0,
        "outputs": 4.0,
        "privacy": 1.0,
        "accountFriction": 4.5,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Straightforward basic workflow: paste names, choose number of teams or participants per team, generate. For simple random teams, it is easy.",
        "design": "The tool itself is understandable, but the surrounding Comment Picker page is a generic ad-supported utility site with consent/ad infrastructure. Usable, not polished.",
        "features": "Basic group-generation feature depth. It supports arbitrary team count or members-per-team and even distribution, but no attributes, no custom per-team capacities, no constraints, no multi-session planning, no repeat optimization, and no diagnostics.",
        "outputs": "Strong for a basic splitter: copy, print, and Excel/Numbers export are all useful. It lacks Zoom breakout export, shareable result links, saved result history, and richer schedule-style output.",
        "privacy": "Poor. The tool FAQ says entered names/teams are not saved on Comment Picker servers, which helps, but the page uses Ezoic ad services, Google Analytics, Google Tag Manager, AdSense/DoubleClick-style ad infrastructure, consent tooling, cookies, pixels, geolocation/device/ad IDs, and targeted advertising partners. Bad environment for student names.",
        "accountFriction": "No account is needed for the random team generator. There is some friction from the ad/consent-heavy free site and Premium upsell context, but it does not block basic use.",
        "resultQuality": "Standard one-off random grouping with even-ish group sizes. Good enough for a quick split, but no balancing, constraints, repeat reduction, or quality diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "yes",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "partial",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Arbitrary number of teams or people per team",
        "Very easy basic workflow",
        "Copy, print, and Excel/Numbers export",
        "No account required for basic team generation",
        "FAQ says entered teams are not saved on their servers"
      ],
      "cons": [
        "No constraints or balancing",
        "No multi-session repeat optimization",
        "No custom per-team capacities",
        "Heavy Ezoic/ad-tech/consent environment",
        "Premium upsell/ad-supported page",
        "No Zoom export or shareable result links"
      ],
      "reviewNote": "Consistency anchor: treat this as a plain random splitter. Output/export is better than MiniWebTool because of Excel/print/copy, but feature depth and result quality stay at the basic-random-generator level.",
      "tags": [
        "strong-exports"
      ]
    },
    {
      "id": "iotools-random-team-generator",
      "rank": 115,
      "name": "IOTools Random Team Generator",
      "url": "https://iotools.cloud/tool/random-generator/random-team-generator/",
      "bestFor": "Basic random teams with duplicate removal, file import, copy buttons, and a client-side workflow",
      "summary": "IOTools Random Team Generator is a functional but ad-heavy utility. It accepts pasted names or a text-file upload, lets you set the number of teams, optionally removes duplicate names, randomizes client-side, and provides copy buttons for each generated team. It is useful for basic one-off splits, but the grouping logic is plain random distribution and the privacy/ad-tech surface is ugly.",
      "pricing": "Free web tool. No account required for generation; sign-in exists for site features.",
      "overallRating": 2.5,
      "overallComment": "A usable basic splitter with better-than-minimal output controls, but privacy is bad and there is no real group-planning intelligence.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 2.8,
        "features": 1.9,
        "outputs": 2.6,
        "privacy": 1.0,
        "accountFriction": 4.8,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The core form is straightforward, but the tool page has lots of surrounding chrome, ads, related tools, and share/bookmark controls.",
        "design": "Functional utility-site design. Not awful, but cluttered.",
        "features": "Names, number of teams, text-file import, duplicate removal, reset, fullscreen, and copy buttons. No group-size mode, constraints, balancing, saved rosters, or repeat planning.",
        "outputs": "Copy buttons per team and a client-side output area are useful. No CSV, PDF, image, or result-specific share link.",
        "privacy": "Very poor. The page loads Amazon ads, Google/Funding Choices, BuySellAds, Mixpanel, Microsoft Clarity, Google Tag Manager/Analytics, and other ad/tracking scripts despite the client-side tool label.",
        "accountFriction": "The generator works without an account. Sign-in is only site chrome.",
        "resultQuality": "Plain random assignment only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Text area plus file import",
        "Duplicate removal option",
        "Copy buttons for each team",
        "Client-side output label",
        "Fullscreen option"
      ],
      "cons": [
        "Heavy ad and analytics stack",
        "No constraints or balancing",
        "No group-size mode",
        "No saved roster/history",
        "No CSV/PDF export",
        "Cluttered utility-site layout"
      ],
      "reviewNote": "The “Client Side” label helps, but it does not erase the ad/analytics footprint around the page.",
      "tags": []
    },
    {
      "id": "piliapp-random-team-generator",
      "rank": 116,
      "name": "PiliApp Random Team Generator",
      "url": "https://pili.app/random/team/",
      "bestFor": "Localized simple team splitting with copy and saved session data",
      "summary": "PiliApp Random Team Generator is a long-running simple team randomizer. In testing the site localized to German and generated random teams from the pasted names. It supports editing names, changing team count, copying all results, saving session data, changing the page title, and multiple display formats according to the page text. It is useful for quick casual splits, but it has ads, no constraints, no attributes, no repeat avoidance, no diagnostics, and no modern export workflow beyond copy/display.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.5,
      "overallComment": "A usable old-school random team splitter with copy/session conveniences, but limited and ad-heavy.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 2.3,
        "features": 2.1,
        "outputs": 2.0,
        "privacy": 1.3,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The tool works, but localization and an older interface make the workflow less obvious.",
        "design": "Functional but dated, with ad slots around the tool.",
        "features": "Name editing, team count, copy all, saved session data, and display formats are useful basics.",
        "outputs": "Copy-all/display output is available; no CSV/PDF/image export was verified.",
        "privacy": "Google analytics/DoubleClick, Cloudflare, cdnjs, and ad-related hosts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Editable names",
        "Team-count control",
        "Copy all",
        "Session data saving",
        "Multiple display formats"
      ],
      "cons": [
        "Dated UI",
        "Ads",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified"
      ],
      "reviewNote": "Live test landed on German localization and generated random groups; page text describes copy and session-save behavior.",
      "tags": []
    },
    {
      "id": "random-team-generator-github-app",
      "rank": 117,
      "name": "Random Team Generator GitHub App",
      "url": "https://randomteamgenerator.github.io/input.html",
      "bestFor": "Open-source, no-account random teams when privacy and simplicity matter more than features",
      "summary": "Random Team Generator is a small open-source web app linked to GitHub. It has an items textarea, a number-of-groups input, Generate, Clear All, and a dark-mode toggle. It generated balanced teams correctly in the browser and stores only theme state locally. The tradeoff is that there is almost nothing else: no export, no copy button, no constraints, no labels, and no repeat planning.",
      "pricing": "Free open-source web app. No account required.",
      "overallRating": 2.5,
      "overallComment": "A clean, privacy-friendly basic splitter. Useful for a quick random split, but feature depth and output handling are bare.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.1,
        "features": 1.2,
        "outputs": 1.0,
        "privacy": 4.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Paste names, enter group count, generate. Clear and fast.",
        "design": "Simple modern UI with dark mode. Not fancy, but less ugly than many randomizer pages.",
        "features": "Only items plus group count. Dark mode and clear-all do not add real group-generation depth.",
        "outputs": "Page display only. No copy, CSV, PDF, share, or print-specific output.",
        "privacy": "Strong for a hosted simple app: no account, no cookies observed, only app scripts, and localStorage only for theme state.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even-sized teams. No constraints, balancing, or repeat avoidance."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and open source",
        "No account required",
        "Clean simple UI",
        "Dark mode",
        "No ad-tech observed",
        "Minimal local storage"
      ],
      "cons": [
        "No output export",
        "No copy button",
        "No constraints or balancing",
        "No saved roster/history",
        "No multi-round optimization",
        "Only basic random splitting"
      ],
      "reviewNote": "Open-source GitHub project by Ryu K; review the deployed app rather than GitHub as a platform.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "randomgenerator-com-au-random-group-generator",
      "rank": 118,
      "name": "RandomGenerator.com.au Random Group Generator",
      "url": "https://www.randomgenerator.com.au/random-group-generator",
      "bestFor": "Basic target-group-size grouping with copy-all output",
      "summary": "RandomGenerator.com.au Random Group Generator is a basic working group generator. Live testing pasted twelve names, used target group size three, and generated four groups of three with Copy All Groups. It supports comma or newline input, sample data, an uneven-groups option, and theme toggle. It is limited to target group size rather than a rich group-count workflow in the tested UI, and it has no constraints, attributes, repeat handling, saved rosters, diagnostics, or file export.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.5,
      "overallComment": "Works for quick group-size splits, but it is feature-light and ad/cookie heavy.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 3.1,
        "features": 1.8,
        "outputs": 1.8,
        "privacy": 1.3,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Pasted names and group-size generation worked.",
        "design": "Clean enough form and result cards.",
        "features": "Target group size, uneven-group option, and sample data are useful basics. No advanced controls.",
        "outputs": "Copy All Groups was visible; no file export was verified.",
        "privacy": "Google ads and CookiePal loaded, and a React hydration error appeared.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups by target size only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Newline or comma input",
        "Target group size",
        "Uneven group option",
        "Sample data",
        "Copy All Groups"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No file export verified",
        "Ads/cookie scripts and React error"
      ],
      "reviewNote": "Live test generated four groups of three. React hydration error appeared during page load.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "randomgroupgenerator-co",
      "rank": 119,
      "name": "RandomGroupGenerator.co",
      "url": "https://randomgroupgenerator.co/",
      "bestFor": "A clean, private, one-screen random split when exports do not matter",
      "summary": "RandomGroupGenerator.co is a clean basic random group generator. Paste names, choose the number of groups, generate, and reshuffle. It gives groups random/fun names and claims to use Fisher-Yates locally in the browser with names never sent to a server. It is pleasant and privacy-friendly, but it is just a one-session random splitter with no copy/export button, no group-size mode, no constraints, no saved roster, and no diagnostics.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.5,
      "overallComment": "A nice private-feeling basic splitter, but the lack of copy/download/export and group-size mode keeps it below stronger basic utilities.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.8,
        "features": 1.5,
        "outputs": 1.0,
        "privacy": 4.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, set group count, generate. Reshuffle is obvious.",
        "design": "Clean, modern, and focused. No visible ad clutter.",
        "features": "Very basic: pasted names, number of groups, reshuffle, and random group names. No group-size mode, constraints, balancing, imports, saved rosters, or diagnostics.",
        "outputs": "Page display only. No copy button, CSV, print, share link, image/PDF, or Zoom-friendly export, which makes it weaker than several other basic splitters.",
        "privacy": "Strong for this tier. The page claims browser-local processing and no server upload, and the tested page had no obvious third-party scripts, cookies, or local-storage trackers.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even-ish group sizes. Good enough for one-off random teams, nothing more."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Clean no-clutter interface",
        "No account required",
        "Runs in browser",
        "Claims names are never sent to a server",
        "Reshuffle button",
        "Fun random group names"
      ],
      "cons": [
        "No copy/download/export",
        "No group-size mode",
        "No constraints or balancing",
        "No saved rosters/history",
        "No leaders or roles",
        "Random-only result quality"
      ],
      "reviewNote": "Do not confuse this with RandomGroupGenerator.pro, which was a parked/non-working domain. This.co tool is clean and working, but weaker than basic splitters that include copy/download or group-size mode.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "randotools-random-team-generator",
      "rank": 120,
      "name": "RandoTools Random Team Generator",
      "url": "https://randotools.app/random-team-generator/",
      "bestFor": "Quick private-ish two-mode team splitting with per-team copy",
      "summary": "RandoTools Random Team Generator is a small browser-based random splitter. Paste one name per line, adjust the number of teams with plus/minus buttons, generate, reshuffle, and copy individual team lists. It claims crypto.getRandomValues shuffling and local processing. It is handy for quick sports/classroom teams, but it only supports number-of-teams mode in the tested controls, lacks CSV/PDF/share export, has no saved rosters, constraints, attributes, repeat handling, or diagnostics, and the page loads Google advertising infrastructure.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.5,
      "overallComment": "A clean basic randomizer with per-team copy, limited by narrow controls and ads.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 3.0,
        "features": 1.7,
        "outputs": 1.8,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Paste, choose team count, generate. The workflow is obvious.",
        "design": "Plain but clear. The tool section is not cluttered.",
        "features": "Basic count-based random team generation and reshuffle. No group-size mode in the tested UI, no constraints, attributes, repeats, or saved lists.",
        "outputs": "Each team has a copy button. There is no copy-all, CSV, PDF/image, or share link.",
        "privacy": "The page claims names never leave the device, which is good. Google ad/quality domains and Google fonts loaded, so it is not a clean local-only page.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random distribution only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Simple pasted-name workflow",
        "Reshuffle",
        "Per-team copy buttons",
        "Claims browser-side processing"
      ],
      "cons": [
        "No group-size mode found in tested UI",
        "No CSV/PDF/share export",
        "No constraints or balancing attributes",
        "No repeat avoidance",
        "Google ad infrastructure present"
      ],
      "reviewNote": "Do not over-credit the privacy claim because Google ad infrastructure is present on the page.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "spinthenamepicker-team-generator",
      "rank": 121,
      "name": "SpinTheNamePicker Team Generator",
      "url": "https://spinthenamepicker.com/pages/team-generator.html",
      "bestFor": "Quick sports/classroom team splits with equal-size or random-size mode",
      "summary": "SpinTheNamePicker Team Generator is a basic working team splitter. Live testing pasted twelve names, selected three teams, and generated three balanced teams of four. It supports equal-size and random-size balance modes, clear/load-example controls, and regeneration. It is easy enough for casual use, but there are no constraints, attributes, repeat handling, saved rosters, diagnostics, or verified export/copy controls.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.5,
      "overallComment": "A functional simple random team generator, but thin beyond equal-size splits.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 2.8,
        "features": 1.9,
        "outputs": 0.8,
        "privacy": 2.3,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "Paste names, choose team count, and generate worked in live testing.",
        "design": "Plain but readable page and result area.",
        "features": "Equal-size and random-size modes are useful basics. No advanced group-generation controls.",
        "outputs": "Generated teams are visible, but no copy/download/export control was verified.",
        "privacy": "No account is needed, but Google ad-quality and ad scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted-list workflow",
        "Equal-size mode",
        "Random-size mode",
        "Load example and clear controls"
      ],
      "cons": [
        "No verified export",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "Ad scripts present"
      ],
      "reviewNote": "Live test generated three teams from twelve names.",
      "tags": []
    },
    {
      "id": "the-word-finder-random-group-generator",
      "rank": 122,
      "name": "The Word Finder Random Group Generator",
      "url": "https://www.thewordfinder.com/random-group-generator/",
      "bestFor": "Basic random groups with duplicate removal and custom group title fields",
      "summary": "The Word Finder Random Group Generator is a simple tool on a word-game/content site. It supports a group title, name input, number of groups, balance-evenly and remove-duplicates toggles, and generated groups. The content describes renaming groups and reshuffling. That is more pleasant than the weakest tools, but there is no clear copy/CSV/print/export workflow and the broader site has an advertising/analytics-heavy privacy posture.",
      "pricing": "Free web tool. No account requirement visible for the generator.",
      "overallRating": 2.5,
      "overallComment": "A usable basic splitter with a couple of cleanup toggles. Output/export and privacy are weak.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 3.0,
        "features": 2.0,
        "outputs": 1.2,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The intended workflow is simple: enter names, choose group count, generate. The page can be harder to access because of bot/security checks.",
        "design": "Reasonably clear embedded tool, but it sits inside a broader content/word-tool site rather than a focused group-planning product.",
        "features": "Basic: group title, names, group count, balance-evenly, remove duplicates, and group renaming/reshuffle according to the page copy. No constraints, saved rosters, roles, attributes, or repeats.",
        "outputs": "Weak. No clear copy, CSV, print, PDF, share, or spreadsheet export workflow was evident from the page content.",
        "privacy": "Poor. The site privacy policy describes third-party advertising, Google Analytics, trackers, usage data, IP/click-pattern collection, and data sharing with advertisers/monitoring parties.",
        "accountFriction": "No account requirement is visible for the generator.",
        "resultQuality": "Plain random grouping with even-size and duplicate cleanup. No deeper assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Simple random grouping workflow",
        "Group title field",
        "Balance-evenly toggle",
        "Remove-duplicates toggle",
        "No account requirement visible",
        "Group renaming/reshuffle described in page copy"
      ],
      "cons": [
        "No clear copy/download/export",
        "No group-size mode verified",
        "No constraints or balancing beyond even size",
        "No saved rosters/history",
        "Ad/analytics-heavy privacy policy",
        "Cloudflare/bot check can block access"
      ],
      "reviewNote": "The generator page is separate from the site’s random word and puzzle tools; do not credit unrelated word-game features.",
      "tags": []
    },
    {
      "id": "a-school-random-pair-generator",
      "rank": 123,
      "name": "A School Random Pair Generator",
      "url": "https://www.aschool.us/random/random-pair.php",
      "bestFor": "Very basic classroom random groups with max-size or group-count modes",
      "summary": "A School Random Group Creator is an old but working classroom splitter. Paste names one per line, choose either maximum group size or number of groups, choose balanced or maximum-fill distribution, and submit. It produces plain text groups on the page. That is useful for quick one-off classroom grouping, but there are no constraints, no balancing by attributes, no repeat handling, no diagnostics, and no real export workflow.",
      "pricing": "Free, with ads and donation links. No account is required.",
      "overallRating": 2.4,
      "overallComment": "A usable basic splitter with slightly better settings than the weakest randomizers, dragged down by an ugly dated page, no exports, and very poor privacy/ad-tech surroundings.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 1.7,
        "features": 2.2,
        "outputs": 1.4,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.1
      },
      "ratingComments": {
        "easeOfUse": "The core workflow is straightforward: paste names, choose group count or max group size, choose balanced or maximum-fill distribution, submit. The page clutter and consent banner are the main friction.",
        "design": "Dated, text-heavy utility page with ads and a large consent layer. It works, but it is not pleasant or modern.",
        "features": "Slightly above the weakest random splitters because it supports both max group size and number-of-groups modes plus balanced vs maximum-fill distribution. It has no constraints, attributes, history, repeats, or optimization.",
        "outputs": "Results are just plain text groups on the page. There is no obvious CSV, spreadsheet, copy button, PDF/image, share link, or Zoom-friendly export.",
        "privacy": "Very poor for student names. The page showed a Google Funding Choices consent dialog saying data may be shared with 210 partners, plus ad/analytics infrastructure including Google ads/analytics and Infolinks.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Fine for one-off random grouping with even-ish sizes. It does not improve group quality beyond simple random splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Supports number-of-groups and max-group-size modes",
        "Balanced or maximum-fill distribution modes",
        "Simple pasted-name workflow",
        "Free to use"
      ],
      "cons": [
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No clean export/copy workflow",
        "Very dated design",
        "Heavy ad-tech and consent partner surface"
      ],
      "reviewNote": "Review as the Random Group Creator mode at aschool.us. Do not confuse it with stronger multi-session group mixing tools despite the site navigation also using “Group Mixer.”",
      "tags": []
    },
    {
      "id": "classtools24-random-group-generator",
      "rank": 124,
      "name": "ClassTools24 Random Group Generator",
      "url": "https://classtools24.com/random-group-generator/",
      "bestFor": "Simple random groups with fullscreen display and basic click-to-copy behavior",
      "summary": "ClassTools24 Random Group Generator is a basic classroom-style splitter. Paste names, choose the number of groups, generate, and it displays numbered groups. The page says you can click a group to copy participants, and there is a fullscreen button. That is a little nicer than page-only tools, but there are no constraints, no group-size mode, no saved lists, no exports, and no repeat handling.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.4,
      "overallComment": "A decent basic splitter with fullscreen and some copy affordance. Very thin.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 2.8,
        "features": 1.3,
        "outputs": 2.0,
        "privacy": 2.3,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Easy paste-count-generate workflow.",
        "design": "Plain but usable. The page is not elegant, but the tool area is understandable.",
        "features": "Only number-of-groups random splitting plus reset/fullscreen. No constraints, balancing, group-size mode, saved rosters, or diagnostics.",
        "outputs": "Group display, fullscreen, and click-to-copy participants are better than pure page text. No CSV, PDF, spreadsheet, or shareable result link.",
        "privacy": "Middling. Much lighter than the worst ad-funded pages, but it sets Google Analytics cookies and a site user cookie, and the privacy page was not clearly available.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Easy to use",
        "Fullscreen mode",
        "Click group to copy participants",
        "Less ad-tech observed than many utility sites"
      ],
      "cons": [
        "No group-size mode",
        "No real export formats",
        "No constraints or balancing",
        "No saved roster/history",
        "No repeat minimization",
        "Privacy documentation is weak"
      ],
      "reviewNote": "This is distinct from ClassTools.net; do not conflate the two.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "gigacalculator-random-team-generator",
      "rank": 125,
      "name": "GIGAcalculator Random Team Generator",
      "url": "https://www.gigacalculator.com/randomizers/random-team-generator.php",
      "bestFor": "Quick random sports/team splits when per-team copy is enough",
      "summary": "GIGAcalculator Random Team Generator is a straightforward ad-supported randomizer. Paste one name per line, choose the number of teams, and it creates reasonably even teams. The page claims a Fisher-Yates shuffle, a tested RNG, up to 1,000 names, and up to 100 teams. It has a copy icon next to each team, but no CSV, print, saved roster, constraints, leaders, attributes, or repeat planning.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.4,
      "overallComment": "A competent but very basic random splitter. The per-team copy control is useful; the ad-tech footprint is awful.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 2.6,
        "features": 1.5,
        "outputs": 2.0,
        "privacy": 1.1,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Simple paste-list, choose team count, generate workflow. The page clutter is the main usability drag.",
        "design": "Functional calculator-site layout, but visually busy and ad-heavy.",
        "features": "Only pasted names and number of teams. No group-size mode, constraints, balancing, saved rosters, repeats, or diagnostics.",
        "outputs": "Better than page-only because each team has a copy icon. No CSV, spreadsheet export, print, share link, or Zoom format.",
        "privacy": "Bad. The site has a large advertising stack, consent tooling, Google/DoubleClick, Amazon ads, and many local-storage ad identifiers.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random team assignment with even-ish group sizes. Fisher-Yates is fine, but there are no real assignment-quality controls."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "partial",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Easy paste-and-generate workflow",
        "Per-team copy icons",
        "Handles up to 1,000 names according to page copy",
        "Uses Fisher-Yates according to page copy",
        "No account required"
      ],
      "cons": [
        "No group-size mode",
        "No constraints or balancing",
        "No CSV/spreadsheet export",
        "No saved rosters/history",
        "Ad-heavy page",
        "Very poor privacy/ad-tech footprint"
      ],
      "reviewNote": "The specific random team generator is a simple utility inside a much larger calculator/randomizer site.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "saroj-meher-random-group-generator",
      "rank": 126,
      "name": "Saroj Meher Random Group Generator",
      "url": "https://www.sarojmeher.com/tools/random-group-generator/",
      "bestFor": "Decorated random group output with color and image download options",
      "summary": "Saroj Meher Random Group Generator is a working but cluttered random grouping page. After accepting the consent dialog, live testing generated groups from pasted names. The tool supports participants-per-group or number-of-groups mode, event name, color customization, click-to-copy style output, and image download. The product surface is surrounded by ads, consent UI, sidebars, and article text, and automated testing observed JavaScript errors. It is usable for a quick decorative grouping image, but it is not a serious planning or constraint tool.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 2.4,
      "overallComment": "Works after consent, with image/color options, but the page is cluttered and technically rough.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 2.2,
        "features": 2.4,
        "outputs": 2.8,
        "privacy": 0.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The core inputs are understandable, but consent UI, ads, sidebars, and script errors hurt the workflow.",
        "design": "Very cluttered page layout with a small embedded tool and lots of surrounding content.",
        "features": "Count/size modes, event name, colors, and image download are useful casual features; no constraints or balancing attributes.",
        "outputs": "Click-to-copy style output and image download are available.",
        "privacy": "A large ad/consent/analytics footprint was observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Participants-per-group or number-of-groups mode",
        "Event name field",
        "Color customization",
        "Image download",
        "Generated groups copied from text box"
      ],
      "cons": [
        "Consent/ad clutter",
        "JavaScript errors observed",
        "No constraints",
        "No attribute balancing",
        "No repeat avoidance",
        "No clean data export verified"
      ],
      "reviewNote": "Initial test was blocked by consent; targeted retest after consent generated groups. Page errors included null addEventListener and undefined replace.",
      "tags": []
    },
    {
      "id": "ta-easy-random-group",
      "rank": 127,
      "name": "TA Easy Random Group",
      "url": "https://www.ta-easy.com/random-group/en",
      "bestFor": "Very simple no-account random groups when export and rules do not matter",
      "summary": "TA Easy Random Group is a bare-bones random group generator. Live testing worked: a pasted twelve-name list and three-group setting produced three balanced groups of four. That is the whole product surface: names, number of groups, generate, and visible results. It is useful for a quick split, but there is no team-size mode, copy/export control, constraints, attributes, repeat avoidance, saved rosters, or diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.4,
      "overallComment": "Works for one-off random groups, but it is one of the thinner tools in the dataset.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 2.3,
        "features": 1.4,
        "outputs": 0.8,
        "privacy": 2.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The form is extremely simple: paste names, enter group count, generate.",
        "design": "Minimal page with readable results and little supporting UI.",
        "features": "Only basic random grouping by number of groups was verified.",
        "outputs": "No copy, CSV, TXT, PDF, or share workflow was visible in testing.",
        "privacy": "No account is needed, but Google ad-quality and Cloudflare scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only; no constraints or quality reporting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Very fast simple workflow",
        "Balanced group sizes in live test"
      ],
      "cons": [
        "No export controls found",
        "No constraints",
        "No team-size mode verified",
        "No repeat avoidance",
        "Ad-related scripts present"
      ],
      "reviewNote": "Live test generated three groups of four from twelve names.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "university-of-edinburgh-group-allocator",
      "rank": 128,
      "name": "University of Edinburgh Group Allocator",
      "url": "https://static.sps.ed.ac.uk/groupallocator/",
      "bestFor": "Bare-bones random groups with CSV download",
      "summary": "The University of Edinburgh Group Allocator is a tiny static random group generator. Paste names, choose either people per group or number of groups, generate, and download a CSV. It is plain and limited, but it is a real private-ish browser splitter with a useful export option.",
      "pricing": "Free static web tool. No account, payment, or sign-up.",
      "overallRating": 2.4,
      "overallComment": "A very basic random splitter, but privacy-friendly, no-account, and CSV-capable enough to rank above the weakest utility pages.",
      "ratings": {
        "easeOfUse": 4.5,
        "design": 2.1,
        "features": 1.7,
        "outputs": 3.2,
        "privacy": 5.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Simple enough: paste names, choose people per group or number of groups, click generate. The toggle is a little clunky, but the workflow is obvious.",
        "design": "Very plain Bootstrap/static-page design. It is readable, but it feels like a quick internal utility rather than a polished product.",
        "features": "Low feature depth, but not empty: paste input, number-of-groups mode, people-per-group mode, and CSV download. No constraints, balancing, saved rosters, repeat handling, team names, leaders, diagnostics, or editing controls.",
        "outputs": "CSV download is useful and better than copy-only or page-only tools. Otherwise output is just simple on-page tables; no copy button, print view, share link, Zoom export, or richer formats.",
        "privacy": "Strong. The page is static, uses browser-side JavaScript, has no visible analytics/ad scripts, no account, and no server submission for names. It does load jQuery and Bootstrap from CDNs, but roster data appears to stay in the browser.",
        "accountFriction": "No account or sign-up. Just open the page.",
        "resultQuality": "Standard random split quality only. It distributes names into groups, but there is no balancing beyond rough group sizes, no constraints, no repeat reduction, and no diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "yes",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very simple workflow",
        "Choose group count or people per group",
        "CSV download",
        "No account required",
        "No visible ads or analytics",
        "Runs client-side"
      ],
      "cons": [
        "Extremely basic",
        "Dated/plain UI",
        "No constraints or balancing",
        "No repeat optimization",
        "No copy/share/print controls",
        "No saved rosters or result history"
      ],
      "reviewNote": "Simple static University-hosted tool. It is not competitive on features, but privacy plus CSV export make it better than the weakest bare splitters.",
      "tags": [
        "privacy-friendly",
        "strong-exports",
        "basic-randomizer"
      ]
    },
    {
      "id": "effie-random-group-generator",
      "rank": 129,
      "name": "Effie Random Group Generator",
      "url": "https://www.effie.pro/free-tools/random-group-generator",
      "bestFor": "A quick no-account two-or-more group split on Effie’s site",
      "summary": "Effie Random Group Generator is a very basic free tool attached to Effie’s writing/workspace product site. Paste names, enter the number of groups, click Generate, and it displays numbered groups. That is basically the entire group-generator product. The page looks cleaner than many randomizer sites, but there is no copy button, export, group-size mode, constraints, balancing, saved roster, or repeat planning.",
      "pricing": "Free web tool. No account required for the generator; the surrounding Effie app has its own product/download flow.",
      "overallRating": 2.3,
      "overallComment": "Clean and easy, but extremely shallow. It is a plain random splitter with almost no output workflow.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.8,
        "features": 1.2,
        "outputs": 1.0,
        "privacy": 2.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, choose number of groups, generate. Hard to make this simpler.",
        "design": "Cleaner and more modern than most utility pages, though it is clearly a funnel into the broader Effie app.",
        "features": "Almost none for group generation: only pasted names and number of groups. No group-size mode, constraints, balancing, imports, exports, or diagnostics.",
        "outputs": "Page display only, plus an “Edit in Effie” link into the broader app. No copy, CSV, print, share, or Zoom-friendly output.",
        "privacy": "No account is needed for the tool, but the page loads Google Tag Manager and the Effie privacy policy is broad because it covers the full app and server-stored encrypted content.",
        "accountFriction": "The generator works without an account.",
        "resultQuality": "Plain random grouping. Fine for one-off teams; no quality controls beyond splitting people into groups."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very easy paste-and-generate flow",
        "Clean UI",
        "No account required",
        "Works in browser",
        "Free"
      ],
      "cons": [
        "Only number-of-groups mode",
        "No copy/download/export",
        "No constraints or balancing",
        "No saved roster/history",
        "No diagnostics",
        "Google Tag Manager on the page"
      ],
      "reviewNote": "Scope this to the free generator page, not Effie’s full note-taking/workspace product.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "flippity-random-name-picker",
      "rank": 130,
      "name": "Flippity Random Name Picker",
      "url": "https://www.flippity.net/v2/RandomNamePicker.htm",
      "bestFor": "Spreadsheet-backed classroom grouping and quick random teams",
      "summary": "Flippity Random Name Picker is a classroom utility that can create groups of 2–5 or 2–5 teams from names entered directly or from a Google Sheets template. It is more group-capable than Wheel of Names, but mostly a simple random classroom tool rather than a serious optimizer.",
      "pricing": "Free, ad-supported Flippity tool. Quick-entry use is free without a Flippity account; the spreadsheet-template workflow requires a Google account and Google Sheets setup.",
      "overallRating": 2.3,
      "overallComment": "A useful classroom randomizer, but feature depth is thin for group generation because group/team sizes are limited to preset tabs.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 2.5,
        "features": 1.8,
        "outputs": 2.5,
        "privacy": 3.2,
        "accountFriction": 3.5,
        "resultQuality": 2.2
      },
      "ratingComments": {
        "easeOfUse": "The quick-entry path is easy enough: paste or type names, generate, then use the Groups/Teams tabs. The Google Sheets template path is powerful for teachers but clunky compared with a purpose-built group generator.",
        "design": "Functional but dated. The tabs for spinner, lineup, groups, teams, chart, timer, and fullscreen are useful, but the visual design feels old-school classroom-web rather than polished.",
        "features": "Low for group generation. It directly offers groups of 2–5 and teams of 2–5, which is better than a pure picker workaround, but the limits are glaring: no arbitrary number of teams, no arbitrary group size beyond the preset tabs, no custom capacities, no constraints, no balancing, no multi-session planning, and no repeat optimization.",
        "outputs": "Useful classroom display modes and bookmark/share links, but weak export surface. It does not provide proper CSV group assignment export, Zoom export, result diagnostics, or schedule-style output.",
        "privacy": "Better than many ad-heavy randomizers because Flippity says it has no user accounts, does not store tool data on Flippity servers, and reads public Google Sheet data in the browser. It uses Google Analytics and Google AdSense, and Google-Sheets-based rosters are effectively published/accessible to anyone with the long link. Not ideal for sensitive student names.",
        "accountFriction": "No Flippity account is needed and quick-entry works directly. The spreadsheet workflow requires a Google account and template copying, which is friction if you just want groups now.",
        "resultQuality": "Basic random grouping with hard preset limits. It can make simple classroom groups, but inability to choose arbitrary team counts/group sizes plus no balancing or constraints keeps quality low."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "yes",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "partial",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Direct groups/teams tabs",
        "Google Sheets roster workflow",
        "Quick-entry option without a Flippity account",
        "Fullscreen classroom display",
        "No Flippity server storage of activity data"
      ],
      "cons": [
        "Google Sheets template setup is clunky",
        "Limited to preset group/team sizes",
        "No arbitrary number of teams or group size",
        "Dated interface",
        "No constraints or balancing",
        "No repeat optimization",
        "AdSense and Google Analytics are present",
        "Published spreadsheet links are not truly private"
      ],
      "reviewNote": "Good teacher utility, but review strictly as a group generator: direct Groups/Teams tabs are real, yet limited to fixed presets rather than arbitrary group counts/sizes.",
      "tags": []
    },
    {
      "id": "icebreaker-games-random-group-generator",
      "rank": 131,
      "name": "Icebreaker Games Random Group Generator",
      "url": "https://icebreaker-games.org/random-group-generator",
      "bestFor": "Fast icebreaker groups when copy-only output is enough",
      "summary": "Icebreaker Games Random Group Generator is a basic browser team splitter. It starts with sample participants, accepts pasted names, supports group-count and group-size modes, generates balanced groups, and offers Copy All Groups. It is useful for a one-off icebreaker or classroom shuffle. It has no CSV/PDF export, saved rosters, manual editing, constraints, attributes, repeat avoidance, or quality diagnostics, and the advertising-consent surface is heavy.",
      "pricing": "Free. No account is required. The site shows an advertising consent flow.",
      "overallRating": 2.3,
      "overallComment": "A functional basic splitter, dragged down by limited outputs and a very heavy ad/consent stack.",
      "ratings": {
        "easeOfUse": 4.1,
        "design": 3.1,
        "features": 1.9,
        "outputs": 1.7,
        "privacy": 0.7,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The tool is easy: paste names, choose group count or size, and generate.",
        "design": "Readable and simple enough, though embedded in a large content/SEO site.",
        "features": "Basic random grouping with group-count and group-size modes. No constraints, saved rosters, repeated rounds, attributes, or diagnostics.",
        "outputs": "Copy All Groups exists. There is no CSV, PDF, image, share link, or Zoom-friendly export.",
        "privacy": "Poor for participant names: the tested page loaded Google ads/consent, Microsoft Clarity, Cloudflare analytics, Google Tag Manager, and a consent notice referencing 210 partners and precise geolocation.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random distribution only. Good for one-off teams, not for optimized assignments."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Group-count and group-size modes",
        "Copy all groups",
        "Simple pasted-name workflow"
      ],
      "cons": [
        "No CSV/PDF/export files",
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "No saved roster workflow",
        "Very heavy advertising/consent footprint"
      ],
      "reviewNote": "Review is for the random group generator page, not the broader icebreaker content library.",
      "tags": []
    },
    {
      "id": "openeducat-ai-group-generator",
      "rank": 132,
      "name": "OpenEduCat AI Group Generator",
      "url": "https://openeducat.org/ai/tools/group-generator/",
      "bestFor": "Institutions already evaluating OpenEduCat, not quick public grouping",
      "summary": "OpenEduCat AI Group Generator is presented as a feature inside the broader OpenEduCat education platform, not as a public standalone generator. The page describes roster import or pasted names, grouping by skill/learning style/interest, cooperative roles, group sizes from 2 to 5, hard and soft constraints, no-repeat history, seating arrangement, rationale, and printable/digital role cards. Those are strong claims for group-generation depth, but the page exposes no usable generator form: the calls to action lead to a demo/free-trial flow. Treat it as a gated institutional product claim, not a quick tool you can use immediately.",
      "pricing": "Requires OpenEduCat access/trial. The site advertises a 15-day free trial and modular pricing from $69/year for modules, with cloud or on-premise deployment depending on the plan.",
      "overallRating": 2.3,
      "overallComment": "Potentially powerful on paper, but not independently usable from the public page. The rating stays conservative because the generator is gated behind OpenEduCat access and the claimed AI grouping workflow is not directly verifiable as a standalone tool.",
      "ratings": {
        "easeOfUse": 1.3,
        "design": 3.8,
        "features": 3.0,
        "outputs": 2.8,
        "privacy": 2.2,
        "accountFriction": 1.0,
        "resultQuality": 3.0
      },
      "ratingComments": {
        "easeOfUse": "There is no public generator workflow on the page. A teacher looking for immediate groups has to enter a demo/trial/account path first.",
        "design": "The marketing page is polished and readable, with clear explanations of the claimed workflow.",
        "features": "The advertised feature set is unusually deep: roster import, criteria-based grouping, constraints, no-repeat history, roles, seating arrangement, and rationale. Because it is gated and not directly testable as a standalone tool, these capabilities should be treated cautiously.",
        "outputs": "The page claims printable role cards, digital assignments, seating views, and rationale export, but it does not expose a public result or export workflow.",
        "privacy": "OpenEduCat has a formal privacy policy and institutional cloud/on-premise positioning, but this is an account-based platform for student data. The public page loaded analytics/chat/product-tracking infrastructure including Google Tag Manager/Analytics/DoubleClick, PostHog, Cloudflare Insights, and Tawk.",
        "accountFriction": "No public generator is available without entering the OpenEduCat demo/trial/account flow.",
        "resultQuality": "If the advertised constraints, history, and balancing work as described, result quality could be better than random splitters. The public page does not provide enough access to verify that quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "partial",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "partial",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "partial",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "partial",
        "Result comments": "yes",
        "Result quality diagnostics": "partial",
        "Runs in browser": "partial",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "partial",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Claims constraint-aware grouping",
        "Claims attribute/skill/interest grouping modes",
        "Claims no-repeat grouping history",
        "Claims cooperative role cards and rationale",
        "Institutional platform with cloud/on-premise positioning",
        "Polished explanatory page"
      ],
      "cons": [
        "No public standalone generator form",
        "Requires demo/trial/account path",
        "Advertised AI workflow is not directly verifiable from the page",
        "Likely too heavy for quick one-off grouping",
        "Public page loads analytics/chat/product-tracking services"
      ],
      "reviewNote": "Scope this to the OpenEduCat AI Group Generator page. Do not credit the whole OpenEduCat ERP/LMS platform beyond the grouping claims made for this specific feature. Cap the score until the actual in-product generator can be tested.",
      "tags": [
        "constraints",
        "ai-assisted"
      ]
    },
    {
      "id": "soulatools-random-picker-team-picker",
      "rank": 133,
      "name": "SoulATools Random Picker / Team Picker",
      "url": "https://soulatools.com/random-picker/",
      "bestFor": "Casual team splitting inside a broader random-picker tool",
      "summary": "SoulATools Random Picker includes a Team Splitter mode. Live testing selected Team Splitter, pasted twelve names, set three teams, waited through the countdown, and got three teams of four. It is serviceable for casual use and includes duplicate-handling options from the broader picker. For group generation specifically it is limited: no export/copy controls were verified, no constraints or attributes exist, and the page has Google ad/analytics infrastructure.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.3,
      "overallComment": "Works, but it feels like a picker with a team mode rather than a strong group generator.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 2.4,
        "features": 1.9,
        "outputs": 0.6,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The team mode works, but selecting the right mode and waiting through the countdown adds friction.",
        "design": "Busy WordPress-style tool page with many unrelated navigation links.",
        "features": "Team count and duplicate handling are useful; advanced picker options are mostly irrelevant to group assignment.",
        "outputs": "No copy/download/export control was verified for team results.",
        "privacy": "The page claims browser-based operation, but Google Tag Manager/Analytics and ad-quality scripts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Team Splitter mode works",
        "Line/comma/space separator choices",
        "Duplicate handling controls",
        "Browser-based claim"
      ],
      "cons": [
        "No verified export",
        "Mode-switching friction",
        "Countdown delay",
        "No constraints or attributes",
        "Ad/analytics scripts present"
      ],
      "reviewNote": "Live test generated three teams of four after using Team Splitter mode and a countdown.",
      "tags": []
    },
    {
      "id": "warren-institute-random-groups-generator",
      "rank": 134,
      "name": "Warren Institute Random Groups Generator",
      "url": "https://warreninstitute.org/tools/random-groups-generator.html",
      "bestFor": "Bare-bones classroom/team random grouping",
      "summary": "Warren Institute Random Groups Generator is a working minimal team maker. Live testing confirmed pasted names, number of groups, and visible generated groups. The output is readable and the workflow is fast, but it is about as basic as a generator can be: no constraints, no group-size mode verified, no copy/download/export controls, no saved rosters, no repeat handling, and no diagnostics. Ads and Google-related requests were observed.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 2.3,
      "overallComment": "A functional minimal splitter, useful only for quick one-off random groups.",
      "ratings": {
        "easeOfUse": 3.6,
        "design": 2.2,
        "features": 1.5,
        "outputs": 1.1,
        "privacy": 1.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The small form is easy to use.",
        "design": "Plain informational page with a simple embedded tool.",
        "features": "Basic pasted-name random grouping only.",
        "outputs": "Readable on-page groups; no copy, CSV, TXT, PDF, or image export was verified.",
        "privacy": "Ads, Google funding/ads domains, and remote fonts were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Simple pasted-name workflow",
        "Fast group-count generation",
        "Readable output"
      ],
      "cons": [
        "No constraints",
        "No attribute balancing",
        "No group-size mode verified",
        "No export controls verified",
        "Ad/Google footprint",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated three groups from twelve pasted names.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "applorium-random-group-generator",
      "rank": 135,
      "name": "Applorium Random Group Generator",
      "url": "https://applorium.com/blog/random-group-generator/",
      "bestFor": "One-off random teams on a quiet, low-friction blog page",
      "summary": "Applorium Random Group Generator is a tiny embedded tool on a blog post. Enter the number of teams, paste names one per line, click Go, and it prints Team 1, Team 2, and so on. That is basically the whole product: no group-size mode, no constraints, no balancing, no roster storage, and no useful export surface beyond manually copying the page text.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.2,
      "overallComment": "A clean, low-noise basic splitter. Better privacy and less clutter than many randomizer pages, but the grouping feature set is almost nonexistent.",
      "ratings": {
        "easeOfUse": 4.8,
        "design": 2.7,
        "features": 1.0,
        "outputs": 1.0,
        "privacy": 3.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "It would be hard to make this simpler: number of teams, names, Go.",
        "design": "Plain blog-page design. Not polished, but readable and much less annoying than ad-heavy randomizer pages.",
        "features": "Only a number-of-teams random split. No group-size mode, constraints, balancing, leaders, imports, saved lists, or diagnostics.",
        "outputs": "Results are displayed on the page only. No copy button, CSV, PDF, print layout, or share link.",
        "privacy": "Better than most generic utilities: no account, no observed ad stack, and only Plausible plus first-party scripts on the tool page. The site privacy page describes analytics cookies and Google Analytics language.",
        "accountFriction": "No signup, no login, no install.",
        "resultQuality": "Plain random grouping with even distribution. Fine for trivial one-off splits, nothing more."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Very easy to use",
        "Low page clutter",
        "No heavy ad-tech observed",
        "Works for quick one-off random teams"
      ],
      "cons": [
        "Number-of-teams mode only",
        "No copy/export/download controls",
        "No constraints or balancing",
        "No saved roster or history",
        "No diagnostics",
        "Very thin compared with real group planners"
      ],
      "reviewNote": "Review the blog-post generator itself, not Applorium’s unrelated app catalog.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "flexos-random-group-generator",
      "rank": 136,
      "name": "FlexOS Random Group Generator",
      "url": "https://www.flexos.work/tools/random-group-generator-easy-fast-team-sorting",
      "bestFor": "Tiny comma-separated team splits on a future-of-work blog page",
      "summary": "FlexOS Random Group Generator is a small embedded tool in a blog/article page. Enter comma-separated team members, choose number of groups and number of facilitators, and it displays groups. It worked for a simple 9-name, 3-group split, but it has no copy/export controls, no group-size mode, no constraints, no balancing, and no saved roster. The facilitator count is a small niche option, not a real optimization feature.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.2,
      "overallComment": "A working but thin embedded widget. The facilitator field is mildly interesting; everything else is basic random splitting.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.0,
        "features": 1.7,
        "outputs": 1.0,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Easy enough, though comma-separated entry is less convenient than one-name-per-line paste from a spreadsheet.",
        "design": "The widget is clean, but it is embedded in a content-marketing page with article/navigation noise.",
        "features": "Very limited: comma-separated members, group count, and facilitator count. No constraints, imports, exports, balancing, repeats, or diagnostics.",
        "outputs": "Page display only. No copy, CSV, print, share, or saved result history.",
        "privacy": "Poor. The page loads Google Tag Manager, Microsoft Clarity, Facebook pixel, and other marketing scripts.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping. Facilitator count does not make it a high-quality assignment engine."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "partial",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Simple group-count workflow",
        "Facilitator count field",
        "Clean embedded widget",
        "Works for quick one-off groups"
      ],
      "cons": [
        "Comma-separated input only",
        "No copy/download/export",
        "No constraints or balancing",
        "No saved roster/history",
        "No repeat optimization",
        "Heavy marketing analytics/tracking"
      ],
      "reviewNote": "Scope this to the embedded Random Group Generator widget, not FlexOS’s broader future-of-work content site.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "groupgenerator-top",
      "rank": 137,
      "name": "GroupGenerator.top",
      "url": "https://www.groupgenerator.top/",
      "bestFor": "Trying a simple random split with experimental AI-style instructions",
      "summary": "GroupGenerator.top presents itself as an AI smart grouping tool: paste members, choose random matching or describe grouping requirements, generate, then use fullscreen/export. The random matching mode works like a basic random splitter, and the AI idea is interesting. The problem is that the AI matching did not reliably follow the instructions given to it, and the site gives no clear privacy explanation for what happens to pasted names in the AI workflow.",
      "pricing": "Free web tool. No account requirement was visible.",
      "overallRating": 2.2,
      "overallComment": "The premise is interesting and the random mode works, but the AI matching is not trustworthy enough to rate it like a real constraint-aware generator.",
      "ratings": {
        "easeOfUse": 4.7,
        "design": 3.2,
        "features": 1.5,
        "outputs": 1.5,
        "privacy": 1.2,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The UI is simple and the random matching mode is easy to use. The AI mode is less clear because it can ignore the grouping instructions.",
        "design": "Modern and clean visually.",
        "features": "Has basic random matching plus an interesting AI smart-grouping concept and fullscreen/export controls. The AI instructions are not reliable enough to count as real constraint support.",
        "outputs": "Fullscreen/export controls exist, but the output surface is light compared with tools that provide CSV, copy, share links, or structured exports.",
        "privacy": "Poor. It appears to include an AI grouping workflow, loads Google Tag Manager, and gives no clear roster-specific data handling explanation.",
        "accountFriction": "No account required was visible.",
        "resultQuality": "Random group generation worked like a normal basic splitter. The AI smart grouper is the weak point: it generated groups but ignored the instructions given to it."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Modern-looking UI",
        "No visible account requirement",
        "Random matching mode works",
        "Fullscreen and export controls",
        "Interesting natural-language grouping idea"
      ],
      "cons": [
        "AI matching ignored instructions",
        "No clear privacy policy for AI processing",
        "No verified real constraints or balancing",
        "Google Tag Manager present",
        "Output/export surface is light"
      ],
      "reviewNote": "Do not treat the AI prompt box as verified constraint support. Random matching works; AI matching is interesting but instruction-following was weak.",
      "tags": [
        "basic-randomizer",
        "ai-assisted"
      ]
    },
    {
      "id": "homeschool-of-1-random-team-generator",
      "rank": 138,
      "name": "Homeschool of 1 Random Team Generator",
      "url": "https://www.homeschoolof1.com/random-team-generator/",
      "bestFor": "Embedded classroom/homeschool team splitter inside an ad-heavy article",
      "summary": "Homeschool of 1 Random Team Generator is a real embedded team generator inside a long homeschool article. Targeted browser testing confirmed that the underlying tool can generate groups from pasted student names, with group count, label, reroll, copy results, and reset controls. The normal page experience is heavily affected by consent/ad overlays and article clutter, and automated clicks were flaky until targeting the generator controls directly. It is useful if you are already on the article, but weak as a standalone group-generation product.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 2.2,
      "overallComment": "A working embedded classroom splitter buried in a cluttered, ad-heavy article page.",
      "ratings": {
        "easeOfUse": 2.4,
        "design": 1.8,
        "features": 2.0,
        "outputs": 2.0,
        "privacy": 0.8,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The embedded form is understandable, but consent/ad overlays and page clutter interfere.",
        "design": "The generator itself is small and simple; the surrounding article page dominates the experience.",
        "features": "Group count, label, reroll, copy, and reset are useful basic features.",
        "outputs": "Copy Results is available; no file export was verified.",
        "privacy": "Raptive/AdThrive, consent manager, Clarity, Google analytics/tag manager, Slickstream, and related hosts were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic random balanced groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted student names",
        "Group count control",
        "Custom group label",
        "Reroll",
        "Copy results"
      ],
      "cons": [
        "Ad/consent overlays",
        "Long article clutter",
        "Flaky automated click behavior",
        "No constraints",
        "No attribute balancing",
        "No file export verified"
      ],
      "reviewNote": "Direct #tg-generate click produced group HTML; general headless click flow was flaky and screenshots showed consent overlay. Heavy third-party ad/analytics footprint observed.",
      "tags": []
    },
    {
      "id": "miniwebtool-random-group-generator",
      "rank": 139,
      "name": "MiniWebTool Random Group Generator",
      "url": "https://miniwebtool.com/random-group-generator/",
      "bestFor": "Fast basic web groups with arbitrary group size or team count",
      "summary": "MiniWebTool Random Team Generator is a simple browser-based group splitter. It can create groups either by members per group or by number of groups, saves the entered list locally, and has one-click copy. That makes it a real basic group generator, but not a serious optimizer.",
      "pricing": "Free, ad-supported web tool with an anti-adblock/premium upsell popup. Premium is positioned as ad-free and faster; the related developer API starts free with credits and paid tiers.",
      "overallRating": 2.2,
      "overallComment": "A decent simple splitter, but the ad-supported/anti-adblock page environment drags it down. It is only in the basic-random-generator tier because it has no real grouping rules.",
      "ratings": {
        "easeOfUse": 5.0,
        "design": 2.7,
        "features": 2.0,
        "outputs": 2.0,
        "privacy": 2.0,
        "accountFriction": 4.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste one name per line, choose group size or number of groups, generate, copy. This deserves the same easy-workflow score as other obvious basic splitters.",
        "design": "The generated group cards are readable, but the page is a generic ad-supported utility page and the anti-adblock premium popup is intrusive. Not terrible, but clearly worse than the clean basic tools.",
        "features": "Basic group-generation feature depth. It supports arbitrary members-per-group or number-of-groups modes, balanced size distribution, local saved input, copy buttons, and an API. That is better than preset-only tools, but only earns about a 2 because there are no constraints, attributes, custom per-group capacities, multi-session planning, repeat optimization, or diagnostics.",
        "outputs": "Copy buttons are useful, but this is a basic output surface. The consumer page does not provide CSV, Excel, Zoom export, share links, printable/PDF output, or persistent result history.",
        "privacy": "The tool page says names are stored only in browser local storage, which is good for roster privacy. The surrounding site is much less clean: ads, Google Analytics/Tag Manager, DoubleClick/AdSense-style advertising, Cloudflare analytics, and an anti-adblock popup pushing allowlisting or Premium.",
        "accountFriction": "No account is needed for the web tool, which is good. The anti-adblock popup adds real access friction by asking users to allowlist the site or upgrade to Premium before continuing.",
        "resultQuality": "Standard one-off random grouping with even-ish group sizes. Consistent with the other plain random splitters: useful for a quick split, but no balancing, constraints, repeat reduction, or quality diagnostics."
      },
      "features": {
        "API/programmatic access": "yes",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "yes",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "partial",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Supports group size or number of groups",
        "Very easy paste-and-generate workflow",
        "One-click copy for groups",
        "Saves input locally in browser",
        "Developer API exists"
      ],
      "cons": [
        "No constraints or balancing",
        "No multi-session repeat optimization",
        "No CSV/Excel/Zoom export on consumer page",
        "Ad-supported page with tracking/analytics",
        "Anti-adblock/premium popup is intrusive",
        "Generic utility-site feel"
      ],
      "reviewNote": "Consistency anchor: treat MiniWebTool as a plain random splitter with arbitrary group size/count. The anti-adblock popup should count against design/privacy/pricing, not feature depth.",
      "tags": []
    },
    {
      "id": "online-stopwatch-random-magic-hat-group-generator",
      "rank": 140,
      "name": "Online Stopwatch Random Magic Hat Group Generator",
      "url": "https://www.online-stopwatch.com/random-group-generators/random-magic-hat-group-generator/",
      "bestFor": "Classroom display novelty when animated sorting matters more than features",
      "summary": "Online Stopwatch Random Magic Hat Group Generator is a themed animation wrapper around a basic random group generator. The appeal is presentation: names get placed into groups by a magic-hat animation, with fullscreen and premium/ad-free hooks. As a group generator, it is thin: enter names, choose group count, watch the animation. The surrounding Online Stopwatch page is extremely ad-heavy and tracker-heavy.",
      "pricing": "Free with ads. Premium/ad-free and saved-name convenience are promoted by the site.",
      "overallRating": 2.2,
      "overallComment": "Fun classroom theater, weak group-generation product. The ad-tech load is severe.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.4,
        "features": 1.6,
        "outputs": 1.3,
        "privacy": 1.0,
        "accountFriction": 4.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The concept is simple, but the generator is embedded in a cluttered, ad-heavy page and animation adds friction if you just need results.",
        "design": "The magic-hat theme is fun for a classroom screen, but the surrounding page is messy and dated.",
        "features": "Basic animated random grouping only. Premium can save names, but there are no constraints, balancing, imports, exports, repeats, or diagnostics.",
        "outputs": "Mostly visual/on-screen. Fullscreen helps presentation; there is no serious copy/CSV/export workflow.",
        "privacy": "Terrible for student rosters. The page loads a large ad stack with Google ads, Amazon ads, prebid, Funding Choices, and multiple tracking/storage identifiers.",
        "accountFriction": "The basic generator is free, but saved names/ad-free convenience pushes toward premium.",
        "resultQuality": "Plain random grouping. The animation does not improve assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Fun magic-hat animation",
        "Fullscreen option",
        "No account needed for basic use",
        "Good for projecting a reveal",
        "Premium can save names"
      ],
      "cons": [
        "Very ad-heavy",
        "Poor privacy for student names",
        "No copy/download/export",
        "No constraints or balancing",
        "No repeat optimization",
        "Animation slows down simple work"
      ],
      "reviewNote": "Treat this as an animated classroom randomizer, not as a planning tool.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "pickja-random-group-generator",
      "rank": 141,
      "name": "PickJa Random Group Generator",
      "url": "https://pickja.com/tools/random-group-generator",
      "bestFor": "Quick no-account random groups with group-count or members-per-group mode",
      "summary": "PickJa Random Group Generator is a clean, basic splitter on PickJa’s randomizer site. Paste one name per line, choose either number of groups or members per group, and it displays balanced random groups with member counts. The tool itself is easy and useful for one-off grouping, but there are no copy/export controls, no constraints, no saved rosters, no repeat planning, and the page is wrapped in heavy advertising/consent infrastructure.",
      "pricing": "Free web tool. No account required for the generator; sign-in exists for the broader PickJa site.",
      "overallRating": 2.2,
      "overallComment": "A pleasant basic splitter, but shallow. It gains points for dual mode and readable output, then loses them on missing exports and severe ad-tech privacy posture.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 3.4,
        "features": 2.0,
        "outputs": 1.0,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Straightforward one-name-per-line paste flow with group-count and members-per-group modes. The consent banner is intrusive, but the core tool is easy once reachable.",
        "design": "Modern, readable, and cleaner than many randomizer pages. The surrounding navigation, ads/consent layer, and long SEO content keep it from feeling polished.",
        "features": "Basic splitter feature depth: paste names, choose number of groups or members per group, preview counts, and regenerate. No constraints, balancing attributes, imports, saved rosters, repeats, or diagnostics beyond counts.",
        "outputs": "Page display only. No copy button, CSV/spreadsheet export, print/PDF/image export, share link, or saved result history.",
        "privacy": "Poor. The tool page loads Google ad/analytics infrastructure and shows a consent prompt referencing 210 partners, device storage/access, personalized ads/content measurement, and precise geolocation. The policy also covers account/share data and Google Analytics. Not appropriate for sensitive rosters.",
        "accountFriction": "The generator works without an account. Sign-in is present for the broader PickJa site but not required for this workflow.",
        "resultQuality": "Normal random split quality. It balances group sizes evenly, but has no constraints, repeat minimization, seeded reproducibility, or quality diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very easy paste-and-generate workflow",
        "Supports number-of-groups mode",
        "Supports members-per-group mode",
        "Readable color-coded group cards",
        "No account required"
      ],
      "cons": [
        "No copy/download/export controls",
        "No constraints or balancing attributes",
        "No saved roster or result history",
        "No repeat optimization",
        "Heavy ad-tech consent banner and tracking environment"
      ],
      "reviewNote": "Review the specific random group generator page, not PickJa’s broader randomizer/list product.",
      "tags": []
    },
    {
      "id": "random-group-generator-chrome-extension",
      "rank": 142,
      "name": "Random Group Generator Chrome Extension",
      "url": "https://chromewebstore.google.com/detail/random-group-generator/njpbladpjfebkonnclifnjapepbigmbg?hl=en",
      "bestFor": "Chrome users who want a tiny local random-group popup",
      "summary": "Random Group Generator is a Chrome extension, not a normal web app. The listing describes a simple popup workflow: enter one name per line, choose the number of groups, click Generate, view labeled groups, and clear the saved list. It persists the entered names in browser local storage and the Chrome Web Store disclosure says the developer does not collect or use user data. I could inspect the listing with Playwright, but did not install/run the extension itself in the browser session.",
      "pricing": "Free Chrome extension. No account advertised, but it requires installing a browser extension.",
      "overallRating": 2.2,
      "overallComment": "A basic random splitter packaged as a Chrome extension. The local-data posture is good, but the grouping feature set is very thin and installation is unnecessary friction for most users.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 3.0,
        "features": 1.6,
        "outputs": 1.4,
        "privacy": 4.2,
        "accountFriction": 3.2,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The described workflow is simple, but needing to install a Chrome extension just to split groups is extra friction compared with a web page.",
        "design": "Only the Chrome Web Store listing and screenshots were available here. It appears to be a small functional popup, not a polished planning interface.",
        "features": "Very basic: one-name-per-line input, number of groups, random generation, clear, and local-storage persistence. No group-size mode, constraints, balancing, imports, exports, repeats, or diagnostics.",
        "outputs": "Weak. The listing mentions on-screen labeled groups only. No copy, CSV, print, share, or spreadsheet export is advertised.",
        "privacy": "Strong on paper for a simple tool: the Chrome Web Store disclosure says the developer does not collect or use data, and names are saved locally in browser storage. This is a small extension from a non-trader developer, so trust depends on installing extension code.",
        "accountFriction": "No account advertised, but extension installation is a real barrier compared with no-install web tools.",
        "resultQuality": "Plain random grouping only. Local storage and extension packaging do not improve assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Simple Chrome extension workflow",
        "No account advertised",
        "Names stored locally in browser storage",
        "Chrome Web Store disclosure says no data collection",
        "Clear button for stored names"
      ],
      "cons": [
        "Requires installing an extension",
        "Random-only grouping",
        "No group-size mode advertised",
        "No copy/download/export advertised",
        "No constraints or balancing",
        "Tiny unknown/non-trader developer surface"
      ],
      "reviewNote": "Playwright inspected the Chrome Web Store listing after rejecting Google consent. Extension itself was not installed/tested; review should stay scoped to advertised/listing behavior.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "randomlists-random-team-generator",
      "rank": 143,
      "name": "RandomLists Random Team Generator",
      "url": "https://www.randomlists.com/team-generator",
      "bestFor": "Simple random teams from a pasted list",
      "summary": "RandomLists is a straightforward random team splitter. It looks much cleaner than ClassTools and does the basic job quickly: paste names, choose group count, randomize, edit, rerun, and share URL state. It is only a randomizer with very little control, and shared links put the entered names directly in the URL.",
      "pricing": "Free, ad-supported web tool. No paid group-generation tier is needed, but the cost is heavy ad/consent friction and a very basic feature set.",
      "overallRating": 2.2,
      "overallComment": "Better than ClassTools, but just a basic random splitter with bad privacy. Its search visibility is much stronger than the product deserves.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 3.2,
        "features": 1.8,
        "outputs": 2.1,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Simple enough, but the Edit Settings flow plus consent/ad clutter keeps it from being a true 5/5.",
        "design": "Fairly clean and modern compared with ClassTools, though a generic ad-supported utility site.",
        "features": "It has paste names, arbitrary group count, rerun, edit settings, and URL state. No real grouping intelligence.",
        "outputs": "Shareable URL state is useful, but it exposes entered names in the query string and there is no CSV, PDF, print, spreadsheet, or Zoom-friendly export.",
        "privacy": "Bad for anything sensitive. The consent banner mentions personal data sharing with 210 partners, precise geolocation, ad personalization, and device storage. The privacy policy also says information may be shared or sold for marketing. Shared links include the entered names directly in the URL.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping only. Fine for a quick one-off split, but no balancing, constraints, repeat reduction, or diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Easy to use",
        "Cleaner than ClassTools",
        "Paste names",
        "Arbitrary group count",
        "Rerun shuffle",
        "Shareable URL state",
        "No account required"
      ],
      "cons": [
        "No advanced rules",
        "No real balancing or constraints",
        "No useful export formats",
        "Bad privacy/ad-consent setup",
        "Shared URLs expose entered names",
        "Ranks better in search engines than it deserves"
      ],
      "reviewNote": "Like ClassTools, it undeservedly ranks extremely high for many related searches. The search visibility is much stronger than the actual tool. Generated share URLs include roster names in the query string.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "randomready-random-group-generator",
      "rank": 144,
      "name": "RandomReady Random Group Generator",
      "url": "https://www.randomready.com/random-group-generator/",
      "bestFor": "Very simple random group splits",
      "summary": "RandomReady Random Group Generator is a basic working random splitter. Browser testing generated two groups from pasted names and a number-of-groups value. The page is simple and no-account, but it offers little beyond display output: no constraints, no group-size mode verified, no exports, no copy workflow, no saved lists, no repeat avoidance, and no diagnostics. It is acceptable for a fast one-off split and weak for anything structured.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.2,
      "overallComment": "A working bare-bones splitter with almost no serious group-generation features.",
      "ratings": {
        "easeOfUse": 3.5,
        "design": 2.0,
        "features": 1.4,
        "outputs": 1.0,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Paste names, enter a group count, and click Generate.",
        "design": "Plain blog/tool-page layout.",
        "features": "Only basic random grouping was verified.",
        "outputs": "Display-only output; no strong copy/download/export workflow was verified.",
        "privacy": "No account required; AddToAny/static/font requests were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Pasted names",
        "Simple group-count workflow",
        "Generated groups quickly"
      ],
      "cons": [
        "Very shallow feature set",
        "No constraints",
        "No group-size mode verified",
        "No exports verified",
        "No diagnostics",
        "No repeat avoidance"
      ],
      "reviewNote": "Live browser test generated two groups. Static fetch had returned 403, but browser navigation succeeded.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "ultimatesolver-random-groups",
      "rank": 145,
      "name": "UltimateSolver Random Groups",
      "url": "https://www.ultimatesolver.com/en/random-groups",
      "bestFor": "Privacy-conscious basic random groups with cryptographic server randomness",
      "summary": "UltimateSolver Random Groups is a basic random group generator. It lets users enter names, choose number of groups or people per group, optionally avoid incomplete groups, save name lists in cookies, use fullscreen/animation display, and print/copy the result. The randomization is server-side using PHP random_int(), so names are sent to the server even though the site says input/output data is not stored or shared.",
      "pricing": "Free web tool. No account or payment required.",
      "overallRating": 2.2,
      "overallComment": "A decent basic splitter with unusually explicit randomness documentation and privacy claims, but only basic random grouping and server-side processing.",
      "ratings": {
        "easeOfUse": 4.0,
        "design": 2.8,
        "features": 1.8,
        "outputs": 2.2,
        "privacy": 3.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Straightforward once you find the controls: enter names, choose number of groups or people per group, generate. The page has many surrounding random-generator options, so it is less clean than the best simple splitters.",
        "design": "Functional but dated and busy. It feels like an old calculator/randomizer site, not a focused classroom/grouping product.",
        "features": "Low feature depth. It supports number-of-groups, people-per-group, no-incomplete-groups options, sorting/display options, saved name lists in cookies, fullscreen, and a puzzle/expert-group mode. No balancing, constraints, multi-session planning, repeats, attributes, or diagnostics.",
        "outputs": "Basic output only: on-page result, copy-style output, print-friendly behavior, fullscreen display, and cookie-saved name lists. No CSV/Excel export, share links, Zoom export, or result history.",
        "privacy": "Mixed. The page says SSL is used and input/output data is not stored or shared, and there is a clear GDPR privacy policy. The generator posts names to a server endpoint for random_int() grouping, stores saved name lists in cookies if used, and the broader site privacy policy includes Google Analytics, AdSense, YouTube, VG WORT pixels, and affiliate tracking.",
        "accountFriction": "No account or payment required.",
        "resultQuality": "Standard one-off random grouping. Cryptographically secure random selection is nice, but it does not improve group assignment quality beyond random even-ish splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "partial",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Number of groups or people per group",
        "No account required",
        "Clear randomness documentation",
        "Claims not to store/share input or output",
        "Can save name lists in cookies",
        "Print/fullscreen-style display options"
      ],
      "cons": [
        "Server-side processing sends names to endpoint",
        "No constraints or balancing",
        "No multi-session repeat optimization",
        "No CSV/Excel/Zoom export",
        "Dated busy UI",
        "Broader site includes Analytics/AdSense/tracking components"
      ],
      "reviewNote": "Review the random-groups page specifically. Do not over-credit cryptographic randomness; for group generation quality, it is just a random splitter.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "ileren-groepenmaker",
      "rank": 146,
      "name": "iLeren Groepenmaker",
      "url": "https://ileren.be/apps/groepenmaker/index.html",
      "bestFor": "Dutch-speaking teachers who need a tiny no-account classroom splitter",
      "summary": "iLeren Groepenmaker is a bare Dutch classroom group maker. Paste names, choose either people per group or number of groups, enter the number, and click Maak groepen. It produces simple on-page groups. There are no ads or third-party scripts on the tool page, which is a real privacy plus, but there is also no export, copy, saved roster, balancing, constraints, or polish.",
      "pricing": "Free. No account required.",
      "overallRating": 2.1,
      "overallComment": "A bare but honest classroom splitter. Very limited, but cleaner and more private than many ad-stuffed randomizer pages.",
      "ratings": {
        "easeOfUse": 4.1,
        "design": 1.7,
        "features": 1.8,
        "outputs": 1.0,
        "privacy": 4.7,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Easy if you read Dutch: paste names, choose people-per-group or number-of-groups, generate.",
        "design": "Extremely plain Bootstrap-style utility page. Functional but visually primitive.",
        "features": "Only the two basic split modes. No constraints, attributes, leaders, repeat handling, saved rosters, or diagnostics.",
        "outputs": "On-page results only. No copy, download, CSV, print, share, or saved history.",
        "privacy": "Strong for this category. The tool page has no obvious tracking scripts, ads, cookies, or local storage.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with basic size handling. No quality controls beyond splitting people."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "No obvious trackers or ads on the tool page",
        "Paste names textarea",
        "People-per-group or number-of-groups mode",
        "Very simple"
      ],
      "cons": [
        "Dutch-only UI",
        "No copy/download/export",
        "No constraints or balancing",
        "No saved rosters/history",
        "Very plain design",
        "Random-only results"
      ],
      "reviewNote": "Dutch-language tool; review should not inflate it based on the broader iLeren edutools directory.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "mega-seating-plan-free-random-group-maker",
      "rank": 147,
      "name": "Mega Seating Plan Free Random Group Maker",
      "url": "https://www.seatingplan.com/tools/groupmaker",
      "bestFor": "Teachers who already use Seating Plan class lists",
      "summary": "This review is about Seating Plan's free Random Group Maker, not the full Seating Plan product or its paid Smart Group Maker. The free tool works as a very basic classroom randomizer: paste student names, choose number of groups or students per group, and generate. It is easy, but there is almost nothing beyond the random split.",
      "pricing": "Free basic random group maker. The broader Mega Seating Plan product has paid plan context, but this specific simple group-maker page is free and does not expose paid grouping controls.",
      "overallRating": 2.1,
      "overallComment": "A working classroom random splitter with two basic split modes, but no useful export controls and a surprisingly weak privacy posture for such a small tool.",
      "ratings": {
        "easeOfUse": 4.7,
        "design": 2.8,
        "features": 1.8,
        "outputs": 1.0,
        "privacy": 1.8,
        "accountFriction": 4.8,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very easy: paste names, choose number of groups or students per group, and click make groups. The surrounding sign-in/class-list pitch keeps it slightly below the cleanest tools.",
        "design": "The actual widget is clear enough, but the page around it is cluttered with navigation, sign-in prompts, and long SEO copy.",
        "features": "Basic but not completely empty: it supports splitting by number of groups or students per group, plus account-gated class-list use. There are no real grouping rules, constraints, repeat controls, or multi-round options in the free tool.",
        "outputs": "Very weak. Results appear on the page, but no obvious CSV, copy, print, PDF, download, or share workflow was available in the free tool.",
        "privacy": "Weak for a simple pasted-name tool. The page loads analytics/marketing scripts and sets Google Analytics/Brevo-style cookies, and Seating Plan’s privacy notice explicitly lists session recording, mouse events, form interactions, file/link clicks, and other analytics data.",
        "accountFriction": "No account required for pasted names. Sign-in is pushed for class lists and the smarter product, so it is not quite friction-free.",
        "resultQuality": "Random balanced groups only. Fine for a one-off split, but no constraints, repeat reduction, attribute balancing, or diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Very easy to use",
        "Teacher-focused",
        "Supports number of groups or students per group",
        "Can use saved class lists if signed in"
      ],
      "cons": [
        "No useful export options",
        "Extremely basic free tool",
        "Smarter grouping is a separate product feature",
        "Weak analytics/session-recording privacy posture"
      ],
      "reviewNote": "Important: this review is about the free Random Group Maker page, not the full Seating Plan product or the Smart Group Maker.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "microapp-team-generator",
      "rank": 148,
      "name": "Microapp Team Generator",
      "url": "https://microapp.io/team-generator/",
      "bestFor": "A minimal team split if you tolerate the consent wall",
      "summary": "Microapp Team Generator is a very simple random splitter inside a large utility-site shell. After dismissing or accepting the consent overlay, the tool accepts one name per line, a number of teams, and generates balanced Team 1/Team 2 style output. It does not expose export buttons, copy output, group-size mode in the tested UI, constraints, attributes, repeat handling, saved rosters, or diagnostics. The surrounding site includes login/signup, ratings, ads, and a large consent-vendor surface.",
      "pricing": "Free. The generator itself did not require an account, though the site has sign-in and membership surfaces.",
      "overallRating": 2.1,
      "overallComment": "It works as a bare random splitter, but the feature set is tiny and the consent/ad surface is bad.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 2.7,
        "features": 1.2,
        "outputs": 0.8,
        "privacy": 0.8,
        "accountFriction": 4.6,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The actual form is simple, but the consent overlay can block interaction until handled.",
        "design": "The generated teams are clear. The tool is surrounded by utility-site navigation, membership prompts, and review/sign-in areas.",
        "features": "Pasted names plus number-of-teams generation only in the tested UI. No meaningful group-generation controls beyond that.",
        "outputs": "Generated teams are displayed on the page. No visible copy, CSV, PDF, share, or export workflow appeared in testing.",
        "privacy": "Bad fit for sensitive rosters: Google ads/consent, Plausible, Supabase/auth endpoints, and hundreds of consent-vendor entries were present.",
        "accountFriction": "No account was needed to generate teams, but login/signup/membership prompts are prominent around the tool.",
        "resultQuality": "Plain balanced random groups. No optimization or constraints."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required for generation",
        "Simple pasted-name workflow",
        "Balanced random team output"
      ],
      "cons": [
        "No export or copy button found",
        "No constraints or attribute balancing",
        "No repeat avoidance",
        "Consent overlay can block the tool",
        "Heavy ad/vendor surface"
      ],
      "reviewNote": "Tested after clearing the consent overlay; the overlay otherwise intercepted clicks on the generator.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "my2lbox-random-group-generator",
      "rank": 149,
      "name": "My2lbox Random Group Generator",
      "url": "https://my2lbox.com/en/random-group-generator",
      "bestFor": "Tiny random or level-weighted groups when privacy/ad-tech tradeoffs are acceptable",
      "summary": "My2lbox Random Group Generator is a small form-based group maker. It can generate random groups or weighted groups by participant level, but the workflow is clunky: participants are entered one-by-one in separate fields, extra rows must be added manually, and results are just displayed on the page. The weighted-by-level option is a real grouping feature, but the tool has almost no export or workflow support.",
      "pricing": "Free. No account required.",
      "overallRating": 2.1,
      "overallComment": "Interesting because it has level-weighted grouping, but the UX, output surface, and privacy/ad-tech situation are weak.",
      "ratings": {
        "easeOfUse": 2.6,
        "design": 2.0,
        "features": 2.2,
        "outputs": 1.1,
        "privacy": 1.4,
        "accountFriction": 5.0,
        "resultQuality": 2.5
      },
      "ratingComments": {
        "easeOfUse": "Not terrible, but clunky. Instead of pasting a normal list, you enter names into separate fields and manually add more participant rows. Weighted mode adds another level-selection step.",
        "design": "Old Bootstrap-style page with ads and awkward layout. The cookie/ad consent layer is intrusive and parts of the surrounding page/content are in French even on the English page.",
        "features": "Above the weakest random splitters because it supports random or weighted grouping by participant level. That is basically it: number of groups, participant names, optional levels. No group-size mode, constraints, leaders, imports, exports, repeats, or diagnostics.",
        "outputs": "Very poor. Results are displayed on the page only. No copy button, CSV/text download, print view, share link, saved history, or spreadsheet-friendly output was visible in testing.",
        "privacy": "Poor. The legal page says data submitted through tools is not tracked, stored, or archived after processing, which is good. The page shows a Google-managed consent dialog mentioning 210 partners, personalized ads/content, audience measurement, device storage/access, and possible precise geolocation, plus multiple Google AdSense/Tag scripts.",
        "accountFriction": "No account required.",
        "resultQuality": "Better than a plain random splitter when weighted-by-level mode is used, because it can spread participant levels. A simple heuristic/form tool with no broader constraints or repeat optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "partial",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Random grouping mode",
        "Weighted grouping by participant level",
        "Simple generated group display",
        "Legal page says tool-submitted data is not retained",
        "Useful for quick level-balanced classroom groups"
      ],
      "cons": [
        "No paste-list textarea; names are entered field by field",
        "No copy/download/export controls",
        "No group-size mode",
        "No constraints or repeat optimization",
        "Intrusive 210-partner Google consent/ad-tech layer",
        "Dated mixed-language UI"
      ],
      "reviewNote": "Playwright test confirmed random grouping from individual participant fields and page-only results. Weighted-by-level is advertised and exposed in the form, but output/export remains weak.",
      "tags": [
        "constraints"
      ]
    },
    {
      "id": "randomteams-net",
      "rank": 150,
      "name": "RandomTeams.net",
      "url": "https://www.randomteams.net/",
      "bestFor": "Very simple team-size splitting with generated funny team names",
      "summary": "RandomTeams.net is a minimal random team generator. Live testing entered twelve comma-separated names, set team size four, and generated three groups with automatically generated silly team names. It is fast and no-account, but limited: it groups by team size rather than rich team-count settings, has no export/copy controls verified, no constraints, no attributes, no repeat handling, no saved rosters, and no diagnostics. The page also has ads and consent scripts.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.1,
      "overallComment": "Works for a quick team-size split, but it is one of the thinner simple randomizers.",
      "ratings": {
        "easeOfUse": 3.0,
        "design": 2.1,
        "features": 1.4,
        "outputs": 0.6,
        "privacy": 1.5,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Comma-separated input and team-size setting worked.",
        "design": "Very plain page with ad slots and novelty team names.",
        "features": "Team-size splitting and automatic silly team names are the main features.",
        "outputs": "No copy/download/export control was verified.",
        "privacy": "Google ads/consent and fonts loaded.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Balanced random teams by team size only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Fast simple workflow",
        "Team-size control",
        "Handles incomplete teams",
        "Automatically generated team names"
      ],
      "cons": [
        "No verified copy/export",
        "No team-count mode verified",
        "No constraints",
        "No attributes",
        "No repeat avoidance",
        "Ads/consent scripts present"
      ],
      "reviewNote": "Live test generated three four-person teams with novelty names.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "repixify-random-team-generator",
      "rank": 151,
      "name": "Repixify Random Team Generator",
      "url": "https://www.repixify.com/tools/random-team-generator",
      "bestFor": "Users who specifically want leader markers and custom team names and do not care about ad-tech",
      "summary": "Repixify Random Team Generator promises more than a bare splitter: number-of-teams or participants-per-team modes, custom team names, a $ prefix to mark leaders, and a Copy All Teams button. On the actual page, the form is more brittle than it should be and can get stuck in the configuration state instead of showing results. Even if the promised controls work reliably for some users, this is a random splitter with no hard constraints, no balancing logic beyond team sizes/leaders, and no serious export surface.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.1,
      "overallComment": "Interesting leader/team-name ideas, but the tool is clunky and the privacy footprint is ugly. Not a strong recommendation.",
      "ratings": {
        "easeOfUse": 2.3,
        "design": 2.6,
        "features": 2.3,
        "outputs": 2.0,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The visible flow is more fragile than a simple random team generator should be. The number/team-name controls add friction instead of clarity.",
        "design": "Modern enough visually, but surrounded by a generic tool-site layout, cookie prompt, and lots of related-tool clutter.",
        "features": "Leader markers, custom team names, and two split modes are real features. There are no constraints, balancing categories, imports, history, or repeat optimization.",
        "outputs": "The page describes a Copy All Teams button, but no CSV, PDF, image, or spreadsheet export. Output depth is low.",
        "privacy": "Very poor. The page uses a CMP/ad stack with Mediavine/Journey-style scripts, consent storage, cookies, and a policy that explicitly discusses Google ad cookies and third-party ad servers.",
        "accountFriction": "No account required for the generator.",
        "resultQuality": "Random-only. Leader markers may distribute marked leaders, but there is no evidence of broader assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "yes",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "yes",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Paste names textarea",
        "Number-of-teams and participants-per-team modes claimed",
        "$ leader marker syntax",
        "Custom team names",
        "Copy-all output claimed"
      ],
      "cons": [
        "Brittle form behavior",
        "Heavy ad-tech and cookie footprint",
        "No real constraints or balancing",
        "No CSV/PDF/spreadsheet export",
        "No saved rosters/history",
        "Generic content-farm feel"
      ],
      "reviewNote": "Do not credit Repixify’s general AI/text-tool catalog; only the random team generator matters here.",
      "tags": []
    },
    {
      "id": "1minusbeta-name-group-generator",
      "rank": 152,
      "name": "1minusbeta Name Group Generator",
      "url": "https://1minusbeta.com/name-group-generator",
      "bestFor": "Ultra-minimal name grouping",
      "summary": "1minusbeta Name Group Generator is an extremely minimal working group splitter. Live testing confirmed pasted names, max-names-per-group, number-of-groups input, and generated group text. The whole page is essentially just the form and output. That makes it fast and privacy-light, but it has no polish, no copy/export controls, no constraints, no saved lists, no repeat handling, and no diagnostics.",
      "pricing": "Free. No account is required.",
      "overallRating": 2.0,
      "overallComment": "It works, but it is a bare form with almost no product surface beyond random grouping.",
      "ratings": {
        "easeOfUse": 3.2,
        "design": 1.2,
        "features": 1.3,
        "outputs": 0.8,
        "privacy": 4.8,
        "accountFriction": 5.0,
        "resultQuality": 1.9
      },
      "ratingComments": {
        "easeOfUse": "Simple enough, though the two numeric fields can be ambiguous.",
        "design": "Almost no visual design.",
        "features": "Basic group count/max names per group only.",
        "outputs": "Plain text output; no copy or export control was verified.",
        "privacy": "Only 1minusbeta.com was observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "Basic random groups only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Very fast page",
        "Pasted names",
        "Max names per group",
        "Number of groups",
        "Light observed third-party footprint"
      ],
      "cons": [
        "Bare UI",
        "Ambiguous controls",
        "No copy/export controls",
        "No constraints",
        "No repeat avoidance",
        "No diagnostics"
      ],
      "reviewNote": "Live test generated three groups from twelve pasted names. Observed only first-party host requests.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "breno-design-group-generator",
      "rank": 153,
      "name": "Breno Design Group Generator",
      "url": "https://www.breno.design/design-tool/group-generator",
      "bestFor": "Small rosters where you want to click-select names and make quick visual groups",
      "summary": "Breno Design Group Generator is a small visual tool on a designer portfolio site. You add members one at a time, select names with checkboxes, choose the number of groups with a slider, and generate groups. It also has Shuffle, Deselect All, and Select Random Member controls. It is nicer-looking than many bare utilities, but it is inefficient for real rosters and has no paste/import/export workflow.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.0,
      "overallComment": "A cute but shallow random grouping widget. The one-at-a-time input makes it worse than many uglier but faster splitters.",
      "ratings": {
        "easeOfUse": 2.6,
        "design": 3.4,
        "features": 1.5,
        "outputs": 1.0,
        "privacy": 2.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Adding names one by one and selecting checkboxes is tolerable for tiny lists and bad for classrooms or workshops. Paste support is the missing basic feature.",
        "design": "Visually cleaner and more playful than most randomizer pages, as expected from a portfolio site.",
        "features": "Basic grouping only: add members, select/deselect, shuffle, select random member, choose number of groups, generate. No constraints, attributes, imports, exports, saved rosters, or diagnostics.",
        "outputs": "Page display only. No copy button, CSV, print, image/PDF export, share link, or saved result history.",
        "privacy": "No account required, but there is no clear privacy page for the tool and the site loads Google Tag Manager, Microsoft Clarity, reCAPTCHA, Webflow, and other third-party scripts.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping. The select/shuffle UI does not improve assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "partial",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Attractive visual widget",
        "No account required",
        "Can select/deselect participants",
        "Shuffle control",
        "Select random member option",
        "Group count slider"
      ],
      "cons": [
        "No paste-a-list input",
        "Names must be added one at a time",
        "No copy/download/export",
        "No constraints or balancing",
        "No saved roster/history",
        "Google Tag Manager, Microsoft Clarity, and reCAPTCHA scripts"
      ],
      "reviewNote": "Review the specific design-tool widget, not Breno Garret’s broader design services portfolio.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "calculate-co-nz-random-team-generator",
      "rank": 154,
      "name": "Calculate.co.nz Random Team Generator",
      "url": "https://www.calculate.co.nz/random-team-generator.php",
      "bestFor": "One-off random teams when page-only output is enough",
      "summary": "Calculate.co.nz Random Team Generator is a plain utility on a New Zealand calculator site. Paste names, enter the number of teams, and it outputs Team 1, Team 2, and so on. It says it can handle up to 10,000 names, but it also sorts names alphabetically inside teams after assignment, which makes the result look less like a shuffled roster. There are no export controls, no group-size mode, and no real group-planning features.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.0,
      "overallComment": "Usable for a quick split, but very basic and output-poor. It belongs near the bottom of the simple random splitter tier.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 2.1,
        "features": 1.2,
        "outputs": 1.0,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 1.8
      },
      "ratingComments": {
        "easeOfUse": "Simple enough: paste names, enter number of teams, generate. The surrounding calculator-site navigation is more clutter than the tool needs.",
        "design": "Old-fashioned calculator-page design. Functional, but not especially pleasant or focused.",
        "features": "Just number of teams and a textarea. No group-size mode, constraints, attributes, leaders, saved rosters, repeats, or diagnostics.",
        "outputs": "On-page results only. No copy button, CSV, spreadsheet export, print view, share link, or saved result history.",
        "privacy": "No account required, but the page loads Google Tag Manager/Analytics and other third-party scripts. There is no strong roster-specific privacy posture on the tool page.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random assignment, then names are sorted alphabetically inside each team. That is fine for a trivial split, but it adds no assignment-quality value."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Paste names textarea",
        "Simple number-of-teams workflow",
        "Can handle large pasted lists according to the page"
      ],
      "cons": [
        "No copy/download/export",
        "No group-size mode",
        "No constraints or balancing",
        "No saved roster/history",
        "Dated page design",
        "Google analytics/tag scripts present"
      ],
      "reviewNote": "This is a small calculator-site utility, not a dedicated group assignment product.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "randomcount-team-generator",
      "rank": 155,
      "name": "RandomCount Team Generator",
      "url": "https://randomcount.in/teamgenerator",
      "bestFor": "Tiny groups where adding names one at a time is acceptable",
      "summary": "RandomCount Team Generator is a basic member-per-team splitter. Add each member one at a time, set members per team, and generate. It eventually produces simple Team 1/Team 2/Team 3 results, but there is no paste-a-roster textarea, no copy/export, no group-count mode, no constraints, no saved roster, and no meaningful diagnostics.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 2.0,
      "overallComment": "A working but weak random splitter. The one-at-a-time name entry alone makes it worse than most basic paste-and-generate tools.",
      "ratings": {
        "easeOfUse": 2.8,
        "design": 2.5,
        "features": 1.0,
        "outputs": 1.0,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Adding members one by one is tedious compared with pasting a class list. The rest is simple enough.",
        "design": "Plain Bootstrap-style utility page. Usable, but not polished.",
        "features": "Only add/remove members and members-per-team random splitting. No paste import, group-count mode, constraints, balancing, saved lists, or diagnostics.",
        "outputs": "Results display on the page only. No copy, CSV, PDF, share, or print-focused output.",
        "privacy": "The footer privacy policy is easy to find and it discloses Google Analytics/AdSense, location-derived information, generated-data language, and legal/service-provider sharing. The tool page also set Google Analytics cookies. Lighter than many ad-tech pages, but not ideal for roster data.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even team size. Fine for trivial one-off use only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Add/remove member controls",
        "Members-per-team mode",
        "Generates simple teams",
        "Not overloaded with a huge consent stack"
      ],
      "cons": [
        "No paste-a-roster textarea",
        "No copy/export/share controls",
        "No group-count mode",
        "No constraints or attribute balancing",
        "No saved roster/history",
        "Vague privacy policy language around location and generated data"
      ],
      "reviewNote": "Treat the repeated “balanced” language as basic equal-size splitting, not real balancing. Privacy policy lives at https://randomcount.in/privacypolicy.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "terrific-tools-random-group-generator",
      "rank": 156,
      "name": "Terrific Tools Random Group Generator",
      "url": "https://terrific.tools/randomizer/random-group-generator",
      "bestFor": "People who want a small browser tool with individual member entry and simple group-size controls",
      "summary": "Terrific Tools Random Group Generator is not a serious group-planning tool. It has a group title, members-per-group setting, dummy-name option, member rows, balance/remainder toggles, and an advertised copy-to-clipboard output. The problem is the workflow is clunkier than most simple splitters because it uses individual member fields instead of a normal paste-a-list textarea, and the page is wrapped in promotional banners, comments, account buttons, and a huge directory of unrelated random tools.",
      "pricing": "Free web tool. No account required for generation; account prompts are for comments, ratings, bookmarks, and the broader site.",
      "overallRating": 2.0,
      "overallComment": "A weak random group generator with a few basic controls but worse input ergonomics than many simpler tools. The surrounding site noise and ad/privacy posture drag it down further.",
      "ratings": {
        "easeOfUse": 2.4,
        "design": 2.1,
        "features": 2.0,
        "outputs": 2.0,
        "privacy": 1.9,
        "accountFriction": 4.6,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The tool is usable, but individual member rows are a bad fit for a class or workshop roster. A simple textarea would be faster.",
        "design": "The actual form is readable, but the repeated launch banner, account/comment widgets, and enormous unrelated-tool grid make the page feel bloated.",
        "features": "Slightly above the weakest splitters: group title, members-per-group, dummy names, balance/remainder toggles, and dynamic members. No constraints, attributes, multi-round planning, saved rosters, or diagnostics.",
        "outputs": "The page advertises copying groups to the clipboard, but there is no spreadsheet, CSV, image, PDF, Zoom, or share workflow visible in the basic form.",
        "privacy": "The site says tools process data in the browser, which is good for names. The privacy policy also discloses Google Analytics and Mediavine interest-based advertising, and the page sets CMP/ad-consent storage.",
        "accountFriction": "Generation itself is free and no-login. The account UI is mainly for ratings, comments, and bookmarks.",
        "resultQuality": "Basic random grouping only. Balance/remainder toggles help group sizes, not assignment quality."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "partial",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "partial",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and browser-based",
        "Members-per-group control",
        "Balance and remainder toggles",
        "Dummy-name option",
        "Advertises copy-to-clipboard output"
      ],
      "cons": [
        "No paste-a-list textarea",
        "Clunky member entry for real rosters",
        "No constraints, balancing, or repeats",
        "No CSV/spreadsheet export",
        "Heavy surrounding site clutter",
        "Google Analytics and Mediavine ad/privacy footprint"
      ],
      "reviewNote": "Review the specific random group generator, not the broader terrific.tools directory or desktop converter product.",
      "tags": []
    },
    {
      "id": "madeintext-random-group-generator",
      "rank": 157,
      "name": "MadeInText Random Group Generator",
      "url": "https://www.madeintext.com/random-group-generator/",
      "bestFor": "Very simple one-off random groups when privacy does not matter",
      "summary": "MadeInText Random Group Generator is a tiny free web tool: paste names or items, enter the number of groups, and generate. It does produce random groups, but that is the whole story. There is no group-size mode, no copy/export button for results, no constraints, no balancing, no saved roster, and no diagnostics.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 1.9,
      "overallComment": "A working bare splitter dragged down by a heavy ad/consent stack and almost no features.",
      "ratings": {
        "easeOfUse": 4.6,
        "design": 2.0,
        "features": 1.0,
        "outputs": 1.0,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Paste names, enter number of groups, generate. It is extremely simple.",
        "design": "Plain content-site layout with lots of surrounding navigation and tool links. Functional but not pleasant.",
        "features": "Only number-of-groups random splitting. No group-size mode, constraints, balancing, saved lists, imports, or diagnostics.",
        "outputs": "Results are just printed on the page. The Copy Link button shares the page, not the generated groups.",
        "privacy": "Terrible for classroom/student names. The page uses Mediavine/rapid-edge style ad scripts, consent storage, Google Analytics, and a policy describing AdSense, Mediavine, IP address, device, browser, email hash, and interest-based advertising data.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random assignment. Fine for trivial splits, nothing more."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free",
        "No account required",
        "Very easy to use",
        "Accepts pasted names",
        "Generates groups quickly"
      ],
      "cons": [
        "Heavy ad-tech footprint",
        "No result copy/export",
        "No group-size mode",
        "No constraints or balancing",
        "No saved roster/history",
        "Very generic tool-page design"
      ],
      "reviewNote": "Treat it as a basic text-tool-site widget, not a serious classroom group planner.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "puretables-random-group-generator",
      "rank": 158,
      "name": "PureTables Random Group Generator",
      "url": "https://puretables.com/random-group-generator",
      "bestFor": "Very basic page-only random teams",
      "summary": "PureTables Random Group Generator is as basic as it gets: enter names one per line, enter how many teams to generate, click Generate, and read the page result. It works, but there are no output buttons, no group-size mode, no constraints, no balancing, no saved roster, and no polish. The site also uses Google AdSense/Funding Choices and a privacy policy that describes Google Analytics and ad cookies.",
      "pricing": "Free web tool. No account required.",
      "overallRating": 1.9,
      "overallComment": "A working but bare random splitter. It has almost no reason to rank above cleaner or more capable alternatives.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 2.0,
        "features": 1.0,
        "outputs": 1.0,
        "privacy": 1.4,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Simple: paste names, enter team count, generate. It would be hard for a tool this thin to be confusing.",
        "design": "Plain, dated utility-page design with ads and generic site navigation.",
        "features": "Only names and number of teams. No group-size mode, constraints, leaders, balancing, saved rosters, or diagnostics.",
        "outputs": "Page display only. No copy, CSV, print, PDF, share, or export controls.",
        "privacy": "Bad. The page loads AdSense/Funding Choices and the privacy policy describes Google Analytics, IP/location/browser data, and Google ad cookies.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping only."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Easy paste-and-generate workflow",
        "Works for simple random teams",
        "No setup complexity"
      ],
      "cons": [
        "No copy/download/export",
        "No group-size mode",
        "No constraints or balancing",
        "No saved roster/history",
        "Dated design",
        "AdSense/Funding Choices privacy footprint"
      ],
      "reviewNote": "This is a basic random-generator page, not a classroom planning tool.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "sheffield-hallam-tel-e-vision-group-maker",
      "rank": 159,
      "name": "Sheffield Hallam TEL-e-vision Group Maker",
      "url": "https://teaching.shu.ac.uk/hwb/hwbtel/resources/TEL-e-vision/groupmaker.html",
      "bestFor": "Very quick no-account random classroom groups",
      "summary": "Sheffield Hallam TEL-e-vision Group Maker is a tiny old-school HTML/JavaScript random group generator. Paste one name per line, optionally type a list of roles, choose 1–20 groups, and it shuffles names into groups in the browser. It is refreshingly direct and account-free, but it has almost no product surface beyond basic random splitting.",
      "pricing": "Free web page. No account or payment required.",
      "overallRating": 1.9,
      "overallComment": "A bare-bones random splitter. Useful in a pinch, but it is not competitive with modern group generators and has no real planning/export capability.",
      "ratings": {
        "easeOfUse": 4.2,
        "design": 1.8,
        "features": 1.4,
        "outputs": 1.2,
        "privacy": 3.6,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Very simple: paste names, choose number of groups, click the button. The only friction is the dated page and confusing optional roles field.",
        "design": "Very dated. Large old-style controls, table layout, document.write result page, and no modern polish. It is readable, but barely a product UI.",
        "features": "Almost nothing beyond random splitting by number of groups. The roles field is just displayed alongside each group rather than acting like a real assignment or constraint system. No balancing, constraints, imports, repeat handling, or diagnostics.",
        "outputs": "Extremely weak. Results are just written to a new page view. You can manually select/print through the browser, but there is no export, copy button, CSV, spreadsheet, image, PDF, share link, or saved history.",
        "privacy": "Better than server-side randomizers because the grouping logic runs in page JavaScript and there is no account. However the page includes Sheffield Hallam Google Tag Manager, and the broader university privacy policy is general website/institutional tracking rather than a dedicated student-roster promise for this tool.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping. It makes even-ish groups by shuffling and distributing names round-robin, but there is no balancing, preferences, keep-apart logic, or repeat reduction."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Runs in the browser",
        "Fast paste-and-generate workflow",
        "Simple number-of-groups control",
        "Free university-hosted page"
      ],
      "cons": [
        "Very dated UI",
        "No constraints or balancing",
        "Roles field is not real role assignment",
        "No export/copy/share controls",
        "No group size control beyond number of groups",
        "Google Tag Manager on the page"
      ],
      "reviewNote": "The optional roles field should not be treated as role assignment; it is displayed for every group and does not change grouping logic.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "web0-random-team-generator",
      "rank": 160,
      "name": "Web0 Random Team Generator",
      "url": "https://www.web0.it/random/team/en",
      "bestFor": "Ultra-minimal local random groups",
      "summary": "Web0 Random Team Generator is an extremely small browser-side random group page. Paste names, choose the number of groups, click Genera Gruppi, and it displays group cards. The implementation uses client-side JavaScript and no obvious ad/analytics scripts on the tool page, but the UI is partially Italian even on the English URL and there are no output/export controls.",
      "pricing": "Free. No account required.",
      "overallRating": 1.9,
      "overallComment": "A minimal local random splitter. Privacy/page simplicity is good, but the tool is too bare to be competitive.",
      "ratings": {
        "easeOfUse": 3.7,
        "design": 2.4,
        "features": 1.2,
        "outputs": 1.0,
        "privacy": 4.4,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Easy enough once you understand the Italian labels: paste names, set number of groups, generate. The language mismatch hurts clarity.",
        "design": "Simple Bootstrap-style layout. Not ugly, but generic and partly untranslated.",
        "features": "Almost no feature depth: paste names and choose number of groups. No group-size mode, constraints, balancing, leaders, exports, or diagnostics.",
        "outputs": "Page display only. No copy, download, CSV, print, share, or saved history.",
        "privacy": "Good on observed behavior. The tool page loads local JS plus jQuery/Bootstrap and the grouping code runs client-side with Math.random; no obvious ads/analytics scripts were present in the tested page HTML.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random round-robin grouping. Fine for one-off random teams, nothing more."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Runs client-side",
        "Very simple",
        "Paste names textarea",
        "No obvious ad/analytics scripts on tested page"
      ],
      "cons": [
        "Partly Italian UI on English page",
        "Only number-of-groups mode",
        "No copy/download/export",
        "No constraints or balancing",
        "No saved rosters/history",
        "Very bare product surface"
      ],
      "reviewNote": "Playwright test generated 3 groups from 9 names. JS inspection confirmed client-side Math.random shuffle with no fetch/localStorage/export code.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "classtools-random-group-generator",
      "rank": 161,
      "name": "ClassTools Random Group Generator",
      "url": "https://www.classtools.net/random-group-generator/",
      "bestFor": "Very quick classroom group splits",
      "summary": "ClassTools is an extremely weak group generator with unusually high search-engine visibility. It technically works for a quick random classroom split: paste names, choose the number of groups, generate, then save/link or print. The UI is dated, the page is cluttered and ad-heavy, the feature set is shallow, and the privacy/ad-tech footprint is bad.",
      "pricing": "Free, ad-supported web tool. No account or payment is needed for the random group generator. Premium removes ads and adds broader ClassTools workspace/history benefits, but the reviewed free group-generator workflow is surrounded by monetized site clutter.",
      "overallRating": 1.8,
      "overallComment": "Generally, one of the weakest group generators on this list. It works, but it is a dated, ad-heavy, shallow random splitter whose search-engine visibility is far higher than its product quality deserves.",
      "ratings": {
        "easeOfUse": 4.4,
        "design": 1.0,
        "features": 1.6,
        "outputs": 3.1,
        "privacy": 1.0,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The core workflow is easy because there is almost nothing to configure: paste names, choose group count, generate. Ads, consent prompts, premium nudges, and old UI clutter keep it from being a clean 5/5.",
        "design": "Terrible, dated, and cluttered. The tool is usable, but the surrounding page feels like an old ad-heavy template site rather than a modern group generator.",
        "features": "Very shallow. It has paste names, arbitrary group count, save/link, and print, but no balancing, constraints, repeat avoidance, imports, roster management, or diagnostics.",
        "outputs": "Save/link and print are genuinely useful and better than display-only tools. There is no proper CSV, spreadsheet, PDF, image, or Zoom-friendly export workflow.",
        "privacy": "Bad. The page shows a large consent/ad stack, including language about personal data being stored/accessed/shared with 1147 partners, plus Ezoic/Gatekeeper/Google/Funding Choices and multiple tracking identifiers. I would not enter sensitive classroom rosters here.",
        "accountFriction": "No account is required, but a premium login exists. For the basic group generator workflow, there is basically no signup friction.",
        "resultQuality": "Random only. This is what is advertised, but nothing more: no balancing, no constraints, no repeat reduction, and no quality diagnostics."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "partial",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "partial",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "partial",
        "Saved scenarios/workspaces": "partial",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Fast to use",
        "No account required",
        "Paste names",
        "Arbitrary number of groups",
        "Save/share link",
        "Print output"
      ],
      "cons": [
        "Extremely weak despite high search-engine visibility",
        "Terrible dated design",
        "Heavy ad/consent/tracking footprint",
        "No advanced rules",
        "No balancing or constraints",
        "No repeat avoidance",
        "No CSV/spreadsheet export",
        "Search ranking far exceeds product quality"
      ],
      "reviewNote": "This tool ranks extremely high in search-engine results for many related searches despite being a weak, dated, ad-heavy random splitter. Keep the review blunt: search visibility is not evidence of product quality.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "schule-dietmannsried-gruppen-generator",
      "rank": 162,
      "name": "Schule Dietmannsried Gruppen Generator",
      "url": "https://www.schule-dietmannsried.de/gruppen/",
      "bestFor": "Bare-bones German classroom group splitting",
      "summary": "Schule Dietmannsried Gruppen Generator is a tiny German-language school utility. Paste names, choose either maximum group size or number of groups, generate, and it displays groups plus counts. It appears to be a minimal client-side page with no ads or external scripts on the tool page, but it has no copy/export workflow and almost no features beyond splitting names.",
      "pricing": "Free. No account required.",
      "overallRating": 1.8,
      "overallComment": "A very bare-bones random splitter. Privacy/page simplicity is good, but product capability is almost nonexistent.",
      "ratings": {
        "easeOfUse": 3.8,
        "design": 1.5,
        "features": 1.5,
        "outputs": 1.0,
        "privacy": 4.2,
        "accountFriction": 5.0,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "Simple if you understand German: paste names, choose mode, enter a number, click generate. The labels are minimal and not localized to English.",
        "design": "Extremely plain school utility page. Functional, but visually primitive.",
        "features": "Only two basic split modes: maximum group size or number of groups. No constraints, balancing, leaders, exports, saved rosters, or diagnostics.",
        "outputs": "Page display only. No copy button, download, CSV, print view, share link, or saved result history.",
        "privacy": "Good on the tool page itself: no obvious ad/analytics scripts and the grouping appears client-side. The broader school privacy policy mentions cookies/server logs, but this specific page is lightweight.",
        "accountFriction": "No account required.",
        "resultQuality": "Plain random grouping with even-ish groups. No assignment quality beyond random splitting."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "partial",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Free and no account required",
        "Very simple page",
        "Paste names textarea",
        "Maximum group size or number-of-groups mode",
        "No obvious ad/tracking scripts on tool page"
      ],
      "cons": [
        "German-only UI",
        "Very dated/minimal design",
        "No copy/download/export",
        "No constraints or balancing",
        "No result history",
        "No advanced grouping controls"
      ],
      "reviewNote": "Playwright test generated 3 groups from 9 names. The first attempted shell fill used literal backslash-n; retest with real newlines confirmed normal operation.",
      "tags": [
        "privacy-friendly",
        "basic-randomizer"
      ]
    },
    {
      "id": "wheel-of-names",
      "rank": 163,
      "name": "Wheel of Names",
      "url": "https://wheelofnames.com/",
      "bestFor": "Random picking, raffles, and manual group-building workarounds",
      "summary": "Wheel of Names is primarily a random name picker, not a group generator. Teachers and facilitators can use it to pick names and manually assemble teams, but there is no real group-generation workflow beyond workarounds.",
      "pricing": "Free, ad-supported spinner. No paywall for premium wheel features, but that mostly benefits random picking/presentation rather than actual group generation.",
      "overallRating": 1.8,
      "overallComment": "Excellent random picker, but barely a group generator. It only belongs here because people use it as a manual workaround for classroom grouping.",
      "ratings": {
        "easeOfUse": 5.0,
        "design": 4.5,
        "features": 1.2,
        "outputs": 2.5,
        "privacy": 3.0,
        "accountFriction": 4.5,
        "resultQuality": 1.2
      },
      "ratingComments": {
        "easeOfUse": "For random picking, it is about as easy as it gets: paste names and spin. For actual group generation, the workflow becomes manual, but the base tool itself is very easy.",
        "design": "Polished, familiar, and good for live presentation. The wheel, sounds, themes, fullscreen/streaming support, and customization are much stronger than most plain utility sites.",
        "features": "For group generation specifically, feature depth is very low. Multi-wheel, weighted entries, themes, embedding, API access, and audio customization are useful spinner features, but they do not create balanced groups. There is no real team splitter, no group capacities, no grouping constraints, no multi-session planning, and no repeat optimization.",
        "outputs": "Strong output/sharing options for a wheel: short links, embeddable iframes, streaming support, local/cloud saved wheels, and API access. Weak as a group-generator output surface because it does not produce proper team rosters, CSV group assignments, Zoom exports, or schedule-style results.",
        "privacy": "Mixed. Better than the worst ad-tech utilities because it has local-file saving, automatic device-local state, explicit privacy/security documentation, and an option to close ads for the session. Not great for sensitive classroom names: the site uses ads and Google Analytics, cloud-saved/shared wheels can put entries in Firestore/Google infrastructure, account login is needed for cloud access, and shared URL examples can include entries directly in the URL.",
        "accountFriction": "No account is needed for basic spinning, local use, or local file saving. Cloud-saved wheels and cross-device access require login, so it is not completely account-free.",
        "resultQuality": "As a random picker, the randomness is strong. As a group generator, result quality is barely applicable: teams have to be built manually, so there is no balancing, no constraint handling, and no repeat minimization."
      },
      "features": {
        "API/programmatic access": "yes",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "yes",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "yes",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "yes",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "yes",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "yes",
        "Scenario import/export bundle": "partial",
        "Self-join participant link": "no",
        "Shareable result links": "yes",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "partial",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "yes",
        "Weighted random entries": "yes",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Extremely easy random picker",
        "Polished live presentation experience",
        "Strong visual/audio customization",
        "Save/share/embed/API options",
        "Google Sheets import and weighted entries"
      ],
      "cons": [
        "Not a dedicated group generator",
        "Manual workaround needed for team splits",
        "No constraints, capacities, or repeat optimization",
        "No proper group roster output",
        "Ads and analytics reduce privacy",
        "Shared/cloud wheels can expose entered names"
      ],
      "reviewNote": "Review strictly as a group-generator candidate. Wheel of Names is a strong presentation/random-picking tool, but its group-generation capability is basically a workaround: pick people one at a time and manually form teams.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "ahaslides-random-team-generator",
      "rank": 164,
      "name": "AhaSlides Random Team Generator",
      "url": "https://ahaslides.com/features/random-team-generator/",
      "bestFor": "AhaSlides users who already want random-team generation inside an interactive presentation workflow",
      "summary": "AhaSlides presents this as a random team generator feature, but the public page is mostly a marketing page for the broader presentation platform. It says to try the demo or sign up to unlock more features, but the standalone generator is not clearly exposed as a normal paste-names-and-generate tool on the page. As a group-generator entry, this should be scoped narrowly: AhaSlides may be a capable presentation product, but this page is not a strong standalone group maker.",
      "pricing": "AhaSlides has a free plan with limits and paid presentation plans. The pricing page describes up to 5 quiz and 3 poll slides on Free, paid upgrades for unlimited interactive slides, and special education/nonprofit rates.",
      "overallRating": 1.7,
      "overallComment": "Useful only if you are already in AhaSlides. As a standalone group generator, it is weak and hidden behind platform/account context.",
      "ratings": {
        "easeOfUse": 1.8,
        "design": 3.8,
        "features": 1.3,
        "outputs": 1.0,
        "privacy": 2.7,
        "accountFriction": 1.5,
        "resultQuality": 2.0
      },
      "ratingComments": {
        "easeOfUse": "The page does not behave like a straightforward public group generator. It pushes users toward signup and the broader platform.",
        "design": "The marketing page is polished, but that does not make the group generator itself good.",
        "features": "For group generation specifically, very little is visible. Do not give credit for unrelated presentation, quiz, poll, or AI slide features.",
        "outputs": "No useful standalone group output/export workflow is exposed on the public page.",
        "privacy": "AhaSlides has a serious privacy/security policy and GDPR/PDPA language, but the marketing page loads GTM, Microsoft Clarity/Bing, CookieScript, Zoho chat, HubSpot/Webflow-style scripts, and platform data is hosted/processed by AhaSlides.",
        "accountFriction": "The page explicitly pushes signup to unlock more features. Bad for a quick public group generator.",
        "resultQuality": "Assume basic random assignment only from the public description. No visible constraints, balancing, or optimization."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "partial",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished brand and page design",
        "Part of a real presentation platform",
        "Free plan exists",
        "Security/privacy documentation is more serious than content-farm tools"
      ],
      "cons": [
        "Standalone generator is not clearly accessible",
        "Signup pushed for more features",
        "No visible export workflow",
        "No group-specific constraints or optimization",
        "Many marketing/analytics/chat scripts on the page",
        "Presentation features are mostly irrelevant to group generation"
      ],
      "reviewNote": "Review the random-team-generator page/feature only, not AhaSlides as an audience-engagement suite.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "basedlabs-random-team-generator-with-conditions",
      "rank": 165,
      "name": "BasedLabs Random Team Generator with Conditions",
      "url": "https://www.basedlabs.ai/tools/random-team-generator-with-conditions",
      "bestFor": "Prompt ideas for AI-assisted grouping, not a structured group generator",
      "summary": "BasedLabs Random Team Generator with Conditions is an AI-tool landing page, not a normal structured team generator. The page describes using Gemini 2.5 Flash and natural-language prompts to create teams with skills, roles, pairings, restrictions, locks, and scores. In live testing, there was no visible roster table, split-mode control, constraint editor, or generated group output on the public page; the experience appears to route users into BasedLabs’ broader AI generation/sign-in ecosystem. It may be usable as a prompt wrapper, but it is not transparent or reliable enough for serious group assignment.",
      "pricing": "BasedLabs account/product pricing applies; the public page did not expose a no-account structured generator.",
      "overallRating": 1.6,
      "overallComment": "Mostly a generic AI prompt page with group-generator marketing; not a practical transparent assignment tool.",
      "ratings": {
        "easeOfUse": 1.8,
        "design": 2.8,
        "features": 1.6,
        "outputs": 0.8,
        "privacy": 1.4,
        "accountFriction": 1.5,
        "resultQuality": 1.5
      },
      "ratingComments": {
        "easeOfUse": "The page explains prompts, but no structured roster-to-teams workflow was visible in public testing.",
        "design": "Polished BasedLabs marketing page, but unrelated AI/social/media navigation dominates.",
        "features": "Claims conditions, skills, roles, locks, rerolls, and scoring, but these were not exposed as verifiable structured controls.",
        "outputs": "No generated teams or export workflow were produced in testing.",
        "privacy": "Roster data would likely be processed through a hosted AI service. Stripe, Google, BasedLabs CDN/media, affiliate, and model-related domains loaded.",
        "accountFriction": "Sign-in/product funnel friction is high compared with no-account group tools.",
        "resultQuality": "AI prompt output could be helpful for brainstorming, but it is not deterministic, auditable, or structured like a solver."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "partial",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "partial",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "partial",
        "Soft prefer-together constraints": "partial",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "partial",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Natural-language condition examples",
        "Mentions skills, roles, restrictions, locks, and scores",
        "Could help users draft grouping prompts"
      ],
      "cons": [
        "No visible structured roster/grouping UI",
        "No verified output",
        "No transparent algorithm",
        "Likely account/product funnel",
        "Hosted AI privacy concerns"
      ],
      "reviewNote": "Do not credit the prompt examples as verified structured product controls.",
      "tags": [
        "constraints",
        "basic-randomizer",
        "ai-assisted"
      ]
    },
    {
      "id": "freetexttools-random-team-generator",
      "rank": 166,
      "name": "FreeTextTools Random Team Generator",
      "url": "https://www.freetexttools.org/random-team-generator/",
      "bestFor": "Feature-rich-looking team generator that did not produce visible teams in testing",
      "summary": "FreeTextTools Random Team Generator presents a richer team-generator UI with team-count/team-size modes, team-name styles, captain/statistics options, drag-and-drop claims, and CSV/JSON export claims. In live testing, the page accepted pasted names and detected 12 participants, but clicking Generate Teams did not produce visible team output. JavaScript errors related to ads were also observed. Because the visible generator flow did not complete in the test browser, this review rates the actual verified behavior low despite the ambitious feature copy.",
      "pricing": "Free, ad-supported web tool. No account is required.",
      "overallRating": 1.6,
      "overallComment": "Promising UI claims, but the tested public flow accepted names and then failed to show generated teams.",
      "ratings": {
        "easeOfUse": 2.0,
        "design": 3.0,
        "features": 2.2,
        "outputs": 1.4,
        "privacy": 1.2,
        "accountFriction": 5.0,
        "resultQuality": 0.8
      },
      "ratingComments": {
        "easeOfUse": "The form is clear, but generation did not produce visible teams in live testing.",
        "design": "Modern-looking tool panel and documentation.",
        "features": "The page advertises useful features, but many could not be credited because generation did not complete visibly.",
        "outputs": "CSV/JSON export is advertised, but no generated output/export was verified.",
        "privacy": "Google ads/funding choices, analytics, Cloudflare insights, Ko-fi assets, and remote fonts were observed.",
        "accountFriction": "No signup or login is needed.",
        "resultQuality": "No visible teams were produced in the tested flow."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "partial",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Accepts pasted names",
        "Participant count detection",
        "Modern UI",
        "Advertises rich team options"
      ],
      "cons": [
        "No visible teams generated in testing",
        "Ad/consent clutter",
        "Advertised exports not verified",
        "No constraints verified",
        "JavaScript errors observed"
      ],
      "reviewNote": "Live tests with and without consent saw 12 participants detected, but no visible generated teams after Generate Teams. Page errors: adsbygoogle is not defined.",
      "tags": []
    },
    {
      "id": "basedlabs-random-group-generator",
      "rank": 167,
      "name": "BasedLabs Random Group Generator",
      "url": "https://www.basedlabs.ai/tools/random-group-generator",
      "bestFor": "Prompt examples for AI group formation, not a dependable generator",
      "summary": "BasedLabs Random Group Generator is another AI landing page rather than a focused grouping product. It describes AI-powered random groups and gives sample prompts for classrooms, workshops, hackathons, and sports day teams, including skills and keep-apart constraints. The public page did not expose a clear no-account form for pasting a roster, choosing group size/count, generating groups, copying results, or exporting. For actual group-generation work, this is much weaker than simple browser tools because it is prompt-based, opaque, and tied to the BasedLabs AI ecosystem.",
      "pricing": "BasedLabs account/product pricing applies; no standalone free structured generator was verified.",
      "overallRating": 1.4,
      "overallComment": "Useful as prompt inspiration, weak as a transparent group generator.",
      "ratings": {
        "easeOfUse": 1.8,
        "design": 2.8,
        "features": 1.2,
        "outputs": 0.6,
        "privacy": 1.4,
        "accountFriction": 1.5,
        "resultQuality": 1.2
      },
      "ratingComments": {
        "easeOfUse": "Reading prompt examples is easy; actually generating groups through a clear roster workflow was not available in testing.",
        "design": "Polished marketing page with lots of unrelated BasedLabs AI navigation.",
        "features": "Mentions group count/size, skills, and keep-apart constraints in prompts, but no structured controls were verified.",
        "outputs": "No generated group output or export was produced in public testing.",
        "privacy": "Likely hosted AI processing if used. BasedLabs, Google, Stripe, media/model, and affiliate domains loaded.",
        "accountFriction": "High compared with no-account group splitters.",
        "resultQuality": "AI text may produce plausible groupings, but it is opaque and not reliably auditable."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "partial",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "partial",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Prompt examples for classroom/workshop/hackathon groups",
        "Mentions constraints and balancing concepts",
        "Could be used for brainstorming grouping prompts"
      ],
      "cons": [
        "No visible structured generator",
        "No verified group output",
        "No export workflow",
        "Opaque hosted AI path",
        "Account/product funnel"
      ],
      "reviewNote": "Review as a BasedLabs AI prompt page, not as a traditional random group webapp.",
      "tags": [
        "constraints",
        "basic-randomizer",
        "ai-assisted"
      ]
    },
    {
      "id": "decisionmakertool-team-picker",
      "rank": 168,
      "name": "DecisionMakerTool Team Picker",
      "url": "https://www.decisionmakertool.com/team-picker",
      "bestFor": "A visual picker page, not a real team generator",
      "summary": "DecisionMakerTool Team Picker is presented as a team picker wheel, but live testing did not expose a usable team-generation workflow. The page has a choices textarea, removable current-choice chips, quick templates, a small customization panel, and a wheel-style interface. It does not provide a clear number-of-teams control, group-size control, generated team output, export, constraints, repeat handling, or result diagnostics. For group-generation work, this is effectively a random picker page with misleading team-generator copy.",
      "pricing": "Free. No account is required.",
      "overallRating": 1.3,
      "overallComment": "Weak as a group generator: the page talks about teams but does not deliver a clear team-splitting workflow.",
      "ratings": {
        "easeOfUse": 2.0,
        "design": 2.8,
        "features": 0.8,
        "outputs": 0.3,
        "privacy": 2.4,
        "accountFriction": 5.0,
        "resultQuality": 0.6
      },
      "ratingComments": {
        "easeOfUse": "Adding choices is possible, but the actual team-splitting path is not discoverable in testing.",
        "design": "The wheel/picker page is readable and not visually broken, but it is mismatched to the claimed team-generator job.",
        "features": "No confirmed group-count or group-size generation flow. No constraints, attributes, repeats, saved rosters, or diagnostics.",
        "outputs": "No generated group output or export was produced in testing.",
        "privacy": "No account is required, but Google Tag Manager/Analytics and Google font services were loaded.",
        "accountFriction": "No signup or login is needed for the page.",
        "resultQuality": "Not meaningfully assessable as group generation because it did not create teams."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "yes",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "partial",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "partial",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "No account required",
        "Accepts a pasted list of choices",
        "Visual picker presentation"
      ],
      "cons": [
        "No clear team-generation workflow",
        "No group count or group size control found",
        "No group export",
        "No constraints or balancing",
        "Marketing copy overstates group-generation capability"
      ],
      "reviewNote": "Live test found a choices textarea and customization controls, but no reliable team split result. Do not credit the marketing copy as implemented capability.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "teach-starter-random-name-picker",
      "rank": 169,
      "name": "Teach Starter Random Name Picker",
      "url": "https://www.teachstarter.com/us/widget/random-name-picker-us/",
      "bestFor": "Picking one student at a time, not generating groups",
      "summary": "Teach Starter has a free random name picker/spin-wheel classroom widget, but I could not find a real random group generator from Teach Starter. It can support manual grouping only by picking names one at a time or using saved word lists; it does not split a roster into teams.",
      "pricing": "Free random name picker widget; broader Teach Starter resources and saved-account workflows may sit behind free/paid teacher plans, depending on region/resource.",
      "overallRating": 1.1,
      "overallComment": "Not a real group generator. Keep only if the article wants to mention classroom random-picking workarounds; otherwise it is a removal candidate.",
      "ratings": {
        "easeOfUse": 4.5,
        "design": 3.8,
        "features": 0.8,
        "outputs": 1.0,
        "privacy": 3.2,
        "accountFriction": 4.0,
        "resultQuality": 0.8
      },
      "ratingComments": {
        "easeOfUse": "For picking a single random name, it is easy. For generating groups, the workflow is bad because there is no group-generation workflow at all; you would have to pick names manually.",
        "design": "Polished and classroom-friendly compared with many utility sites. The issue is not presentation quality; it is that the relevant tool is a name picker, not a group maker.",
        "features": "Almost no group-generation feature depth. It can pick random names and use saved word lists, but it does not choose team count, group size, capacities, balancing, constraints, exports, or repeat avoidance.",
        "outputs": "No useful group output. At best it displays one selected name or spinner result. No team roster, copy/export surface, CSV, print groups, or shareable generated assignment.",
        "privacy": "Better than ad-tech-heavy utilities: no obvious AdSense mess on the widget page and Teach Starter has detailed education/privacy language including COPPA/PRIVO posture. A hosted education platform with accounts, cookies, server logs, location/IP/device data, marketing uses, analytics/customer tooling, and saved word-list/account behavior.",
        "accountFriction": "The random name picker is presented as free, but the broader Teach Starter ecosystem pushes account/resource workflows, and saved class lists depend on Teach Starter account features. No account is needed for the basic idea, but it is not as frictionless as a tiny standalone splitter.",
        "resultQuality": "No group result quality to credit. Random single-name selection may be fair, but it does not create balanced teams or group assignments."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "partial",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "yes",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "partial",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "yes",
        "Saved class roster import": "partial",
        "Saved participant/team lists": "partial",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "partial",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished classroom-friendly random name picker",
        "Free widget for simple random selection",
        "Saved word lists can help teachers reuse class lists",
        "Detailed education privacy documentation"
      ],
      "cons": [
        "Not a real group generator",
        "No team count or group size controls",
        "Manual one-name-at-a-time workaround only",
        "No group roster output or export",
        "Account ecosystem around saved lists/resources",
        "Hosted platform collects normal account/log/cookie data"
      ],
      "reviewNote": "No working Teach Starter group generator was found. The closest relevant tool is the free Random Name Picker / Spin Wheel, which is only a manual grouping workaround.",
      "tags": [
        "basic-randomizer"
      ]
    },
    {
      "id": "remagineai-random-group-generator",
      "rank": 170,
      "name": "RemagineAI Random Group Generator",
      "url": "https://remagineai.com/name-generator/random-group-generator",
      "bestFor": "Not recommended as a standalone group generator",
      "summary": "RemagineAI Random Group Generator is primarily an AI sign-up page, not a usable no-account group generator. The public page markets an AI random group generator, but live testing found no structured roster input, group-size/team-count controls, generated groups, copy/export workflow, or transparent algorithm. Clicking into the flow led to sign-up and Google OAuth, with console errors during the test. Treat it as an AI content/product funnel rather than a dependable group-assignment tool.",
      "pricing": "Account/product funnel; no standalone free structured generator was verified.",
      "overallRating": 1.0,
      "overallComment": "Mostly a sign-up gate with group-generator SEO copy; no practical public grouping workflow was verified.",
      "ratings": {
        "easeOfUse": 1.2,
        "design": 2.4,
        "features": 0.8,
        "outputs": 0.0,
        "privacy": 1.0,
        "accountFriction": 1.0,
        "resultQuality": 0.8
      },
      "ratingComments": {
        "easeOfUse": "The tested public flow did not expose a working roster-to-groups form.",
        "design": "Polished marketing/sign-up UI, not a focused generator interface.",
        "features": "AI grouping claims were not exposed as verifiable structured controls.",
        "outputs": "No generated teams or export path were produced in testing.",
        "privacy": "Using it appears to require hosted AI/account processing. Mixpanel, Google Analytics/Tag Manager, affiliate/CDN scripts, and Google OAuth appeared.",
        "accountFriction": "High: the usable path appears to require sign-up or Google login.",
        "resultQuality": "No assignment result was generated."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [
        "Polished landing page",
        "Mentions AI-assisted group creation"
      ],
      "cons": [
        "No visible structured generator in public test",
        "Sign-up/Google OAuth gate",
        "No verified output",
        "No export",
        "Opaque hosted AI/privacy concerns"
      ],
      "reviewNote": "Live test reached sign-up/Google OAuth and showed internal/fetch errors; no public generator output was verified.",
      "tags": [
        "basic-randomizer",
        "ai-assisted"
      ]
    },
    {
      "id": "huqiu-random-group-generator",
      "rank": 171,
      "name": "Huqiu Random Group Generator",
      "url": "https://en.huqiu.com/random/random-group-generator.html",
      "bestFor": "Not recommended; page was inaccessible during review",
      "summary": "Huqiu Random Group Generator could not be reviewed as a functioning product because the target page repeatedly timed out or blocked automated/live extraction during testing. Browser navigation to the English URL did not complete, direct HTTP requests timed out, and the content extractor reported blocked or inaccessible access. Since no grouping UI, output, export, or privacy behavior could be verified, this entry should not be treated as a usable recommendation.",
      "pricing": "Unknown from live testing because the page was inaccessible.",
      "overallRating": 0.5,
      "overallComment": "Inaccessible during review; no usable group-generation capability was verified.",
      "ratings": {
        "easeOfUse": 0.0,
        "design": 0.0,
        "features": 0.0,
        "outputs": 0.0,
        "privacy": 0.0,
        "accountFriction": 0.0,
        "resultQuality": 0.0
      },
      "ratingComments": {
        "easeOfUse": "The page did not load successfully in review testing.",
        "design": "No UI could be evaluated.",
        "features": "No features could be verified.",
        "outputs": "No output could be generated or exported.",
        "privacy": "No privacy posture could be verified because the page was inaccessible.",
        "accountFriction": "No access path could be verified.",
        "resultQuality": "No result was generated."
      },
      "features": {
        "API/programmatic access": "no",
        "Attribute balance constraints": "no",
        "Attribute total/sum constraints": "no",
        "Copy results to clipboard": "no",
        "Custom group capacities": "no",
        "Deterministic seed / reproducibility": "no",
        "Editable/random team names": "no",
        "Embeddable results": "no",
        "Excel export": "no",
        "Fixed person placement": "no",
        "Gender/label balancing": "no",
        "Google Sheets import": "no",
        "Hard keep-apart constraints": "no",
        "Hard keep-together constraints": "no",
        "Image/PDF export": "no",
        "Minimum group sizes": "no",
        "Multiple rounds/sessions": "no",
        "No account required": "no",
        "Pair meeting count targets": "no",
        "Pair meeting matrix": "no",
        "Partial attendance by session": "no",
        "Paste names": "no",
        "Per-session capacities": "no",
        "Per-session constraints": "no",
        "Person/group visit count constraints": "no",
        "Pinned people / fixed placements": "no",
        "Presentation/full-screen mode": "no",
        "Repeat encounter limits": "no",
        "Result comments": "no",
        "Result quality diagnostics": "no",
        "Runs in browser": "no",
        "Saved class roster import": "no",
        "Saved participant/team lists": "no",
        "Saved result history": "no",
        "Saved scenarios/workspaces": "no",
        "Scenario import/export bundle": "no",
        "Self-join participant link": "no",
        "Shareable result links": "no",
        "Soft prefer-apart constraints": "no",
        "Soft prefer-together constraints": "no",
        "Solver telemetry/result metadata": "no",
        "Solver tuning controls": "no",
        "Spreadsheet CSV export": "no",
        "Spreadsheet CSV import": "no",
        "Storage management/cleanup": "no",
        "Team leader / representative assignment": "no",
        "Unique-contact optimization": "no",
        "Visual/theme customization": "no",
        "Weighted random entries": "no",
        "Weighted soft constraints": "no",
        "Zoom breakout CSV import/export": "no"
      },
      "pros": [],
      "cons": [
        "Page timed out in Playwright",
        "Direct HTTP requests timed out",
        "Content extraction reported blocked/inaccessible access",
        "No grouping UI verified",
        "No outputs verified"
      ],
      "reviewNote": "Retest only if the site becomes reliably reachable. Tested URL: https://en.huqiu.com/random/random-group-generator.html",
      "tags": [
        "basic-randomizer"
      ]
    }
  ]
}
