diff --git a/lib/sites/parser.pm b/lib/sites/parser.pm
index 4fa9138cb018eb310ebfd64aef600a206534cb91..e29343abb0d25048717fd489cc7892446d8894a4 100644
--- a/lib/sites/parser.pm
+++ b/lib/sites/parser.pm
@@ -30,7 +30,7 @@ sub parse {
 		$content{'site'} = 'youtube';
         $content{'url'} = 'https://www.youtube.com/watch?v='.$1;
 	}
-	elsif ($msg =~ m#(^|[^!])https?://soundcloud.com/([a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+)#) {
+	elsif ($msg =~ m#(^|[^!])https?://soundcloud.com/([a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+)(?:\?.+)?#) {
 		my $url = 'https://www.soundcloud.com/'.$2;
 		eval { %content = soundcloud::get($url) };
 		$content{'site'} = 'soundcloud';