Diego Castro was the Perth Glory hero as his double secured a 3-1 home A-League victory over second-placed Brisbane Roar.

Perth have won three straight matches, after captain Castro netted either side of a fine Bruno Fornaroli volley.

Jack Hingert headed in on the stroke of half-time to ensure the match was level at the interval, but Brisbane fell to defeat despite racking up 20 attempts on goal.

On his A-League debut, Perth substitute Kosuke Ota had a hand in creating the second-half goals from Fornaroli and Castro for the free-scoring hosts, who have now netted 18 times across their first six games, an A-League record.

Glory have three games in hand on most of the teams above them and are up to fifth in the table, two points behind Brisbane and six adrift of leaders Central Coast Mariners.

It is now four matches without a win for Brisbane, who hit the woodwork twice and saw impressive performances from Corey Brown and Jay O'Shea – who combined for 10 chances created – go unrewarded.