diff --git a/.mailmap b/.mailmap
index 2d43d329c..d77258002 100644
--- a/.mailmap
+++ b/.mailmap
@@ -12,3 +12,4 @@ bastei <bastei@users.noreply.github.com> bastei <none>
 Konrad Graefe <konradgraefe@aol.com> kgraefe <konradgraefe@aol.com>
 <lukas@owncloud.com> <lukas@statuscode.ch>
 <dev@ibboard.co.uk> <github@ibboard.co.uk>
+<anoymouserver+github@mailbox.org> <anoymouserver@users.noreply.github.com>
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d77821678..ddfacfbe0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,7 @@
 All notable changes to this project will be documented in this file.
 
 ## Unreleased
+- Remove deprecated YouTube playlist API
 
 ## 15.1.0-rc1
 
diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php
index b22775924..a262e2a03 100644
--- a/lib/AppInfo/Application.php
+++ b/lib/AppInfo/Application.php
@@ -36,7 +36,6 @@ use OCA\News\Db\MapperFactory;
 use OCA\News\Db\ItemMapper;
 use OCA\News\Fetcher\FeedFetcher;
 use OCA\News\Fetcher\Fetcher;
-use OCA\News\Fetcher\YoutubeFetcher;
 use OCP\User\Events\BeforeUserDeletedEvent;
 use Psr\Container\ContainerInterface;
 use Psr\Log\LoggerInterface;
@@ -81,7 +80,6 @@ class Application extends App implements IBootstrap
 
             // register fetchers in order, the most generic fetcher should be
             // the last one
-            $fetcher->registerFetcher($container->get(YoutubeFetcher::class));
             $fetcher->registerFetcher($container->get(FeedFetcher::class));
             return $fetcher;
         });
diff --git a/lib/Fetcher/YoutubeFetcher.php b/lib/Fetcher/YoutubeFetcher.php
deleted file mode 100644
index 7c197a1b1..000000000
--- a/lib/Fetcher/YoutubeFetcher.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-/**
- * Nextcloud - News
- *
- * This file is licensed under the Affero General Public License version 3 or
- * later. See the COPYING file.
- *
- * @author    Bernhard Posselt <dev@bernhard-posselt.com>
- * @copyright Bernhard Posselt 2012, 2014
- */
-
-namespace OCA\News\Fetcher;
-
-class YoutubeFetcher implements IFeedFetcher
-{
-
-    private $feedFetcher;
-
-    public function __construct(FeedFetcher $feedFetcher)
-    {
-        $this->feedFetcher = $feedFetcher;
-    }
-
-
-    /**
-     * Build YouTube URL
-     *
-     * @param string $url
-     *
-     * @return string
-     */
-    private function buildUrl(string $url): string
-    {
-        $baseRegex = '%(?:https?://|//)?(?:www.)?youtube.com';
-        $playRegex = $baseRegex . '.*?list=([^&]*)%';
-
-        if (preg_match($playRegex, $url, $matches)) {
-            $id = $matches[1];
-            return 'http://gdata.youtube.com/feeds/api/playlists/' . $id;
-        } else {
-            return $url;
-        }
-    }
-
-
-    /**
-     * Check if the URL is a youtube URL by reformatting it.
-     *
-     * @param string $url the url that should be fetched
-     *
-     * @return bool
-     */
-    public function canHandle(string $url): bool
-    {
-        return $this->buildUrl($url) !== $url;
-    }
-
-
-    /**
-     * Fetch a feed from remote
-     *
-     * @inheritdoc
-     */
-    public function fetch(
-        string $url,
-        bool $favicon,
-        ?string $lastModified,
-        bool $fullTextEnabled,
-        ?string $user,
-        ?string $password
-    ): array {
-        $transformedUrl = $this->buildUrl($url);
-
-        $result = $this->feedFetcher->fetch(
-            $transformedUrl,
-            $favicon,
-            $lastModified,
-            $fullTextEnabled,
-            $user,
-            $password
-        );
-
-        // reset feed url so we know the correct added url for the feed
-        $result[0]->setUrl($url);
-
-        return $result;
-    }
-}
diff --git a/tests/Unit/Fetcher/YoutubeFetcherTest.php b/tests/Unit/Fetcher/YoutubeFetcherTest.php
deleted file mode 100644
index e08d35f16..000000000
--- a/tests/Unit/Fetcher/YoutubeFetcherTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/**
- * Nextcloud - News
- *
- * This file is licensed under the Affero General Public License version 3 or
- * later. See the COPYING file.
- *
- * @author    Bernhard Posselt <dev@bernhard-posselt.com>
- * @copyright Bernhard Posselt 2012, 2014
- */
-
-namespace OCA\News\Tests\Unit\Fetcher;
-
-use \OCA\News\Db\Feed;
-use OCA\News\Fetcher\FeedFetcher;
-use OCA\News\Fetcher\Fetcher;
-use OCA\News\Fetcher\YoutubeFetcher;
-
-use PHPUnit\Framework\TestCase;
-
-class YoutubeFetcherTest extends TestCase
-{
-
-    /**
-     * Mocked fetcher.
-     *
-     * @var Fetcher
-     */
-    private $fetcher;
-
-    /**
-     * Mocked Feed Fetcher.
-     *
-     * @var FeedFetcher
-     */
-    private $feedFetcher;
-
-    public function setUp(): void
-    {
-        $this->feedFetcher = $this->getMockBuilder(FeedFetcher::class)
-            ->disableOriginalConstructor()
-            ->getMock();
-        $this->fetcher = new YoutubeFetcher($this->feedFetcher);
-    }
-
-
-    public function testCanHandleFails()
-    {
-        $url = 'http://youtube.com';
-        $this->assertFalse($this->fetcher->canHandle($url));
-    }
-
-
-    public function testCanHandle()
-    {
-        $url = 'http://youtube.com/test/?test=a&list=b&b=c';
-        $this->assertTrue($this->fetcher->canHandle($url));
-    }
-
-
-    public function testPlaylistUrl()
-    {
-        $url = 'http://youtube.com/something/weird?a=b&list=sobo3&c=1';
-        $transformedUrl = 'http://gdata.youtube.com/feeds/api/playlists/sobo3';
-        $favicon = true;
-        $modified = 3;
-        $fullTextEnabled = false;
-        $user = 5;
-        $password = 5;
-        $feed = new Feed();
-        $feed->setUrl('http://google.de');
-        $result = [$feed, []];
-
-        $this->feedFetcher->expects($this->once())
-            ->method('fetch')
-            ->with(
-                $this->equalTo($transformedUrl),
-                $this->equalTo($favicon),
-                $this->equalTo($modified),
-                $this->equalTo($fullTextEnabled),
-                $this->equalTo($user)
-            )
-            ->will($this->returnValue($result));
-        $feed = $this->fetcher->fetch($url, $favicon, $modified, $fullTextEnabled, $user, $password);
-
-        $this->assertEquals($url, $result[0]->getUrl());
-    }
-
-
-}