🇨🇦 ROCHE Michael · CANADA
vs par split: bidding -0.50 · play +0.03
Strength of schedule: opponents averaged -0.25/bd (an easy draw) → opponent-adjusted -0.30/bd
Card play — on target: opening leads 80.0% #55 of 100 · declarer play 78.0% #31 of 100 · defence 91.1% #9 of 100
| vs NT | vs a suit | |
|---|---|---|
| Opening leads | 75.0% (12) | 82.1% (28) |
| Declarer play | 80.0% (10) | 77.4% (31) |
| Defence | 88.0% (25) | 92.6% (54) |
Opening leads by suit led: ♠ 80.0% (10) · ♥ 69.2% (13) · ♦ 100.0% (6) · ♣ 81.8% (11)
vs par by strain: NT -1.67 (49) · a suit +0.10 (110)
vs par by level: part-score +0.13 (67) · game -0.40 (86) · slam -7.67 (6)
By role: declaring -0.09/bd (-3.35 vs par · 78) · defending -0.01/bd (+2.27 vs par · 82)
By vulnerability: vulnerable +0.12/bd (-0.30 vs par · 80) · not vulnerable -0.21/bd (-0.64 vs par · 80)
By round↑ top
| Round | Partner | Opponents | Room | Bds | Butler | Avg | vs par |
|---|---|---|---|---|---|---|---|
| Round 2 | J.Rayner | E.Tse – R.Ling | Open | 16 | -1.4 | -0.09 | +2.44 |
| Round 3 | J.Rayner | L.Kabbaj – R.Benzakour | Closed | 16 | +17.8 | +1.11 | +0.88 |
| Round 4 | J.Rayner | J.Dorfan – N.Vorster | Closed | 16 | +15.7 | +0.98 | +0.94 |
| Round 5 | J.Rayner | I.Sime – J.Murdoch | Closed | 16 | +5.6 | +0.35 | -0.44 |
| Round 7 | J.Rayner | HENG A. K. – Y.Tan | Closed | 16 | -6.6 | -0.41 | -0.75 |
| Round 9 | J.Rayner | M.Hartono – M.Sawiruddin | Open | 16 | -20.5 | -1.28 | -3.00 |
| Round 12 | J.Rayner | H.Janssens – F.Bigdeli | Closed | 16 | -35.3 | -2.21 | -2.12 |
| Round 14 | J.Rayner | R.Amoedo – L.Rocha | Open | 16 | -2.8 | -0.17 | -1.81 |
| Round 16 | J.Rayner | P.Grenthe – P.Vanhoutte | Closed | 16 | -14.8 | -0.93 | -0.12 |
| Round 17 | J.Rayner | A.Vaidya – M.Hooda | Closed | 16 | +34.7 | +2.17 | -0.69 |
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.
| Butler | Round | Opponents | Bd | Contract | Lead | Res | vs par |
|---|---|---|---|---|---|---|---|
| +10.3 | Round 3 | 🇲🇦 MOROCCO | 6 | 4♥ | ♦A | = | +13 |
| +10.1 | Round 9 | 🇮🇩 INDONESIA | 1 | 5♣ | ♠2 | = | +6 |
| +9.5 | Round 12 | 🇧🇪 BELGIUM | 22 | 6♠ | ♣7 | = | +0 |
| +9.4 | Round 14 | 🇧🇷 BRAZIL | 25 | 2♣ | ♠Q | +2 | +5 |
| +9.3 | Round 2 | 🇭🇰 CHINA HONG KONG | 32 | 4♥ | ♣Q | = | +13 |
| +7.5 | Round 17 | 🇮🇳 INDIA | 25 | 4♥ | ♦10 | -1 | +10 |
| +7.4 | Round 7 | 🇸🇬 SINGAPORE | 8 | 6♥ | ♠8 | = | -11 |
| +7.3 | Round 17 | 🇮🇳 INDIA | 17 | 4♥ | ♣7 | +1 | +1 |
| +7.3 | Round 17 | 🇮🇳 INDIA | 22 | 1NTx | ♦Q | -4 | -11 |
| +7.0 | Round 7 | 🇸🇬 SINGAPORE | 4 | 4♠ | ♥Q | = | +3 |
| +6.6 | Round 2 | 🇭🇰 CHINA HONG KONG | 31 | 1♥x | ♣J | -2 | +9 |
| +6.2 | Round 4 | 🇿🇦 SOUTH AFRICA | 26 | 3NT | ♥3 | +2 | +11 |
| +6.2 | Round 17 | 🇮🇳 INDIA | 21 | 4♠ | ♥9 | -2 | +7 |
| +6.1 | Round 4 | 🇿🇦 SOUTH AFRICA | 29 | 2NT | ♠J | +2 | +2 |
| +6.1 | Round 14 | 🇧🇷 BRAZIL | 26 | 3♦ | ♣A | +2 | +10 |
| +5.1 | Round 4 | 🇿🇦 SOUTH AFRICA | 28 | 4♠ | ♣4 | -1 | +5 |
| +4.9 | Round 3 | 🇲🇦 MOROCCO | 8 | 3♠ | ♥K | = | +7 |
| +4.9 | Round 3 | 🇲🇦 MOROCCO | 16 | 2♦x | -1 | +5 | |
| +4.6 | Round 3 | 🇲🇦 MOROCCO | 4 | 4♥ | ♠5 | -1 | +6 |
| +4.1 | Round 3 | 🇲🇦 MOROCCO | 11 | 4♠ | ♣J | -2 | +6 |
| +4.1 | Round 12 | 🇧🇪 BELGIUM | 19 | 2♥ | ♠9 | +1 | +10 |
| +4.1 | Round 14 | 🇧🇷 BRAZIL | 20 | 2NT | ♠3 | -1 | +5 |
| +3.9 | Round 5 | 🏴 SCOTLAND | 6 | 4♥ | ♦5 | -3 | +1 |
| +3.8 | Round 2 | 🇭🇰 CHINA HONG KONG | 20 | 2♣ | ♦4 | +1 | +0 |
| +3.5 | Round 2 | 🇭🇰 CHINA HONG KONG | 26 | 2♠ | ♦2 | = | +6 |
| +3.5 | Round 12 | 🇧🇪 BELGIUM | 27 | 3NT | ♣5 | +2 | +0 |
| +3.5 | Round 17 | 🇮🇳 INDIA | 19 | 4♥ | ♦9 | = | -1 |
| +3.3 | Round 4 | 🇿🇦 SOUTH AFRICA | 18 | 4♣ | ♦8 | -4 | +7 |
| +3.3 | Round 17 | 🇮🇳 INDIA | 23 | 7NT | ♣J | = | +0 |
| +3.2 | Round 14 | 🇧🇷 BRAZIL | 21 | 4♥ | ♠10 | +1 | -12 |
| +2.9 | Round 3 | 🇲🇦 MOROCCO | 10 | 1♥ | ♣5 | +2 | -10 |
| +2.9 | Round 5 | 🏴 SCOTLAND | 15 | 4♠ | ♣K | +1 | +0 |
| +2.6 | Round 9 | 🇮🇩 INDONESIA | 11 | 5♣ | ♠3 | = | -11 |
| +2.5 | Round 2 | 🇭🇰 CHINA HONG KONG | 30 | 4♦ | ♠A | -1 | +5 |
| +2.4 | Round 4 | 🇿🇦 SOUTH AFRICA | 21 | 3♠ | ♥10 | -1 | +5 |
| +2.4 | Round 9 | 🇮🇩 INDONESIA | 15 | 3NT | ♣K | +1 | +1 |
| +2.1 | Round 7 | 🇸🇬 SINGAPORE | 16 | 3NT | ♥2 | +2 | -12 |
| +2.1 | Round 14 | 🇧🇷 BRAZIL | 22 | 4♠ | ♥9 | +1 | +0 |
| +2.1 | Round 17 | 🇮🇳 INDIA | 32 | 2♠ | ♦7 | +3 | -9 |
| +2.0 | Round 5 | 🏴 SCOTLAND | 9 | 4♠ | ♣J | -2 | +11 |
| +2.0 | Round 7 | 🇸🇬 SINGAPORE | 5 | 3♣ | ♦5 | = | +1 |
| +2.0 | Round 16 | 🇫🇷 FRANCE | 1 | 3♦ | ♠K | = | +1 |
| +1.9 | Round 7 | 🇸🇬 SINGAPORE | 3 | 5♣ | ♠4 | = | +3 |
| +1.9 | Round 9 | 🇮🇩 INDONESIA | 7 | 2♠ | ♥9 | +1 | +1 |
| +1.8 | Round 14 | 🇧🇷 BRAZIL | 18 | 1NT | ♥3 | -2 | -1 |
| +1.7 | Round 5 | 🏴 SCOTLAND | 3 | 3♣ | ♠5 | -1 | -2 |
| +1.5 | Round 9 | 🇮🇩 INDONESIA | 13 | 2♥ | ♠7 | = | -1 |
| +1.5 | Round 12 | 🇧🇪 BELGIUM | 18 | 4♠x | ♥K | -2 | +11 |
| +1.4 | Round 3 | 🇲🇦 MOROCCO | 2 | 3NT | ♣10 | -1 | +5 |
| +1.3 | Round 3 | 🇲🇦 MOROCCO | 12 | 3NT | ♣6 | +2 | +0 |
| +1.3 | Round 5 | 🏴 SCOTLAND | 1 | 4♠ | ♦K | = | +0 |
| +1.3 | Round 9 | 🇮🇩 INDONESIA | 3 | 3NT | ♦9 | +1 | +1 |
| +1.3 | Round 16 | 🇫🇷 FRANCE | 9 | 4♥ | ♣10 | +1 | +0 |
| +1.1 | Round 4 | 🇿🇦 SOUTH AFRICA | 24 | 3♦ | ♣J | +1 | +7 |
| +1.1 | Round 5 | 🏴 SCOTLAND | 2 | 3♦ | ♣5 | = | -1 |
| +1.1 | Round 14 | 🇧🇷 BRAZIL | 19 | 4♠ | ♥7 | +2 | +1 |
| +0.9 | Round 2 | 🇭🇰 CHINA HONG KONG | 19 | 3NT | ♥A | +2 | +1 |
| +0.9 | Round 4 | 🇿🇦 SOUTH AFRICA | 25 | 4♥ | ♣2 | +2 | -11 |
| +0.8 | Round 5 | 🏴 SCOTLAND | 4 | 4♠ | ♦K | = | +1 |
| +0.8 | Round 17 | 🇮🇳 INDIA | 26 | 5♣ | ♥10 | = | -13 |
| +0.7 | Round 14 | 🇧🇷 BRAZIL | 24 | 2♦ | ♥A | -1 | +4 |
| +0.7 | Round 16 | 🇫🇷 FRANCE | 11 | 2♠ | ♥4 | = | +0 |
| +0.6 | Round 4 | 🇿🇦 SOUTH AFRICA | 17 | 3♠ | ♣7 | = | +7 |
| +0.6 | Round 7 | 🇸🇬 SINGAPORE | 11 | 3NT | ♠4 | = | +1 |
| +0.6 | Round 12 | 🇧🇪 BELGIUM | 25 | 5♥ | ♦4 | = | +0 |
| +0.6 | Round 12 | 🇧🇪 BELGIUM | 29 | 3NT | ♥K | = | -2 |
| +0.6 | Round 17 | 🇮🇳 INDIA | 18 | 2♥ | ♥9 | +2 | +10 |
| +0.5 | Round 9 | 🇮🇩 INDONESIA | 6 | 3NT | ♣7 | +1 | +0 |
| +0.5 | Round 16 | 🇫🇷 FRANCE | 6 | 4♠ | ♦8 | -1 | +4 |
| +0.4 | Round 4 | 🇿🇦 SOUTH AFRICA | 27 | 3♣ | ♦2 | +1 | -7 |
| +0.4 | Round 4 | 🇿🇦 SOUTH AFRICA | 31 | 2♦ | ♦2 | -2 | -1 |
| +0.3 | Round 16 | 🇫🇷 FRANCE | 5 | 4♠ | ♣3 | = | -1 |
| +0.3 | Round 16 | 🇫🇷 FRANCE | 7 | 3NT | ♣3 | +3 | -13 |
| +0.2 | Round 9 | 🇮🇩 INDONESIA | 14 | 4♠ | ♣3 | = | +0 |
| +0.2 | Round 16 | 🇫🇷 FRANCE | 4 | 4♥ | ♥J | -1 | +12 |
| +0.1 | Round 2 | 🇭🇰 CHINA HONG KONG | 23 | 4♠ | ♥4 | +2 | +13 |
| +0.1 | Round 5 | 🏴 SCOTLAND | 5 | 4♥ | ♦7 | = | +0 |
| +0.1 | Round 5 | 🏴 SCOTLAND | 10 | 3NT | ♦3 | = | -2 |
| +0.1 | Round 5 | 🏴 SCOTLAND | 12 | 3NT | ♥4 | +2 | +1 |
| +0.1 | Round 14 | 🇧🇷 BRAZIL | 30 | 3NT | ♣6 | +1 | -11 |
| +0.1 | Round 16 | 🇫🇷 FRANCE | 12 | 4♠ | ♥A | = | +0 |
| +0.1 | Round 17 | 🇮🇳 INDIA | 20 | Pass | -4 | ||
| +0.0 | Round 4 | 🇿🇦 SOUTH AFRICA | 20 | 4♥ | ♠K | +1 | +0 |
| -0.0 | Round 17 | 🇮🇳 INDIA | 28 | 2♠ | ♣8 | = | -1 |
| -0.1 | Round 5 | 🏴 SCOTLAND | 8 | 4♥ | ♠2 | +1 | +0 |
| -0.1 | Round 9 | 🇮🇩 INDONESIA | 8 | 2♣ | ♠6 | -1 | -4 |
| -0.1 | Round 14 | 🇧🇷 BRAZIL | 27 | 2♠ | ♣3 | +2 | +6 |
| -0.2 | Round 2 | 🇭🇰 CHINA HONG KONG | 21 | 3♦ | ♣J | -1 | +10 |
| -0.2 | Round 3 | 🇲🇦 MOROCCO | 15 | 3♠ | -1 | -1 | |
| -0.3 | Round 7 | 🇸🇬 SINGAPORE | 7 | 4♥ | ♦A | +1 | +0 |
| -0.3 | Round 17 | 🇮🇳 INDIA | 24 | 3♦ | ♣4 | +1 | +0 |
| -0.3 | Round 17 | 🇮🇳 INDIA | 30 | 3NT | ♠7 | +1 | +0 |
| -0.4 | Round 4 | 🇿🇦 SOUTH AFRICA | 19 | 5♣x | ♥A | -1 | +0 |
| -0.5 | Round 7 | 🇸🇬 SINGAPORE | 9 | 4♥ | ♠2 | -1 | +10 |
| -0.5 | Round 9 | 🇮🇩 INDONESIA | 16 | 4♠ | ♣6 | -4 | +3 |
| -0.6 | Round 5 | 🏴 SCOTLAND | 7 | 3NT | ♠9 | = | +0 |
| -0.6 | Round 5 | 🏴 SCOTLAND | 11 | 3NT | ♦Q | = | -11 |
| -0.7 | Round 2 | 🇭🇰 CHINA HONG KONG | 25 | 2♣ | ♣J | +3 | +6 |
| -0.7 | Round 4 | 🇿🇦 SOUTH AFRICA | 23 | 4♥ | ♣2 | = | +0 |
| -0.7 | Round 9 | 🇮🇩 INDONESIA | 12 | 1NT | ♣4 | = | +0 |
| -0.7 | Round 14 | 🇧🇷 BRAZIL | 28 | 3NT | ♠J | = | +1 |
| -0.7 | Round 17 | 🇮🇳 INDIA | 29 | 4♦ | ♠6 | +1 | -1 |
| -0.8 | Round 2 | 🇭🇰 CHINA HONG KONG | 28 | 4♥ | ♠8 | +1 | -14 |
| -0.9 | Round 3 | 🇲🇦 MOROCCO | 9 | 1NT | ♣Q | +3 | +6 |
| -0.9 | Round 4 | 🇿🇦 SOUTH AFRICA | 22 | 2NT | ♠3 | -1 | +1 |
| -0.9 | Round 7 | 🇸🇬 SINGAPORE | 1 | 4♥ | ♦8 | +2 | +11 |
| -0.9 | Round 16 | 🇫🇷 FRANCE | 16 | 3NT | ♠5 | +3 | +11 |
| -1.1 | Round 9 | 🇮🇩 INDONESIA | 5 | 4♠ | ♥7 | +1 | -2 |
| -1.1 | Round 17 | 🇮🇳 INDIA | 27 | 1NT | ♣3 | +2 | +7 |
| -1.2 | Round 16 | 🇫🇷 FRANCE | 14 | 3♦ | ♣6 | -1 | -2 |
| -1.3 | Round 16 | 🇫🇷 FRANCE | 15 | 1NT | ♥5 | +1 | -1 |
| -1.6 | Round 17 | 🇮🇳 INDIA | 31 | 3♦ | ♥K | -2 | -6 |
| -1.7 | Round 3 | 🇲🇦 MOROCCO | 5 | 2♠ | ♠2 | -3 | +10 |
| -1.7 | Round 5 | 🏴 SCOTLAND | 13 | 2♠ | ♦Q | +1 | +0 |
| -1.7 | Round 16 | 🇫🇷 FRANCE | 3 | 1NT | ♦J | = | -6 |
| -1.9 | Round 3 | 🇲🇦 MOROCCO | 7 | 2♥ | ♦K | -1 | +1 |
| -1.9 | Round 3 | 🇲🇦 MOROCCO | 13 | 4♥ | ♦J | -2 | -8 |
| -2.0 | Round 5 | 🏴 SCOTLAND | 14 | 3NT | ♥4 | +1 | +0 |
| -2.0 | Round 7 | 🇸🇬 SINGAPORE | 2 | 3NT | ♥3 | +1 | +1 |
| -2.1 | Round 2 | 🇭🇰 CHINA HONG KONG | 22 | 4♦ | ♥6 | = | -1 |
| -2.1 | Round 14 | 🇧🇷 BRAZIL | 29 | 2NT | ♥2 | = | +0 |
| -2.1 | Round 16 | 🇫🇷 FRANCE | 10 | 2♦ | ♣A | +1 | -1 |
| -2.2 | Round 3 | 🇲🇦 MOROCCO | 3 | 5♣ | ♠5 | -1 | -6 |
| -2.2 | Round 7 | 🇸🇬 SINGAPORE | 10 | 4♠ | ♦4 | +1 | +0 |
| -2.3 | Round 3 | 🇲🇦 MOROCCO | 1 | 1NT | ♥6 | +2 | -6 |
| -2.3 | Round 16 | 🇫🇷 FRANCE | 8 | 2NT | ♠4 | = | -1 |
| -2.6 | Round 2 | 🇭🇰 CHINA HONG KONG | 27 | 3NT | ♠5 | +3 | +7 |
| -2.6 | Round 12 | 🇧🇪 BELGIUM | 30 | 3NT | ♠9 | +2 | +0 |
| -2.7 | Round 7 | 🇸🇬 SINGAPORE | 13 | 3♣ | ♠A | -1 | -5 |
| -2.7 | Round 12 | 🇧🇪 BELGIUM | 23 | 2♥ | ♥5 | +2 | -8 |
| -2.8 | Round 2 | 🇭🇰 CHINA HONG KONG | 24 | 2♠ | ♥A | = | +0 |
| -3.3 | Round 12 | 🇧🇪 BELGIUM | 21 | 2NT | ♠8 | -2 | -7 |
| -3.4 | Round 5 | 🏴 SCOTLAND | 16 | 3♣ | ♠7 | = | -5 |
| -3.4 | Round 16 | 🇫🇷 FRANCE | 13 | 3NT | ♣10 | -3 | -5 |
| -3.5 | Round 12 | 🇧🇪 BELGIUM | 28 | 1NTx | ♣A | -1 | -2 |
| -3.8 | Round 14 | 🇧🇷 BRAZIL | 31 | 4♥ | ♦A | -1 | -9 |
| -3.9 | Round 4 | 🇿🇦 SOUTH AFRICA | 32 | 3♠ | ♥Q | = | +0 |
| -4.0 | Round 9 | 🇮🇩 INDONESIA | 10 | 3♣ | ♠J | -2 | -2 |
| -4.1 | Round 7 | 🇸🇬 SINGAPORE | 6 | 1NT | ♥Q | = | -6 |
| -4.1 | Round 7 | 🇸🇬 SINGAPORE | 12 | 3NT | ♥6 | +1 | +0 |
| -4.3 | Round 2 | 🇭🇰 CHINA HONG KONG | 18 | 2NT | ♦7 | -2 | -6 |
| -4.7 | Round 7 | 🇸🇬 SINGAPORE | 15 | 3♥ | ♣3 | = | -7 |
| -4.9 | Round 4 | 🇿🇦 SOUTH AFRICA | 30 | 6♦ | ♥J | -2 | -11 |
| -4.9 | Round 12 | 🇧🇪 BELGIUM | 32 | 4♠ | ♣K | +1 | +0 |
| -5.0 | Round 12 | 🇧🇪 BELGIUM | 26 | 4♠ | ♣2 | +1 | +0 |
| -5.5 | Round 3 | 🇲🇦 MOROCCO | 14 | 5♥ | ♣10 | +1 | -14 |
| -5.5 | Round 12 | 🇧🇪 BELGIUM | 17 | 4♥ | ♣Q | -1 | -10 |
| -6.1 | Round 7 | 🇸🇬 SINGAPORE | 14 | 4♥ | ♠7 | = | -1 |
| -6.8 | Round 14 | 🇧🇷 BRAZIL | 17 | 4♠ | ♥J | -1 | -5 |
| -7.3 | Round 2 | 🇭🇰 CHINA HONG KONG | 17 | 4♥ | ♣8 | -1 | -11 |
| -7.3 | Round 2 | 🇭🇰 CHINA HONG KONG | 29 | 3NT | ♣K | = | +1 |
| -7.3 | Round 16 | 🇫🇷 FRANCE | 2 | 4♥ | ♣5 | = | +0 |
| -8.0 | Round 12 | 🇧🇪 BELGIUM | 24 | 6♦ | ♠10 | -1 | -11 |
| -8.0 | Round 14 | 🇧🇷 BRAZIL | 32 | 3NT | ♣2 | = | -10 |
| -8.1 | Round 12 | 🇧🇪 BELGIUM | 20 | 3NT | ♥7 | = | +0 |
| -8.6 | Round 9 | 🇮🇩 INDONESIA | 2 | 2♣ | ♥2 | -1 | -11 |
| -9.9 | Round 14 | 🇧🇷 BRAZIL | 23 | 6♥ | ♦9 | -1 | -13 |
| -11.1 | Round 9 | 🇮🇩 INDONESIA | 4 | 2♠x | ♣A | -3 | -12 |
| -11.5 | Round 12 | 🇧🇪 BELGIUM | 31 | 3NTx | ♣K | -2 | -15 |
| -14.9 | Round 9 | 🇮🇩 INDONESIA | 9 | 3NT | ♥J | -1 | -17 |