Here's an illustration of how we do solos, doubles and triples at ZLTAC, using a "pyramid" structure. We haven't always followed quite this plan, but this is basically descriptive of the way we've done it since 2007.
There are three rounds. Each round is followed by a repêchage (a second-chance round, literally "fishing out"). If you do well in the round, you're through to the next round; otherwise, you're in the repêchage. If you do well in the repêchage, you're through to the next round; otherwise, you're eliminated.
Round 1 is unseeded. All subsequent rounds and repêchages are seeded based on the results from teams' previous game. For example, in repêchage 1, we rank teams by their average score across both their games, advance the best to round 2, and put the remainder into the repêchage based on their average. We use a "zig-zag" or "snake" draw — if there were four games in the repêchage, we'd put teams 1, 2, 3 and 4 into games 1, 2, 3 and 4; but then team 5 would go into game 4, team 6 into game 3, etc. In this way, the total "difficulty" of the games are kept as even as possible. In round 2, we zig-zag in teams from round 1, followed by teams from repêchage 1. And so on.
After repêchage 3 is finals: a series of games all involving the same teams. Doubles and triples are four games, drop your worst and we average you on your best 3; solos is five games, drop your best and worst and we average your middle three. "Drop your worst" insulates players/teams from a single bad pack or a single bad ref call. "Drop your best" in solos insulates against a single 'good' pack (i.e. a pack that is hard to hit).
In round 1, you get two games. This is to ensure that each team or player gets at least three games (either by playing round 1, round 1, repêchage 1; or by playing round 1, round 1, round 2).
Design objectives include:
"At least three games" is quite an "expensive" requirement — it makes round 1 (which is where the bulk of the games are) twice as long as it would otherwise be. We could save a small number of games by giving teams one game in round 1, and two games in repêchage 1. (Repêchage 1 is seeded, and I'm not sure how you would do that if you were giving each team two games.) Or see 2017 triples, below, for a similar way to save a small number of games.
Plan B: it's very hard in doubles and triples to get the same number of teams in each game of round 3 and repêchage 3. To work around this, we take a few teams from repêchage 2 that would otherwise be eliminated, and throw them into the "spare" spots in repêchage 3. This is less necessary in solos, where the "granularity" is finer (with e.g. 20 players per game instead of 6 teams per game) and where we care less about keeping a constant number of players in each game.
A variation which I have proposed but never used is to cut some teams directly from round 2 and/or round 3, so that in these rounds, top teams advance directly to the next round, middling teams go to the repêchage, and bottom teams are directly eliminated. This decreases the number of games in repêchage 2 and 3 slightly, and makes it easier to get a constant number of teams in each game.
There's similarity between this "pyramid" structure and Two Track (n teams per game image).
If you are near the border between two different diagrams, use the larger one. If a couple of teams cancel taking you below the threshold, you can still use the larger one — the cut from repêchage 1 to round 2 just becomes a little easier.
For smaller fixtures, use one of the above but drop round 1 and repêchage 1, and start at round 2, thus:
In solos the number of "teams" per game is less important, as solos dynamically adapts to the number of players in each game, with players abandoning sparsely populated parts of the arena. The maximum number of teams varies slightly each year, with different arena sizes and numbers of packs available.
Most years, we plan to put 6 (or nearly 6) teams in each game. In 2018 we had lots of packs and a large arena available, so we went for 10 teams per game.
You can see that 2017 triples was a slightly different format: instead of giving each team two games in round 1 plus one in repêchage 1, we gave them one in round 1, one in repêchage 1A, and one in repêchage 1B. This saves a game or two (while still meeting our design objective of giving every player at least three games), but requires an extra draw.