I want to print a map to scale on 11x17 paper. I understand you can change the scale bar to 'numeric' in print composer, and then set the scale under properties for the map.

What I want to know is what units those are, and how to change them. I want to print at 1:4,000 (one inch = 4,000 feet), but when I do that it is wildly off, showing something closer to 1:300(?). Everything is in EPSG 2229, which I understand to be in feet. My page properties have the paper size set for A3.

What am I missing?

  • 1
    Where do you change the properties, can you show screenshots of the options that you change, more context to your question ? Commented Jan 29, 2020 at 8:47
  • 1:4000 is not 1 inch to 4000 feet it's 1 inch to 4000 inches or 1 foot to 4000 feet. That's just how scales work - you can type the scale you want into the scale box in the main window. Then refresh the print layout.
    – Ian Turton
    Commented Jan 29, 2020 at 14:13
  • But surely it would be useful to print a map and be able to use a scale. I’d like one inch on the paper to be equal to X number if feet in the real world (I don’t want to measure a city block in inches). If the ‘numeric’ scale can’t do this, is the only other option to use a regular scale bar, and by trial and error make the first increment equal an inch on paper by measuring against the dimensions (that are in mm by default) across the top? I feel like printing to a useable scale would be more common of a thing in a mapping application? Commented Jan 29, 2020 at 15:41
  • 2
    You say the scale is "wildly off" but if you specified 1:4,000 then as Ian says this corresponds to 1 inch = 4,000 inches which is the same as saying 1 inch = 4,000/12 feet = 333.33 feet. Commented Jan 29, 2020 at 23:31

2 Answers 2


As Leigh Bettenay said 1 inch:4000 inch = 1 inch : 333.33 feet

If you want to customize your numeric scale bar, you can use a text field with expressions to build a scale bar. You can achieve this by giving your map an item id (under Item properties of the map).

And then using something like:

[%'1 : ' || round(map_get(item_variables('yourmap'), 'map_scale')/12,0)%]

With yourmap being the item_id of your map.

Edit: I think this works only in QGis 3.x


Here we go:

In Print Composer, right-click the composition and go to Page Properties. Make sure you convert your desired page size to mm and get it right (11 x 17 is 279 x 432).

Under Item Properties -> Main Properties for your map, set the desired scale. As Leigh Bettenay said, 4,000 will mean 1 inch on your paper will mean 4,000 inches on the ground.

So if you want a useful 1 inch = X mile scale on your map for example, you just have to do some math. 5,280 feet in a mile x 12 inches in a foot = 63,360, so if you set it at that, and then under Scalebar Properties, choose miles for units, and choose fixed width set at 1 unit, you'll have a 1 inch scalebar segment that represents 1 mile on the ground.

Obviously this can be halved or multiplied, or used with other units, but that's the gist of it. Thanks for everyone's help!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.