England's tour of India ended in a crushing 4-1 defeat, despite a promising start from Ben Stokes' side.
A number of players had great individual moments, but few were able to string together consistent performances throughout the series.
Telegraph Sport rates the two sides. Let us know if you agree with our player ratings in the comments below.
England
Zak Crawley
407 runs at 40.7
Finished with a duck, but England's only truly consistent batsman. Is their best batsman in two tough series, but needs to make money more ruthlessly. I should really regret leaving India without a century. 7/10
Ben Ducket
343 runs at 34.3
He looked exhausted at the end of a series where Ashwin got his number back. But played one great innings and was part of the most consistent part of the England team - the opening partnership. 6/10
Ollie Pope
315 runs at 31.5
An emblem for the England series: brilliant in Hyderabad, then fell horribly away, with Bumrah's brilliant yorker at Vizag starting the slide that ended with two lousy, reckless dismissals in Dharamsala. It remains a mystery, and England need more from their number 3 and vice-captain. 5/10
Joe Root
320 runs at 35.6; eight wickets on 51
The only Englishman to outshine his counterpart? That says as much about India's struggle to replace Kohli as it does about Root, who was brilliant in Ranchi but struggled elsewhere. Tired of bowling, Bazball or both? 6/10
Jonny Bairstow
238 runs at 23.8
Maybe he wouldn't have played if Brook was here, and the youngster will be straight back in at number five in July. Looked good but was incredibly loose, with seven scores between 25 and 39. 3/10
Ben Stokes
199 runs at 19.9; one wicket in 17
Bizarre. Started well with the bat but was a flop for all spinners towards the end. A few moments of brilliance and one absurd wicket. Captaincy was good, especially in the first half of the series, but that matters little at 4-1. 3/10
Ben Foakes
205 runs at 20.5; 12 catches, 4 stumpings
The main job was to keep things, and he did that very well. But what about his batting? Good if he has senior company, but such a struggle with the tail. It is not impossible that England are looking beyond both him and Bairstow. 5/10
The story continues
Rehan Ahmed
11 wickets at 44; 76 runs at 12.7
A brave youngster with so much potential, but it's all too soon for him, especially in what was essentially a four-man attack. Says he hates bowling girls, but he needs to learn to like boring things and improve his stock ball. 4/10
Tom Hartley
22 wickets at 36.1; 185 runs at 18.5
A great character also ensures a winning spell in Hyderabad after being mauled on the first day. Solid but unspectacular after that, and has an international future, but was largely outmatched by Bashir. Impressive at-bats fell away late in the series. 7/10
Highlight Wood
4 wickets at 77.8
Ugly numbers, but effective in Rajkot. Overall, he looked limited in conditions that required a little more craftsmanship, and England picked him one too many times. England lacked a workhorse seamer, which Wood is not. 4/10
Jack Leach
2 wickets on 48
A sad story. Bought back from a serious back problem, then suffered the most innocuous knee injury imaginable and was ruled out of the tour. Gallantly bowled in Hyderabad to help England win. 5/10
James Anderson
10 wickets at 33.5
Magical in Visakhapatnam, but never reaching those heights again. An achievement to play four Tests in a row, but at the age of 41 England could not play the long spells that England needed given how young their spinners were. 6/10
Shoaib Bashir
17 wickets at 33.4
A complete unknown to the tour but exceeded all expectations. Handled visa issues calmly and looked like a Test spinner at home, picking up two five-wicket hauls. One in which England must invest. 7/10
Ollie Robinson
0 wickets; 58 runs out of 29
Really disappointing bowling in his only match in Ranchi. He batted well but dropped a crucial catch and bowled too slowly to trouble the Indian batsmen. Needs to get fitter so he doesn't suffer from back problems and can utilize his abundant potential. 2/10
India
Yashasvi Jaiswal
712 runs at 79.9
Batted masterfully throughout, with one hallmark being his penchant for attacking spinners at the start of their spells: Jaiswal hit 26 sixes in his nine innings, including double centuries in Visakhapatnam and Rajkot. At 22, he feels like Indian cricket's next superstar. 9/10
Rohit Sharma
400 runs at 44.4
Languid elegance spawned two great centuries, in Rajkot and Dharamsala. Equally important was Rohit's quick-fire 55 in the second innings in Ranchi, which put India ahead in the chase before England fought back. Rohit's calm captaincy, especially his use of Kuldeep Yadav and empowerment of young players, seems a perfect fit for India as they look to go one step further from their defeats in the 2021 World Test Championship finals next year and 2023. 8/10
Shubman Gill
452 runs at 56.5
I resolved the issues against James Anderson to enjoy an excellent series. After being frustrating at times in his Test career, two centuries, a 91 in Rajkot and an assured 52 not looking to get the better of the chase in Ranchi, provided a sense of coming-of-age series for Gill. At the age of 24, he increasingly feels like a senior player. 8/10
KL Rahul
108 runs out of 54
An injury restricted Rahul to the opening Test in Hyderabad. But his maiden innings 86 should see him back into the side even if Virat Kohli is available again. 7/10
Devdutt Padikkal
65 runs on 65
The southpaw made a confident debut at number four in Dharamshala, using his 6ft 4in height to drive up; 23 years old, feels like a long-term Test player, if only a spot opens up. It's another sign of India's remarkable strength in depth. 7/10
Rajat Patidar
63 runs at 10.5
First-class pedigree and India's absence led to a Test debut at the age of 30. But in three Tests, Patidar has shown little sign of his qualities and will have to work hard in domestic cricket for another chance to win. 2/10
Shreyas Iyer
104 runs out of 26
After four scores between 13 and 35, Iyer was dropped after the second Test. For all his qualities, the loss of his India contract suggests the national team may have moved on. 5/10
Sarfaraz Khan
200 runs on 50
A phenomenal record - he averages 68 in first-class cricket - eventually resulted in a Test debut at the age of 26. Khan's fighting spirit, who scored at a strike rate of 75, introduced him to an extremely dangerous Test middle-order player with game-changing potential when India tour Australia this winter. 7/10
KS Bharat
92 runs out of 23
Ben Foakes from India? A sublime wicketkeeper, but India moved on after two Tests and preferred a more comprehensive batsman. 6/10
Dhruv Jurel
190 runs at 63.3
After replacing Bharat, Jurel emphatically confirmed India's decision. Player of the match in Ranchi, scoring 90 and 39 not out, and also held up well. Can India fit Jurel and Rishabh Pant in the same squad? 8/10
Ravindra Jadeja
232 runs at 38.7; 19 wickets at 25.1
An extraordinary Test cricketer at home. By Jadeja's standards, this wasn't even a particularly remarkable series. For anyone else it would have been: a crucial hundred, made from number five, in Rajkot, along with 19 wickets and electric fielding. 8/10
Ravichandran Ashwin
116 runs at 16.6; 26 wickets at 24.8
England decided to attack Ashwin like few dared. The result was an unusually high economic interest rate of 4.1; one suspects Ashwin cared more about his strike rate, which was just 36. After 14 wickets in the last three innings of the series, England looked as bereft against Ashwin as ever. Batting was a bit disappointing by his standards. 8/10
Axar Patel
133 runs at 33.3; 5 wickets at 41.2
Remains a very good cricketer but has struggled to replicate his impact against England in 2021 on flatter wickets. Expressed in the last three Tests, when India were imperious. 6/10
Kuldeep Yadav
19 wickets at 20.1
Bowled with great control and variety, increasing the pace. His wickets were not so much the result as the mystery of a left-arm wrist spinner, but his sheer excellence: if anything, Kuldeep's hold on England increased as the series progressed, taking five wickets in the first innings in Dharamshala, including Ollie Pope. with a google. Hitting has also improved. The biggest compliment for Kuldeep is that there is a real chance he should be India's first-choice spinner in Australia later this year. 9/10
Jasprit Bumrah
19 wickets at 16.9
Nine wickets in the Test in Visakhapatnam, including 6-46 in the first innings, turned the series around. The yorker that Ollie Pope bowled was a special sight to see. With equal speed, seam and swing (including reverse), clever variations and ruthless accuracy, Bumrah has built a solid reputation as one of the best bowlers ever. 9/10
Mohammed Siraj
Six wickets on 46
Played four tests but was not as accurate as normal. The first innings 4-84 in Rajkot, when Ashwin was home for personal reasons, was a crucial part of India's victory; elsewhere Siraj was harmless. 4/10
Akash Deep
Three wickets at 27.7
Great new ball spell on debut at Ranchi as he lofted the ball to take England's top three. I can expect to be more involved during the India tour. 6/10
Mukesh Kumar
One wicket in 70
He took just a solitary wicket in his only Test. At 30, time could be running out to have a substantial Test career. 3/10