diff --git a/test/instance_static/emoji/test_pack_nonshared/nonshared.zip b/test/instance_static/emoji/test_pack_nonshared/nonshared.zip
new file mode 100644
index 000000000..148446c64
Binary files /dev/null and b/test/instance_static/emoji/test_pack_nonshared/nonshared.zip differ
diff --git a/test/instance_static/emoji/test_pack_nonshared/pack.json b/test/instance_static/emoji/test_pack_nonshared/pack.json
index b49b1efe7..b96781f81 100644
--- a/test/instance_static/emoji/test_pack_nonshared/pack.json
+++ b/test/instance_static/emoji/test_pack_nonshared/pack.json
@@ -4,8 +4,8 @@
         "homepage": "https://pleroma.social",
         "description": "Test description",
 
-        "fallblack-src": "https://example.com",
-        "fallback-src-sha256": "65CDCCBCA9388A68023519F997367783BE69ED42864398CAC568E56F65CE0E75",
+        "fallback-src": "https://nonshared-pack",
+        "fallback-src-sha256": "74409E2674DAA06C072729C6C8426C4CB3B7E0B85ED77792DB7A436E11D76DAF",
 
         "share-files": false
     },
diff --git a/test/web/emoji_api_controller_test.exs b/test/web/emoji_api_controller_test.exs
index bf56c1516..aa30e3058 100644
--- a/test/web/emoji_api_controller_test.exs
+++ b/test/web/emoji_api_controller_test.exs
@@ -42,9 +42,10 @@ test "downloading a shared pack from download_shared" do
     assert Enum.find(arch, fn {n, _} -> n == 'blank.png' end)
   end
 
-  test "downloading a shared pack from another instance via download_from, deleting it" do
+  test "downloading shared & unshared packs from another instance via download_from, deleting them" do
     on_exit(fn ->
       File.rm_rf!("test/instance_static/emoji/test_pack2")
+      File.rm_rf!("test/instance_static/emoji/test_pack_nonshared2")
     end)
 
     mock(fn
@@ -69,6 +70,12 @@ test "downloading a shared pack from another instance via download_from, deletin
         |> get(emoji_api_path(conn, :download_shared, "test_pack"))
         |> response(200)
         |> text()
+
+      %{
+        method: :get,
+        url: "https://nonshared-pack"
+      } ->
+        text(File.read!("test/instance_static/emoji/test_pack_nonshared/nonshared.zip"))
     end)
 
     admin = insert(:user, info: %{is_admin: true})
@@ -101,5 +108,36 @@ test "downloading a shared pack from another instance via download_from, deletin
            |> response(200) == "ok"
 
     refute File.exists?("test/instance_static/emoji/test_pack2")
+
+    # non-shared, downloaded from the fallback URL
+
+    conn = build_conn()
+
+    assert conn
+           |> put_req_header("content-type", "application/json")
+           |> assign(:user, admin)
+           |> post(
+             emoji_api_path(
+               conn,
+               :download_from
+             ),
+             %{
+               instance_address: "https://example.com",
+               pack_name: "test_pack_nonshared",
+               as: "test_pack_nonshared2"
+             }
+             |> Jason.encode!()
+           )
+           |> text_response(200) == "ok"
+
+    assert File.exists?("test/instance_static/emoji/test_pack_nonshared2/pack.json")
+    assert File.exists?("test/instance_static/emoji/test_pack_nonshared2/blank.png")
+
+    assert conn
+           |> assign(:user, admin)
+           |> delete(emoji_api_path(conn, :delete, "test_pack_nonshared2"))
+           |> response(200) == "ok"
+
+    refute File.exists?("test/instance_static/emoji/test_pack_nonshared2")
   end
 end