diff --git a/CHANGELOG.md b/CHANGELOG.md
index d7bd2801..bfa10012 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -52,12 +52,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 - `GetChatAdministrators` output type `ChatMember` => `Vec<ChatMember>` ([#73][pr73])
 - `reqwest` dependency bringing `native-tls` in even when `rustls` was selected ([#71][pr71])
 - Type of `{Restricted,Kicked}::until_date` fields: `i32` => `i64` ([#74][pr74])
+- Type of `PhotoSize::{width,height}` fields: `i32` => `u32` ([#100][pr100])
 
 [pr71]: https://github.com/teloxide/teloxide-core/pull/71
 [pr73]: https://github.com/teloxide/teloxide-core/pull/73
 [pr75]: https://github.com/teloxide/teloxide-core/pull/75
 [pr79]: https://github.com/teloxide/teloxide-core/pull/79
 [pr94]: https://github.com/teloxide/teloxide-core/pull/94
+[pr100]: https://github.com/teloxide/teloxide-core/pull/100
 
 ## [0.2.2] - 2020-03-22
 
diff --git a/src/types/photo_size.rs b/src/types/photo_size.rs
index 44ddfe32..e7527d19 100644
--- a/src/types/photo_size.rs
+++ b/src/types/photo_size.rs
@@ -16,10 +16,10 @@ pub struct PhotoSize {
     pub file_unique_id: String,
 
     /// Photo width.
-    pub width: i32,
+    pub width: u32,
 
     /// Photo height.
-    pub height: i32,
+    pub height: u32,
 
     /// File size.
     pub file_size: Option<u32>,