Sangakkara resumed at Chelmsford on 177, with Surrey 334-7, and had time to bring up his double century before the visitors were all out for 369.
Essex lost Alastair Cook for 36 and fellow opener Nick Browne made 52.
But Dan Lawrence (78 not out) batted through to stumps with Ravi Bopara (33 not out) and saw Essex to 215-3.
Lawrence, 19, and all-rounder Bopara's stand is so far worth 89, but on a decent Chelmsford track the hosts will surely be looking for a big first-innings' lead.
Sri Lanka great Sangakkara, who scored his fifth-successive Championship century on Friday, struck 27 fours in his sublime 321-ball innings and now has 792 runs at an average of more than 113 this summer.
The 39-year-old was the last man to fall in Surrey's innings when he was caught by Neil Wagner off Simon Harmer and was given a standing ovation as he left the field in what will be his final season.
Essex were briefly wobbling at 126-3 in their innings once Tom Westley nicked Sam Curran behind, but Lawrence and Bopara batted throughout the evening session.
Essex's batsman put their side in a good position after Surrey's Kumar Sangakkara fell for exactly 200 on day two of their County Championship match.