Ignacio Mieres enjoyed a fine game on his Warriors debut and racked-up four penalties as he controlled the game from the centre but it wasn't enough to secure a second win in four days.
Director of Rugby Ryan fielded a completely different starting 15 to the side which beat Rotherham Titans on Wednesday as Warriors went in search of their second victory of pre-season.
The match began in frantic fashion as the two sides exchanged high kicks in the opening minute.
Cardiff, who included a string of international players in their starting line-up, won an early penalty as they heaped pressure on the Warriors backline and the home side breathed a sigh of relief when a try from full-back Tim Williams was ruled out.
Cardiff's forward pack looked to take grasp of the match early on but following a spell of possession in the Warriors 22, the home side defended brilliantly and forced a penalty.
Ryan's men were pinned back in their own half for much of the first ten minutes but from their first real spell of possession they won a penalty, which new fly-half Ignacio Mieres finally converted after twice resetting the ball.
Former Warriors coach Phil Davies, who was returning to Sixways for the first time since taking the Director of Rugby role at Cardiff Arms Park in 2012, was nearly given reason to celebrate minutes later after Lloyd Williams' tap and go provided Cardiff with another scoring opportunity.
And his side didn't have to wait long for their first try of the match as flanker Macauley Cook touched down in the corner after 17 minutes following good work from the Cardiff backline.
The early try only acted as bait for Warriors, however, and they grabbed an instant reply as Josh Matavesi dived over in the corner after superb play from Chris Jones and Ed Shervington.
Filo Paulo was sent to the sin-bin after a high tackle on Mike Williams from the resulting kick-off and the home side looked to make the most of their one-man advantage.
Matavesi and Taulava took turns to burst through the centre before Mieres scored his second penalty of the afternoon following an infringement at the scrum.
Davies replied with his second penalty of the afternoon after 29 minutes to take the score to 11-8 as Cardiff searched for a win in their first pre-season game of the campaign.
Matavesi, who produced a sensational performance, danced through the opposition backline once again but the attack was brought to an end after a penalty being awarded against Worcester.
Warriors looked like an assured side after a summer of changes at Sixways and Argentinian star Mieres added another penalty five minutes before the break as he dominated proceedings.
The two sides continued to battle for territory as the first period came to a close and young centre Max Stelling ensured Warriors went into the break ahead with a last-ditch tackle on Robin Copeland.
Davies did, however, have time to add his third penalty and his side then looked to attack from their own 22 with time up on the clock before the ball was eventually kicked out of play.
Cardiff began the second-half in much the same fashion as the first as they looked to get back into the game and Sam Betty and Richard de Carpentier both made big tackles in the opening exchanges.
The Rabo Direct PRO 12 side introduced their up-and-coming Welsh fly-half Rhys Patchell to proceedings at the break and the youngster levelled the scores at 14-14 after 43 minutes with a penalty from close range.
Patchell then almost gave his side the lead with a penalty from his own half minutes later but his kick dropped wide of the posts.
Josh Drauniniu, Ben Howard and Jeremy Su'a were all brought on at half-time but Cardiff fly-half Patchell aimed to take a hold of the game - his third penalty in the space of ten minutes thrashing wide of the posts.
Howard did burst into the game midway through the second-half as he raced 60 metres upfield before being halted in the Cardiff 22.
But it was the Welsh side who took the lead after 56 minutes as Smith took advantage of a handling error from Drauniniu to touch down under the posts.
Patchell took the score to 21-14 with a successful conversion before Mieres closed the gap with three points of his own on the hour mark.
As the second-half wore on Warriors began to assert themselves but were let off when Patchell's penalty from his own 10 metres line dropped inches short.
Euan Murray was sent to the sin-bin but Warriors continued to battle and full-back Pennell showed great composure, calling a mark under extreme pressure.
As time ticked away Warriors couldn't force that one last attack that may have made the result a very different one and Cardiff left Sixways with victory by the smallest of margins.
10m: Mieres pen 3-0
17m: Cook try 3-5
19m: Matavesi try 8-5
27m: Mieres pen 11-5
29m: Davies pen 11-8
35m: Mieres pen 14-8
40m: Davies pen 14-11
43m: Patchell pen 14-14
56m: Smith try 14-19
57m: Patchell con 14-21
60m: Mieres pen 17-21
Warriors: 01 Jeremy Becasseau (Andrew 67), 02 Ed Shervington, 03 John Andress (Murray 53), 04 Mike Williams (Schofield 64), 05 Chris Jones, 06 Richard de Carpentier (Andress 71), 07 Sam Betty, 08 Semisi Taulava (Tyas 60), 09 Paul Hodgson (Su'a 40), 10 Ignacio Mieres (Gray 70), 11 David Lemi (Drauniniu 40), 12 Josh Matavesi, 13 Max Stelling, 14 Tom Chapman (Howard 40), 15 Chris Pennell (C)
Replacements: 16 Nick Seymour, 17 Paul Andrew, 18 Euan Murray, 19 Dean Schofield, 20 Andrew Boyce, 21 Jeremy Su'a, 22 Danny Gray, 23 Ben Howard, 24 James Tyas, 25 Josh Drauniniu