Sofia Vergara has been named the highest-earning actress on Tv for a third straight year.

The Modern Family star earned a whopping $37 million (Gbp21.8 million) in the past 12 months, according to Forbes magazine, thanks to her business and endorsement deals with companies like K-Mart and talent management and entertainment-marketing firm Latin World Entertainment. She also picked up a healthy $325,000 (Gbp191,000)-per-episode paycheque for the Tv comedy.

Her fortune more than doubles second placed Mariska Hargitay, who scored $13 million (Gbp7.6 million) largely from her role in top Tv cop drama Law & Order: Svu.

Big Bang Theory star Kaley Cuoco-Sweeting takes the third spot with $11 million (Gbp6.5 million), while Julianna Margulies, Ellen Pompeo and Cobie Smulders all tie for fourth with $10 million (Gbp5.9 million).

Alyson Hannigan rounds out the top five.