There is only few exception where I won't give an "estimate" on site I have prices for anything that I need in my ipad, I have excel worksheets that I can input the area for the project (retaining walls, patios, pool decks, etc.) answer few question and it would tell me all the amount of materials I need for such a project, including edge restrain, pool coping, geotxtile, etc. with labor for every task.
Why I do it? It's my business and only me knows my capabilities and limitations I know if I leave not giving out my printed or emailed estimate once I get to my office procastination will impede me to provide it.