The Scarlets scored four first-half tries but still needed a late Rhys Priestland penalty to see off Edinburgh 29-28 at Murrayfield.
If you had to put money on the opening tryscorer for each side, you might have opted for Tim Visser and George North. And the two prolific wingers didn't disappoint and registered a try apiece inside the opening quarter of an hour.
Visser broke the deadlock for the home side, drifting off his wing to crash onto a short pass from Chris Leck and touch down under the posts, before North replied moments later with a typical predator's try in the left-hand corner.
And centre Nick Reynolds, filling in for Jonathan Davies and Gareth Maule, added a second try for the visitors after an incisive break from scrum-half by Gareth Davies.
Fly-half Harry Leonard did knock over four penalties during the course of the first half to keep Edinburgh in the hunt but two further tries wrapped up a bonus point for the Scarlets before half-time.
North popped up in midfield and brushed off the attempted tackles of Stuart McInally and several others on his way to the line for his second of the match and Gareth Davies dived over from short range just before the break to make it 26-19.
The second half was a much tighter affair and, after Davies was sinbinned early on, Leonard continued his excellent form with the boot to take advantage of the Welshmen's ill-discipline and kick his side into the lead with three more penalties.
The Scarlets could consider themselves more than slightly unfortunate to be behind having scored four tries to Edinburgh's one but, despite pushing hard for a fifth try in the final quarter of an hour, some resolute defence from the hosts kept them at bay.
And the Scots clung onto their two-point advantage until two minutes from time when Priestland, on as a replacement for Aled Thomas, stepped up to break their resistance with the crucial three points and hand them their sixth successive defeat.
Pens: Leonard 7
Tries: Davies, Reynolds, North 2
Cons: Thomas 3
Edinburgh: 15 Greig Tonks, 14 Lee Jones, 13 Matt Scott, 12 Nick De Luca, 11 Tim Visser, 10 Harry Leonard, 9 Chris Leck, 8 Stuart McInally, 7 Ross Rennie, 6 David Denton, 5 Sean Cox (c), 4 Grant Gilchrist, 3 Willem Nel, 2 Andy Titterrell, 1 John Yapp.
Replacements: 16 Ross Ford, 17 Robin Hislop, 18 Lewis Niven, 19 Robert McAlpine, 20 Roddy Grant, 21 Richie Rees, 22 John Houston, 23 Tom Brown.
Scarlets: 15 Liam Williams, 14 George North, 13 Nick Reynolds, 12 Scott Williams, 11 Morgan Stoddart, 10 Aled Thomas, 9 Gareth Davies, 8 Rob McCusker (c), 7 Johnathan Edwards, 6 Aaron Shingler, 5 Tomas Vallejos, 4 Sione Timani, 3 Samson Lee, 2 Matthew Rees, 1 Phil John.
Replacements: 16 Ken Owens, 17 Shaun Hopkins, 18 Deacon Manu, 19 Richard Kelly, 20 Kieran Murphy, 21 Aled Davies, 22 Rhys Priestland, 23 Gareth Owen.
Referee: Marius Mitrea (Italy)