Toby Greene booted four goals as the GIANTS kept their finals hopes alive while significantly denting Fremantle's own aspirations with a 70-point victory at GIANTS Stadium on Saturday.

Jake Riccardi stepped up after Jesse Hogan's late withdrawal due to calf tightness, booting a career-high five goals to better Greene's four as the GIANTS won 16.10 (106) to 5.6 (36).

The GIANTS' triumph means they have won three of their past four games, climbing temporarily into 11th spot on the ladder and past the Dockers, who slumped to back-to-back defeats having won four in a row prior to their bye. The margin was Fremantle's biggest loss in their three-and-a-half years under Justin Longmuir.

The GIANTS led from start to finish, with Fremantle's opening-term struggles continuing as the GIANTS raced to a 23-point quarter-time lead.

The Dockers were kept goalless in the first quarter and went 35 minutes without a goal from late in the second until Caleb Serong's major with two minutes left in the third.

Adam Kingsley's side enjoyed a 68-44 inside-50 dominance, winning contested possessions 238-216 with a lopsided 16-6 centre-clearance count as Fremantle missed imposing ruckman Sean Darcy. The GIANTS also moved the ball smoothly in transition and scored effectively from turnovers, while the Dockers never got the game of their terms.

Josh Kelly returned after a three-week absence due to a hamstring injury to record a game-high 33 disposals and three goals, while Stephen Coniglio and Tom Green had 31 touches each, with the latter having 19 contested possessions and six clearances.

Fremantle had few winners, with Serong its best ball-winner with 32 disposals and a goal, while Jordan Clark offered rebound off half-back with 22 disposals and 514m gained.

Andrew Brayshaw was quiet in the first half but finished with 29 disposals and Nat Fyfe had a limited influence with 15 disposals, two marks and a goal.

Green played a lead role in the GIANTS' fast start with 11 disposals in the first term as the GIANTS kicked four goals to none, including two from Riccardi after Greene had opened the scoring with a 35m set shot.

Fremantle attempted to arrest control and managed two of the next three goals, with Fyfe kicking truly after a fine two-grab mark over Jack Buckley. But the GIANTS' ability to capitalise on Fremantle's turnovers helped them pull clear again, with Kelly kicking a fine running goal from 50m.

The Dockers had territory early in the third but were blunt in attack. Greene showed them how its done, marking strongly before slotting a 45m set shot.

The GIANTS kicked four goals to one for the term, moving 51 points clear at the final change.

But the GIANTS kept the foot to the floor, with Riccardi kicking his fifth after a quick rebound from a Fyfe turnover, before Kelly added another two goals to put an exclamation mark on his return and claim the side's biggest win under Kingsley.

Greene Brings Up 300th Career Goal

Greene needed three goals on Saturday to reach the 300-goal milestone for his career and he achieved that before half-time. Fremantle matched up the two-time All-Australian with Luke Ryan, who shut down former Coleman Medalist Jeremy Coleman last month, but Greene proved too good for the Dockers defender. Greene brought up his 300th goal with a brilliant piece of forward craft, instinctively roving the pack from a contested mark and slotting on the run to open up a 30-point lead at half-time. With 36 goals for the year, Greene appears on his way to another All-Australian blazer.

GIANTS                                  4.1    8.4    12.7   16.10 (106)
FREMANTLE                                0.2    3.4     4.4    5.6 (36)

GOALS

GIANTS: Riccardi 5, Greene 4, Kelly 3, Brown 2, Whitfield, Lloyd
Fremantle: Sturt 2, Walters, Fyfe, Serong

BEST

GIANTS: Kelly, Greene, Green, Riccardi, Coniglio, Briggs, Idun
Fremantle: Serong, Clark, Brayshaw, Henry, Sturt

INJURIES

GIANTS: Haynes (ankle)
Fremantle: Nil

LATE CHANGES

GIANTS: Jesse Hogan (calf tightness), replaced in the selected side by Aaron Cadman
Fremantle: Michael Frederick (ankle), replaced in the selected side by Sam Sturt

SUBSTITUTES

GIANTS: Ryan Angwin (replaced Nick Haynes in the fourth quarter)
Fremantle: Neil Erasmus (replaced Matthew Johnson in the third quarter)