Miss-matched wars are due to alliances matching on the particular metric used to make the match, but a difference in some other key metric that the developers did not take into account.
1st war matching method, “Alliance Score” : works fine if every alliance member is raiding at their full potential and the alliance is taking down the strongest titans possible for them. If anyone drops cups the matching could be thrown off. If the alliance new and they are working their way up to stronger titans, the matching could be thrown off. This also doesn’t take into account that a player may have 30 strong heroes, as raids and titans only use 5 heroes at a time.
2nd (and current) method “Titan score” : ignores cup droppers and individual raid performance… completely based on how well an alliance kills titans. Newly formed alliances with strong members could be able to down 8-star titans, but if they are still on 3 or 4 star titans because they haven’t worked their way up, they’d be matched up against much weaker alliances who can only take out 3 or 4 star titans. This method also fails to account for players with deep strong rosters as 5 strong heroes can contribute as much to titan score as a roster of 30 strong heroes.
3rd war matching method, “Top 30” : This matching method does ensure that each matched alliance has very similar total attack power across all 6 potential teams of each alliance member over the course of a war. Unfortunately power is an inaccurate measure (unlevelled 5 star has almost the same power as a maxed 3 star, but the 3 star has higher stats and will perform better). This method also fails to account for defensive team power… alliances with members who have 6 good attack teams will likely lose against alliances sporting 1-2 strong teams (and a strong defense) due to the balanced alliance’s inability to overcome the strong defenses. (defenses don’t rotate out, strongest defense is always on while strongest attack can only be used once).
Each of those three methods have ways in which improper matches occur. Best thinking I can come up with is that a balanced war match up should take into account offensive AND defensive capabilities. I don’t know how those would be accurately balanced when an alliance has a range of player levels and strength levels… it would always be easier if everyone was at the same maxed strength level, but that is not how it is in the game.