Preloader doesnt appear until 70% is loaded

I have a single frame preloader on frame 1 of my site:

this.onEnterFrame = function() {
  percent = int(getBytesLoaded()/getBytesTotal()*100)+"%";
  if (getBytesLoaded() == getBytesTotal()) {
    delete this.onEnterFrame;

where percent is a variable of a dynamic text box.

but when i view the streaming graph the majority of the content is on frame 1. I had this problem before and I simply moved everything on the timline forward one frame and placed the loader on frame 1. But this time it doesnt work, frame 1 is still showing about 45kb-50kb of data and the preloader doesnt show until 70% is loaded. could someone give me a heads up? Its probably something quite simple (it usually is) but its been p1ssing me off for about 1.5 hours now.;(