Glasgow Hawks kicked off the match. But it was Melrose who took the lead. Joe Helps scored a penalty in the eighth minute.
And, ten minutes later, the home side extended their lead. Murdo McAndrew went over for a try after Sam Pecqueur created some space up the left wing. And Helps added the conversion to give Melrose a 10-0 lead.
But Hawks bounced back to equalise the score at half-time.
Brendan McGroarty touched down for the visitors in the 23rd minute and his try was converted by Gregor Hunter, who added a penalty in the 34th minute to make the score 10 a-piece at the break.
Melrose were awarded a penalty try at the start of the second half after George Horne was ruled to have deliberately knocked the ball out of play to prevent a score. And Helps had a simple conversion to put the home side 17-10 in front.
And, a couple of minutes later, Melrose restored their ten point lead when Helps slotted over a penalty from the half way line.
Hawks refused to admit defeat and continued to claw back the score.
Hunter and Horne both added penalties for Glasgow in the 58th and 72nd minutes, respectively.
A further effort from Hunter from the halfway line fell just short of the posts.
Melrose: Tom Galbraith, Nyle Godsmark, Bruce Dick, Joe Helps, Sam Pecqueur, Jason Baggott, Murdo McAndrew; Jamie Bhatti, Richard Ferguson, Ruairi McLeod, James Head, Ally Grieve, Neil Irvine-Hess, Grant Runciman, Graeme Dodds: Replacements: Cameron Mackay, Dan Elkington, Peter Eccles, Richard Taylor, Sam Chalmers.
Hawks: George Horne, Tom Steven, Brendan McGroarty, David Milne, Robert Beattie, Gregor Hunter, Paddy Boyer; Steven Findlay, Jack MacFarlane, Gary Strain, Andrew Kirkland, Andrew Linton, Andrew Redmayne, Fin Gillies, Andy Hill. Replacements: Stephen Leckie, Brendan Cullinane, Craig Brodie, Ally Maclay, Jack Steele.