海洋性気候で夏は海陸風が目立ち、冬の季節風は北海道西方としては比較的弱くなっている[13]。ケッペンの気候区分においては亜寒帯湿潤気候(Dfb)になっている。1年を通して気温の格差も小さく、比較的温暖な気候である[10]。暖候期の4・5月はフェーン現象により空気が乾燥して火災が発生しやすくなる[10]。また、春から初夏にかけて蜃気楼(上位蜃気楼)が発生しやすい時期であり、「高島おばけ」と呼ばれている[14]。7月下旬頃から本格的な夏となり、8月頃から雨量が多くなる[10]。寒候期になると南西の風が吹き離岸風となる[15]。日本海側気候の変化を示し、12月から2月にかけて曇りや雪の日が多くなる[15]。積雪量は北海道内で比較的多い方であり、継続日数は130日に及ぶ[15]。小樽港の潮汐の干満差は小さいが、北寄りの風が強まると波が高くなる[15]。港内外とも結氷することはなく、濃霧もまれである[15]。
小樽特別地域気象観測所(小樽市勝納町、標高25m)の気候
月1月2月3月4月5月6月7月8月9月10月11月12月年
最高気温記録 °C (°F)11.0
(51.8)15.7
(60.3)16.9
(62.4)27.6
(81.7)30.2
(86.4)31.9
(89.4)36.2
(97.2)34.9
(94.8)33.6
(92.5)28.8
(83.8)21.8
(71.2)15.2
(59.4)36.2
(97.2)
平均最高気温 °C (°F)?0.5
(31.1)0.2
(32.4)4.1
(39.4)10.9
(51.6)16.9
(62.4)20.4
(68.7)24.2
(75.6)25.6
(78.1)22.3
(72.1)15.9
(60.6)8.3
(46.9)1.6
(34.9)12.5
(54.5)
日平均気温 °C (°F)?3.1
(26.4)?2.7
(27.1)0.8
(33.4)6.5
(43.7)12.1
(53.8)16.0
(60.8)20.2
(68.4)21.7
(71.1)18.1
(64.6)11.8
(53.2)4.9
(40.8)?1.1
(30)8.8
(47.8)
平均最低気温 °C (°F)?5.8
(21.6)?5.7
(21.7)?2.4
(27.7)2.6
(36.7)7.9
(46.2)12.5
(54.5)17.1
(62.8)18.4
(65.1)14.3
(57.7)7.9
(46.2)1.6
(34.9)?3.8
(25.2)5.4
(41.7)
最低気温記録 °C (°F)?18.0
(?0.4)?17.2
(1)?14.1
(6.6)?6.4
(20.5)0.0
(32)4.5
(40.1)9.0
(48.2)8.9
(48)2.6
(36.7)?1.4
(29.5)?9.1
(15.6)?13.5
(7.7)?18.0
(?0.4)
降水量 mm (inch)138.1
(5.437)106.6
(4.197)87.3
(3.437)56.4
(2.22)53.7
(2.114)55.6
(2.189)93.6
(3.685)131.3
(5.169)131.7
(5.185)123.0
(4.843)152.4
(6)151.9
(5.98)1,281.6
(50.457)
降雪量 cm (inch)157
(61.8)130
(51.2)80
(31.5)7
(2.8)0
(0)0
(0)0
(0)0
(0)0
(0)0
(0)36
(14.2)142
(55.9)556
(218.9)
平均降水日数 (?0.5 mm)26.022.219.712.910.79.210.210.912.716.321.324.5196.8
平均降雪日数29.825.722.87.60.20.00.00.00.01.614.928.5131.2
% 湿度71706664697881787369697172
平均月間日照時間63.578.2128.8175.5200.6170.4163.3167.7159.8139.779.659.01,586.2
出典:気象庁 (平均値:1991年-2020年、極値:1943年-現在)[16][17]
小樽測候所(勝納町)・1961 - 1990年平均の気候 小樽市の人口は記録のある明治元年の2,230人から始まり、1964年(昭和39年)9月末の住民基本台帳人口で207,093人の最大値を記録した後は減少が続き、2015年(平成27年)3月末の住民基本台帳人口は124,122人となり、この60年間で95,000人を超える人口が減少している[19]。近年は市外転出による社会減少のみならず、死亡数の増加と出生数の減少による自然減少が拡大している[19]。2022年(令和4年)には、103年ぶりの人口10万人台となった。
月1月2月3月4月5月6月7月8月9月10月11月12月年
平均最高気温 °C (°F)?1.0
(30.2)?0.5
(31.1)3.4
(38.1)10.5
(50.9)16.5
(61.7)19.9
(67.8)23.7
(74.7)25.5
(77.9)21.6
(70.9)15.3
(59.5)7.9
(46.2)1.8
(35.2)12.05
(53.68)
日平均気温 °C (°F)?3.7
(25.3)?3.4
(25.9)0.2
(32.4)6.2
(43.2)11.5
(52.7)15.5
(59.9)19.6
(67.3)21.5
(70.7)17.3
(63.1)11.1
(52)4.4
(39.9)?1.0
(30.2)8.27
(46.88)
平均最低気温 °C (°F)?6.6
(20.1)?6.4
(20.5)?2.9
(26.8)2.3
(36.1)7.2
(45)11.8
(53.2)16.3
(61.3)18.1
(64.6)13.5
(56.3)7.1
(44.8)1.1
(34)?3.8
(25.2)4.81
(40.66)
出典:World Climate Otaru, Japan[18]
人口
小樽市と全国の年齢別人口分布(2005年)小樽市の年齢・男女別人口分布(2005年)
■紫色 ― 小樽市
■緑色 ― 日本全国■青色 ― 男性
■赤色 ― 女性
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}