How does a model like Kate Upton maintain her figure? She'll tell you: With focus, discipline, and portion control.

In an interview with the Evening Standard, Kate describes what she eats on a "good day."

Breakfast, 7 a.m.: Scrambled eggs (one white, one whole) with spinach and green tea.
Snack, 10 a.m.: 10 raw almonds and a green juice.
Lunch: Quinoa with herb-crusted grilled chicken and grilled vegetables.
Snack, 4 p.m.: Protein bar.
Dinner, 7 p.m.: Sashimi or a kale salad with grilled salmon and cashews.

Why this regimen? "For me, it's about being strong, having the strength to work ten-hour days, and eating healthily," she says.

While Kate sticks to her good-day diet most of the time, she'll go on a 48-hour juice cleanse before a shoot. And when she lets loose, she'll have Tequila Tuesday or eat something fried and salty.

Voluptuous and body-proud, you might be surprised to find that Kate is also body-shy. "I always am!" she tells the Evening Standard. "Well, I am and I'm not at the same time. Every person has insecurities. But this is the body I was given, I appreciate it and I try to take care of it every day as best I can, but I always enjoy my life. So I'm not going to let my insecurities stop me from enjoying life."

WATCH: Kate Upton on set with ELLE

<!-- Start of Brightcove Player -->

<div style="display:none">

</div>

<!--
By use of this code snippet, I agree to the Brightcove Publisher T and C 
found at https://accounts.brightcove.com/en/terms-and-conditions/. 
-->

<script type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"></script>

<object id="myExperience3704785975001" class="BrightcoveExperience">
  <param name="bgcolor" value="#FFFFFF" />
  <param name="width" value="486" />
  <param name="height" value="412" />
  <param name="playerID" value="72342324001" />
  <param name="playerKey" value="AQ~~,AAAAABn4dxs~,AY7gyox5PDgoFzRVhsm8l3GdwN2mXG9_" />
  <param name="isVid" value="true" />
  <param name="dynamicStreaming" value="true" />
    
  <param name="@videoPlayer" value="3704785975001" />
</object>

<!-- 
This script tag will cause the Brightcove Players defined above it to be created as soon
as the line is read by the browser. If you wish to have the player instantiated only after
the rest of the HTML is processed and the page load is complete, remove the line.
-->
<script type="text/javascript">brightcove.createExperiences();</script>

<!-- End of Brightcove Player -->

Photo above: Getty Images

From the editors of Cosmopolitan.com

From: Cosmopolitan US