DISCLAIMER: I don't use Freelance Websites to find work.
You should know your skill, and what you can easily do, and what might take you longer. Quote on this, giving a range. If you know that a project takes a minimum of 2 hours, you quote that as the lowest possible. Then, figure out how long a project with vague details can take, and use that as a ball park figure (i.e. 8 hours, possibly more if there are significant issues).
When I give quotes in person, the client will get a ball-park figure, and that's what we work on. Once I have more information, I let them know I can give them a much better estimate. If they demand a price right now, and they want a final figure, walk away. This client will likely do lots of scope-creep on the project, which will annoy you and make you hate your job.
Regular projects will have hiccups; the best projects have only minor hiccups. I have yet to have a single project (when I was a sub-contractor, when I was a freelancer, when I was an employee, and even when I hired people) where there were no hiccups whatsoever. They aren't usually show-stoppers, but they may add a bit of time from what the "quoter" thought it would be. Almost always it was within range of the quote anyways.
Once you go through the quote process, if you run into anything that could delay the project, or cost the client more money to fix, then you need to communicate that as soon as humanly possible to the client, so they are prepared. Regardless of if you think you're the boss, you're not the one paying for the project (hopefully), so approval is required.
In essence (I see I'm drifting), give a range, with the disclaimer that it could be more, it could be less, but that you need more information. Before you talk to the client, ensure you have a written list of questions to ask, and take notes.