diff --git a/app/views/contents/courseware/bookmarks.php b/app/views/contents/courseware/bookmarks.php
index 9543faf812734cd6e7c85c458086cba514331e21..14975e57f3f8fbca697655c48f4ae9d4670c8439 100755
--- a/app/views/contents/courseware/bookmarks.php
+++ b/app/views/contents/courseware/bookmarks.php
@@ -4,7 +4,12 @@
         <? foreach($bookmarks as $bookmark) :?>
             <li class="tile <?= htmlReady($bookmark['element']['payload']['color'])?>">
                 <a href="<?= htmlReady($bookmark['url'])?>">
-                    <div class="preview-image" style="background-image: url(<?= htmlReady($bookmark['element']->getImageUrl()) ?>)" ></div>
+                    <? if ($element->getImageUrl() === null) : ?>
+                        <div class="preview-image default-image"></div>
+                    <? else : ?>
+                        <div class="preview-image" style="background-image: url(<?= htmlReady($element->getImageUrl()) ?>)" ></div>
+                    <? endif; ?>
+
                     <div class="description">
                         <header><?= htmlReady($bookmark['element']['title']) ?></header>
                         <div class="description-text-wrapper">
@@ -26,4 +31,4 @@
     <? else: ?>
         <?= MessageBox::info(_('Sie haben noch keine Lesezeichen angelegt.')); ?>
     <? endif; ?>
-</div>
\ No newline at end of file
+</div>
diff --git a/app/views/contents/courseware/courses_overview.php b/app/views/contents/courseware/courses_overview.php
index 3311fc1815b828089208357002c8ab3587a746ca..4ec423a90ae88e3ca2e9f895cdc051ac3ae17dee 100644
--- a/app/views/contents/courseware/courses_overview.php
+++ b/app/views/contents/courseware/courses_overview.php
@@ -6,7 +6,11 @@
             <? foreach($semester['coursewares'] as $element) :?>
                 <li class="tile <?= htmlReady($element['payload']['color'])?>">
                     <a href="<?= URLHelper::getLink('dispatch.php/course/courseware/?cid='.$element['range_id'].'#/structural_element/'.$element['id']) ?>">
-                        <div class="preview-image" style="background-image: url(<?= htmlReady($element->getImageUrl()) ?>)" ></div>
+                        <? if ($element->getImageUrl() === null) : ?>
+                            <div class="preview-image default-image"></div>
+                        <? else : ?>
+                            <div class="preview-image" style="background-image: url(<?= htmlReady($element->getImageUrl()) ?>)" ></div>
+                        <? endif; ?>
                         <div class="description">
                             <header><?= htmlReady($element['title']) ?></header>
                             <div class="description-text-wrapper">
diff --git a/app/views/contents/courseware/index.php b/app/views/contents/courseware/index.php
index 4ebc595bf7ef292c020cce636e9def93003fcc2d..5682e67e5cbb8044a8c07feee62c6fb63ba46362 100755
--- a/app/views/contents/courseware/index.php
+++ b/app/views/contents/courseware/index.php
@@ -1,11 +1,14 @@
-
 <div class="cw-content-projects">
-    <? if(!empty($elements)): ?>
+    <? if (!empty($elements)): ?>
         <ul class="cw-tiles">
-            <? foreach($elements as $element) :?>
+            <? foreach ($elements as $element) :?>
                 <li class="tile <?= htmlReady($element['payload']['color'])?>">
                     <a href="<?= URLHelper::getLink('dispatch.php/contents/courseware/courseware#/structural_element/'.$element['id']) ?>">
-                        <div class="preview-image" style="background-image: url(<?= htmlReady($element->getImageUrl()) ?>)" ></div>
+                        <? if ($element->getImageUrl() === null) : ?>
+                            <div class="preview-image default-image"></div>
+                        <? else : ?>
+                            <div class="preview-image" style="background-image: url(<?= htmlReady($element->getImageUrl()) ?>)" ></div>
+                        <? endif; ?>
                         <div class="description">
                             <header><?= htmlReady($element['title']) ?></header>
                             <div class="description-text-wrapper">
@@ -21,7 +24,7 @@
                 </li>
             <? endforeach; ?>
         </ul>
-    <? else: ?>
+    <? else : ?>
         <div class="cw-contents-overview-teaser">
             <div class="cw-contents-overview-teaser-content">
                 <header><?= _('Ihre persönlichen Lernmaterialien')?></header>
@@ -37,4 +40,4 @@
             </div>
         </div>
     <? endif; ?> 
-</div>
\ No newline at end of file
+</div>
diff --git a/resources/assets/stylesheets/scss/courseware.scss b/resources/assets/stylesheets/scss/courseware.scss
index 48fae7902695b7baaa2d07ef4c01f24f6ea8005f..cd4c5c83bf373dc17a21c15783aec07428ce25b2 100755
--- a/resources/assets/stylesheets/scss/courseware.scss
+++ b/resources/assets/stylesheets/scss/courseware.scss
@@ -4129,8 +4129,11 @@ cw tiles
         width: 100%;
         background-size: auto 180px;
         background-repeat: no-repeat;
-        background-color: $black;
+        background-color: $content-color-20;
         background-position: center;
+        &.default-image {
+                @include background-icon(courseware, clickable, 128);
+        }
     }
     .description {
         height: 220px;
diff --git a/resources/vue/components/courseware/CoursewareTableOfContentsBlock.vue b/resources/vue/components/courseware/CoursewareTableOfContentsBlock.vue
index 3ff9841e3d833c909a7f615dbace9828ba8dbd9e..e35e041962f2aa3aa51e62baf69f53d563a9291c 100755
--- a/resources/vue/components/courseware/CoursewareTableOfContentsBlock.vue
+++ b/resources/vue/components/courseware/CoursewareTableOfContentsBlock.vue
@@ -36,6 +36,7 @@
                         <router-link :to="'/structural_element/' + child.id" :title="child.attributes.title">
                             <div
                                 class="preview-image"
+                                :class="[hasImage(child) ? '' : 'default-image']"
                                 :style="getChildStyle(child)"
                             ></div>
                             <div class="description">
@@ -169,7 +170,10 @@ export default {
             } else {
                 return {};
             }
-        }
+        },
+        hasImage(child) {
+            return child.relationships?.image?.data !== null;
+        },
     },
 };
 </script>