🇫🇮 SANDSTROM Kati · FINLAND

105rank
-54.9Butler · 224 bds
-0.25per board
±4.3swing
-0.78vs par /bd · #131/134
-0.35adjusted /bd
Butler per round: -6.2 5.1 4.9 -24.8 39.8 5.9 -20.6 -28.1 -24.7 -28.2 -2.4 -14.7 16.9 22.2by round

vs par split: bidding -0.50 · play -0.29

Strength of schedule: opponents averaged -0.11/bd (an easy draw) → opponent-adjusted -0.35/bd

Card play — on target: opening leads 82.0% #33 of 134 · declarer play 68.8% #91 of 134 · defence 82.1% #93 of 134

Card play by contract type — on target
vs NTvs a suit
Opening leads83.3% (18)81.4% (43)
Declarer play63.2% (19)72.4% (29)
Defence77.8% (27)83.5% (85)

Opening leads by suit led: ♠ 83.3% (12) · ♥ 80.0% (20) · ♦ 81.2% (16) · ♣ 84.6% (13)

vs par by strain: NT -1.69 (64) · a suit -0.42 (160)

vs par by level: part-score -0.04 (93) · game -1.33 (119) · slam -1.08 (12)

By role: declaring -0.41/bd (-2.93 vs par · 112) · defending -0.08/bd (+1.37 vs par · 112)

By vulnerability: vulnerable -0.53/bd (-1.12 vs par · 112) · not vulnerable +0.04/bd (-0.44 vs par · 112)

By round↑ top

RoundPartnerOpponentsRoomBdsButlerAvgvs par
Round 2M.MyllaeriA.Huberschwiller – J.MourguesOpen16-6.2-0.39+0.06
Round 3M.MyllaeriD.Kazmucha – A.SarniakClosed16+5.1+0.32+0.50
Round 5M.MyllaeriG.Smykalla – C.LuessmannOpen16+4.9+0.31+0.25
Round 6M.MyllaeriM.Sabljic – O.SimicOpen16-24.8-1.55-2.69
Round 8M.MyllaeriG.Vahaboglu – O.OymenOpen16+39.8+2.49+1.12
Round 10M.MyllaeriA.Simons – J.PasmanOpen16+5.9+0.37-0.25
Round 11M.MyllaeriA.Rosado – A.OliveiraOpen16-20.6-1.29-1.81
Round 12M.MyllaeriN.Libster – H.ShezifiClosed16-28.1-1.76-3.38
Round 14M.MyllaeriI.Plakida – N.SalemClosed16-24.7-1.54-1.81
Round 15M.MyllaeriM.Matut – M.BarnesClosed16-28.2-1.76-2.62
Round 17M.MyllaeriM.Buratti – M.AghemoOpen16-2.4-0.15-1.75
Round 19M.MyllaeriG.Fawcett – C.DraperOpen16-14.7-0.92-1.44
Round 22M.MyllaeriM.Whelan – D.GillilandClosed16+16.9+1.06+2.06
Round 23M.MyllaeriA.Couteaux – L.AngeliniClosed16+22.2+1.39+0.81

Every board — best Butler first↑ top

vs par = IMPs this pair scored above (+) or below (−) the board’s double-dummy par — what bidding and play (theirs and the opponents’) added or gave away against perfect play.

ButlerRoundOpponentsBdContractLeadResvs par
+12.4Round 17🇮🇹 ITALY117♣♥2-1+11
+12.0Round 8🇹🇷 TURKEY156♠♦A=+0
+10.9Round 2🇫🇷 FRANCE276♥x♦9-2+13
+10.7Round 22🇮🇪 IRELAND195♣♦Q-3+14
+9.7Round 3🇵🇱 POLAND66♣♠4=+10
+9.7Round 3🇵🇱 POLAND117♦♥2-1+14
+9.1Round 6🇷🇸 SERBIA323NT♥5-2+13
+8.6Round 8🇹🇷 TURKEY86♥♠Q=+0
+8.6Round 10🇳🇱 NETHERLANDS133♥♣K+2+10
+8.6Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND33♦♣A-3+10
+8.5Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND124♠♦A=+8
+8.4Round 2🇫🇷 FRANCE215♥x♠Q-2+10
+8.3Round 8🇹🇷 TURKEY133♠♦A-4-3
+8.0Round 8🇹🇷 TURKEY113NT♣3=+6
+7.9Round 23🇧🇪 BELGIUM16♥♦4+1-11
+7.8Round 17🇮🇹 ITALY33NT♠5-1+6
+6.9Round 8🇹🇷 TURKEY74♥♣K+1+13
+6.5Round 17🇮🇹 ITALY43NT♦K+1-1
+6.3Round 12🇮🇱 ISRAEL124♥♦3=+10
+6.0Round 10🇳🇱 NETHERLANDS124♠♣A=+0
+6.0Round 22🇮🇪 IRELAND235♠♦6-1+7
+5.8Round 23🇧🇪 BELGIUM93♥♣3-2+8
+5.3Round 22🇮🇪 IRELAND302♦♠8+1+11
+5.2Round 23🇧🇪 BELGIUM135♣♠A-2+8
+5.1Round 10🇳🇱 NETHERLANDS93NT♥4+2+1
+5.0Round 6🇷🇸 SERBIA244♥♠A=+3
+4.9Round 3🇵🇱 POLAND103♠♥K-1+11
+4.8Round 11🇵🇹 PORTUGAL254♠♥5-1+12
+4.5Round 10🇳🇱 NETHERLANDS24♠♥A=+0
+4.3Round 2🇫🇷 FRANCE284♠♦K=+8
+4.2Round 2🇫🇷 FRANCE302♥♠K+1+1
+4.1Round 14🇬🇷 GREECE84♥♣Q-5+5
+4.0Round 10🇳🇱 NETHERLANDS72♥♣6=+6
+3.9Round 5🇩🇪 GERMANY61NT♠4+4+15
+3.8Round 22🇮🇪 IRELAND253♣♠8=+5
+3.8Round 23🇧🇪 BELGIUM44♥♣9=+13
+3.7Round 8🇹🇷 TURKEY43NT♦7-1+6
+3.6Round 8🇹🇷 TURKEY52♥♣K-1+4
+3.5Round 8🇹🇷 TURKEY101NT♦8+1+0
+3.4Round 23🇧🇪 BELGIUM24♠♠2+1+8
+3.3Round 2🇫🇷 FRANCE245♦♠K-1+5
+3.2Round 14🇬🇷 GREECE23NT♣6+1+0
+3.1Round 5🇩🇪 GERMANY92♠♥K-1+11
+3.0Round 11🇵🇹 PORTUGAL201NT♥6=+6
+2.8Round 5🇩🇪 GERMANY22♦♠Q-2-1
+2.8Round 15🇪🇸 SPAIN252♥♦A+2+1
+2.7Round 8🇹🇷 TURKEY34♠♦A-2-5
+2.7Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND13♣♦8-1+4
+2.7Round 22🇮🇪 IRELAND264♥♦8+2+17
+2.6Round 15🇪🇸 SPAIN214♥♥9+3+10
+2.5Round 6🇷🇸 SERBIA265♦♠J+1+13
+2.4Round 5🇩🇪 GERMANY143♥♦K-1-2
+2.4Round 22🇮🇪 IRELAND293NT♥3+2+1
+2.4Round 22🇮🇪 IRELAND322♠♦K+1+0
+2.3Round 23🇧🇪 BELGIUM73NT♦4+1+0
+2.1Round 2🇫🇷 FRANCE224♦♣A+1+10
+2.0Round 5🇩🇪 GERMANY122♥♣K-1-1
+2.0Round 23🇧🇪 BELGIUM54♥♦Q+1+14
+1.9Round 15🇪🇸 SPAIN323NT♣5+1+1
+1.8Round 6🇷🇸 SERBIA282♠x♦K-4-12
+1.7Round 10🇳🇱 NETHERLANDS151NT♣2=-1
+1.6Round 10🇳🇱 NETHERLANDS143NT♦6+1+1
+1.5Round 3🇵🇱 POLAND85♦♠A=-2
+1.5Round 10🇳🇱 NETHERLANDS33♠♥Q+1+8
+1.5Round 23🇧🇪 BELGIUM34♥♣K+2-11
+1.4Round 5🇩🇪 GERMANY53♣♦2+3+6
+1.2Round 14🇬🇷 GREECE31NT♣4-1+0
+1.2Round 22🇮🇪 IRELAND223NT♣4+2+0
+1.1Round 12🇮🇱 ISRAEL83NT♠Q+3-11
+1.0Round 10🇳🇱 NETHERLANDS113♠♥6-2+0
+1.0Round 15🇪🇸 SPAIN183♥♦K-1-2
+0.9Round 3🇵🇱 POLAND134♠♣J=-1
+0.9Round 11🇵🇹 PORTUGAL234♠♦Q+1+0
+0.8Round 2🇫🇷 FRANCE294♥♣5+1-13
+0.8Round 11🇵🇹 PORTUGAL264NT♠Q+1-13
+0.8Round 23🇧🇪 BELGIUM81NT♦7-2-1
+0.7Round 15🇪🇸 SPAIN202♠♥8-2-9
+0.7Round 17🇮🇹 ITALY53♠♣J+1-1
+0.6Round 3🇵🇱 POLAND22♠♣K-1-6
+0.5Round 14🇬🇷 GREECE53NT♣5+1+11
+0.5Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND53NT♥4+3-13
+0.5Round 22🇮🇪 IRELAND173NT♥4+1+0
+0.5Round 22🇮🇪 IRELAND283NT♠6=-1
+0.4Round 12🇮🇱 ISRAEL141NT♥Q+1+0
+0.4Round 14🇬🇷 GREECE154♠♥5+3-12
+0.2Round 5🇩🇪 GERMANY104♠♦Q=+0
+0.2Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND25♦♦Q=+2
+0.2Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND141NT♣5=+0
+0.1Round 5🇩🇪 GERMANY133♦♥Q=+0
+0.1Round 8🇹🇷 TURKEY123♥♦K+2+6
+0.1Round 12🇮🇱 ISRAEL13NT♥7=+2
+0.1Round 14🇬🇷 GREECE112♠♥7-2+0
+0.1Round 15🇪🇸 SPAIN232♥♣K-1-1
+0.1Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND63NT♠Q+2-10
+0.0Round 5🇩🇪 GERMANY71NT♣2+1-11
+0.0Round 12🇮🇱 ISRAEL24♥♥J=+1
-0.0Round 14🇬🇷 GREECE14♠♥4-2+8
+0.0Round 14🇬🇷 GREECE94♠♥K+1-11
+0.0Round 15🇪🇸 SPAIN194♠♥7+1+0
+0.0Round 15🇪🇸 SPAIN282♥♠5+1+0
+0.0Round 22🇮🇪 IRELAND312♠♥10+1+0
-0.1Round 2🇫🇷 FRANCE183♦♥7-1+1
-0.1Round 11🇵🇹 PORTUGAL224♠♥9+1-11
-0.1Round 11🇵🇹 PORTUGAL313♠♠2=+6
-0.2Round 3🇵🇱 POLAND91NT♠4+2+8
-0.2Round 11🇵🇹 PORTUGAL283NT♣10=-1
-0.2Round 17🇮🇹 ITALY62♥♠K+1+0
-0.2Round 22🇮🇪 IRELAND213♠♥2+1+1
-0.2Round 23🇧🇪 BELGIUM142♠♥3=-5
-0.3Round 3🇵🇱 POLAND125♠♦J=+0
-0.4Round 3🇵🇱 POLAND164♥♦9+1+0
-0.4Round 6🇷🇸 SERBIA202♥♠K=+1
-0.4Round 11🇵🇹 PORTUGAL182♠♦4+1+0
-0.4Round 14🇬🇷 GREECE163♠x♣10-1+1
-0.5Round 10🇳🇱 NETHERLANDS83NT♠5-1-5
-0.5Round 12🇮🇱 ISRAEL73NT♣4+3+2
-0.6Round 8🇹🇷 TURKEY14♥♠9=+0
-0.6Round 12🇮🇱 ISRAEL152♥♠10-2-2
-0.6Round 14🇬🇷 GREECE144♠♣10=-1
-0.7Round 6🇷🇸 SERBIA271NT♠A+2-6
-0.7Round 12🇮🇱 ISRAEL93♥♠Q+1-1
-0.7Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND82♥♦6-1+6
-0.8Round 5🇩🇪 GERMANY111NT♠3-3-1
-0.8Round 8🇹🇷 TURKEY144♥♠K+1+0
-0.8Round 17🇮🇹 ITALY14♣♥9=-1
-0.8Round 23🇧🇪 BELGIUM61NT♦4-1+2
-0.9Round 2🇫🇷 FRANCE203♣♥Q+1+9
-0.9Round 5🇩🇪 GERMANY33♦♣A+1+0
-0.9Round 17🇮🇹 ITALY101♠♠3+2+0
-1.1Round 3🇵🇱 POLAND13NT♥9-2-11
-1.1Round 3🇵🇱 POLAND55♣x♥K-3-3
-1.2Round 12🇮🇱 ISRAEL32♠♦Q=+1
-1.3Round 3🇵🇱 POLAND42♣♥4+1+1
-1.3Round 3🇵🇱 POLAND144♥♠3=+1
-1.3Round 23🇧🇪 BELGIUM104♥♠Q=+0
-1.4Round 2🇫🇷 FRANCE252♣♥4+2+0
-1.5Round 5🇩🇪 GERMANY43NT♥10+3-1
-1.5Round 11🇵🇹 PORTUGAL275♦♠4=+11
-1.5Round 11🇵🇹 PORTUGAL292♥♦5+2-10
-1.5Round 17🇮🇹 ITALY94♠♥6+1+12
-1.5Round 17🇮🇹 ITALY121NT♥4=+1
-1.6Round 5🇩🇪 GERMANY13NT♣3+2+0
-1.6Round 5🇩🇪 GERMANY84♥♠7+2-11
-1.6Round 5🇩🇪 GERMANY154♥♠K=+1
-1.6Round 8🇹🇷 TURKEY22♠♦A+1+0
-1.8Round 23🇧🇪 BELGIUM113♥♣A=-1
-1.8Round 23🇧🇪 BELGIUM161NT♠2-1-10
-1.9Round 17🇮🇹 ITALY131NT♠4+1+0
-2.0Round 6🇷🇸 SERBIA191NT♠Q=-5
-2.0Round 6🇷🇸 SERBIA253NT♥J=+1
-2.0Round 17🇮🇹 ITALY162♠♥3-1+1
-2.0Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND164♠♣8=+0
-2.0Round 23🇧🇪 BELGIUM153♣♦3=+0
-2.1Round 2🇫🇷 FRANCE322♠♦4-2-5
-2.1Round 8🇹🇷 TURKEY93♣♠3-2+0
-2.2Round 22🇮🇪 IRELAND184♠♦5+1-1
-2.5Round 11🇵🇹 PORTUGAL172♠♥3+1-1
-2.6Round 3🇵🇱 POLAND74♠♦8+2-5
-2.6Round 22🇮🇪 IRELAND243NT♥7=+1
-2.6Round 23🇧🇪 BELGIUM123NT♦6+1-1
-2.7Round 10🇳🇱 NETHERLANDS54♣♦A=+0
-2.7Round 14🇬🇷 GREECE122♠♣3=-5
-2.7Round 15🇪🇸 SPAIN305♦♠K-2-8
-2.7Round 17🇮🇹 ITALY142♦♣J+1-5
-2.8Round 3🇵🇱 POLAND33NT♥K=+0
-2.8Round 17🇮🇹 ITALY74♥♣A=-13
-2.9Round 6🇷🇸 SERBIA234♠♥7=+1
-2.9Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND41NT♣J+1+0
-3.0Round 5🇩🇪 GERMANY164♥♣7+2-1
-3.0Round 10🇳🇱 NETHERLANDS164♠♣4-1-10
-3.0Round 12🇮🇱 ISRAEL63♦♥7-1-5
-3.1Round 11🇵🇹 PORTUGAL324♥♠A+2-11
-3.2Round 11🇵🇹 PORTUGAL243♠♣J-1-2
-3.2Round 15🇪🇸 SPAIN175♣♠A=+0
-3.3Round 12🇮🇱 ISRAEL114♠♦10=-7
-3.3Round 17🇮🇹 ITALY84♥♠3-1-10
-3.5Round 12🇮🇱 ISRAEL163NT♥6+1-1
-3.7Round 15🇪🇸 SPAIN262♠♥2+1-6
-3.7Round 15🇪🇸 SPAIN271NT♦4-2+0
-3.8Round 6🇷🇸 SERBIA173♥♦K=-6
-3.8Round 10🇳🇱 NETHERLANDS61♠♣Q+1+0
-3.8Round 15🇪🇸 SPAIN292♣♥K+1-6
-3.9Round 10🇳🇱 NETHERLANDS47♣♥J=+2
-3.9Round 14🇬🇷 GREECE64♥♠4+1+0
-3.9Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND111NT♥4-1-9
-4.0Round 6🇷🇸 SERBIA293♠♥2-1-6
-4.1Round 12🇮🇱 ISRAEL104♠♦A=-13
-4.1Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND72♠♦10+1+0
-4.5Round 11🇵🇹 PORTUGAL193NT♥5=+1
-4.8Round 17🇮🇹 ITALY26NT♠J-1-17
-4.9Round 2🇫🇷 FRANCE263NT♦10-2-2
-4.9Round 11🇵🇹 PORTUGAL304♥♦8-1-10
-4.9Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND103NT♠J-3-9
-4.9Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND151NTx♦K=-3
-5.1Round 6🇷🇸 SERBIA304♥♠Q+3-14
-5.1Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND94♠♣10=-8
-5.2Round 6🇷🇸 SERBIA183NT♥4-2-7
-5.2Round 6🇷🇸 SERBIA223NT♦4=+1
-5.3Round 2🇫🇷 FRANCE314♠♥A-2-7
-5.5Round 14🇬🇷 GREECE74♠♣4-1+0
-5.5Round 14🇬🇷 GREECE103NT♠K-2-8
-5.5Round 15🇪🇸 SPAIN243NT♠5=+0
-5.8Round 12🇮🇱 ISRAEL56♥♦8-1-13
-5.9Round 6🇷🇸 SERBIA214♠♦A-2-8
-6.0Round 6🇷🇸 SERBIA315♥♠A-3-12
-6.1Round 15🇪🇸 SPAIN223NT♣3=-10
-6.2Round 8🇹🇷 TURKEY165♣♠Q=-3
-6.2Round 22🇮🇪 IRELAND204♥♣Q-1-12
-6.3Round 8🇹🇷 TURKEY64♥♠J-1-6
-6.3Round 12🇮🇱 ISRAEL43NT♥3-3-9
-6.6Round 2🇫🇷 FRANCE173NT♣Q+1-10
-6.8Round 14🇬🇷 GREECE133♥♣A-3-5
-7.0Round 10🇳🇱 NETHERLANDS14♥♣J-1-10
-7.0Round 12🇮🇱 ISRAEL135♦♣A-2-8
-7.0Round 19🏴󠁧󠁢󠁥󠁮󠁧󠁿 ENGLAND134♠♦10=-1
-7.2Round 10🇳🇱 NETHERLANDS103NT♣6-1-6
-7.4Round 17🇮🇹 ITALY154♥♥2=-11
-7.4Round 22🇮🇪 IRELAND273♦♠A+1-10
-8.1Round 11🇵🇹 PORTUGAL215♦♣J=-6
-8.5Round 2🇫🇷 FRANCE232♠♠7+4-9
-8.6Round 15🇪🇸 SPAIN314♠♦6-1-12
-8.8Round 14🇬🇷 GREECE46♦x♣A-2-12
-10.4Round 2🇫🇷 FRANCE196♦♣7-1-10
-11.1Round 3🇵🇱 POLAND154♠x♣A-2-9