In the pack, openside flanker Sarah Goss, the Black Ferns Sevens skipper, was involved and accurate in most of what she did, while lock Charmaine Smith put in a quality 80-minute shift.
Cocksedge and fullback Selica Winiata, who scored an outstanding solo try from a grubber, were the standouts in the backs. Portia Woodman saw very little ball on the wing, but hit like a hammer in the tackle, with her diminutive opposite Magali Harvey often in the firing line.
"Canada really gave it to us. They are a physical team," said captain and hooker Fiao'o Fa'amausili, who scored the opening try from a perfectly executed lineout drive.
In the earlier international in Porirua, England cleaned out Australia 53-10, with Sarah McKenna running in a hat-trick.
The Blacks Ferns now face the Australian Wallaroos on Tuesday in Christchurch, their first international in that city for 20 years. Canada will look to take down world No 2 England.
Black Ferns 28 (Kendra Cocksedge 2, Fiao'o Fa'amausili, Selica Winiata tries; Cocksedge 4 con)
Canada 16 (Jacey Grusnick, Elissa Alarie tries; Magali Harvey 2 pen)
HT: 14-8