diff --git a/Tests/LibWeb/Screenshot/images/svg-path-offset-rounding-ref.png b/Tests/LibWeb/Screenshot/images/svg-path-offset-rounding-ref.png
new file mode 100644
index 00000000000..93daec0df6c
Binary files /dev/null and b/Tests/LibWeb/Screenshot/images/svg-path-offset-rounding-ref.png differ
diff --git a/Tests/LibWeb/Screenshot/reference/svg-path-offset-rounding-ref.html b/Tests/LibWeb/Screenshot/reference/svg-path-offset-rounding-ref.html
new file mode 100644
index 00000000000..fe3a0ce02ac
--- /dev/null
+++ b/Tests/LibWeb/Screenshot/reference/svg-path-offset-rounding-ref.html
@@ -0,0 +1,9 @@
+
+
diff --git a/Tests/LibWeb/Screenshot/svg-path-offset-rounding.html b/Tests/LibWeb/Screenshot/svg-path-offset-rounding.html
new file mode 100644
index 00000000000..262a7523b0e
--- /dev/null
+++ b/Tests/LibWeb/Screenshot/svg-path-offset-rounding.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
diff --git a/Userland/Libraries/LibWeb/Painting/SVGPathPaintable.cpp b/Userland/Libraries/LibWeb/Painting/SVGPathPaintable.cpp
index eb7a407329d..debc3390edf 100644
--- a/Userland/Libraries/LibWeb/Painting/SVGPathPaintable.cpp
+++ b/Userland/Libraries/LibWeb/Painting/SVGPathPaintable.cpp
@@ -65,10 +65,9 @@ void SVGPathPaintable::paint(PaintContext& context, PaintPhase phase) const
auto const* svg_node = layout_box().first_ancestor_of_type();
auto svg_element_rect = svg_node->paintable_box()->absolute_rect();
- // FIXME: This should not be trucated to an int.
DisplayListRecorderStateSaver save_painter { context.display_list_recorder() };
- auto offset = context.floored_device_point(svg_element_rect.location()).to_type().to_type();
+ auto offset = context.rounded_device_point(svg_element_rect.location()).to_type().to_type();
auto maybe_view_box = svg_node->dom_node().view_box();
auto paint_transform = computed_transforms().svg_to_device_pixels_transform(context);