SkiaSharp 4.0 is stable, co-maintained by Uno Platform and Microsoft, and brings a newer engine, cleaner API, and up to 30% faster rendering for Uno Platform apps — all on a predictable release cadence you can finally plan around.
If you've built a .NET app that draws anything — text, geometry, images, a custom control that needed just a little more than the platform gave you — you've almost certainly touched SkiaSharp. Maybe you knew it. Maybe you didn't. Either way, it's been quietly doing the heavy lifting under some of the most-used UI stacks in the .NET ecosystem for over a decade. And with SkiaSharp 4.0 now stable, it just took its biggest step forward in years. Let's unpack what's new.
Why SkiaSharp Matters
Cross-Platform UI Rendering
Here's the thing about drawing APIs — even on a single OS, they don't agree with each other. GDI+ on Windows behaves differently than DirectX on the very same machine. Now multiply that inconsistency across iOS, Android, Windows, macOS, Linux, and the web.
SkiaSharp erases that problem. One rendering API, every platform .NET touches — pixel-perfect text, hardware-accelerated geometry, consistent color output, no lowest-common-denominator compromises. If .NET runs there, SkiaSharp can draw there — consistently.
Powering Many Tech Stacks
SkiaSharp isn't some bespoke rendering engine dreamed up in isolation — it's a .NET binding over Skia, the same open-source graphics engine that powers Chrome, ChromeOS, and Android. When Flutter needed a rendering engine, it started with Skia too. That's not a coincidence — that's a signal.
It's also why SkiaSharp sits underneath .NET MAUI and WinUI 3, quietly threaded through the framework in ways most developers never see — from custom drawing surfaces down to build-time asset compositing.
SkiaSharp Is Foundational to Uno Platform
For Uno Platform, SkiaSharp isn't an optional backend — it's foundational. Our promise has always been that a single C# and XAML codebase produces pixel-accurate applications across every platform target: Windows, macOS, Linux, iOS, Android, and WebAssembly. SkiaSharp is the rendering foundation that makes that promise real.
That foundation matters more than ever with Uno Platform Studio 3.0, where we're enabling agentic workflows on the web and across any IDE or CLI — go from a prompt to a running cross-platform .NET app, right in your browser, no install required. AI can scaffold the app, iterate the logic, refine the structure. But every pixel the user actually sees, every transition, every rendered surface — that's SkiaSharp. It's the layer that makes "runs everywhere" mean something visually, not just structurally.
Stability & Co-Maintenance
A Major New Version
SkiaSharp 4.148.0 is the first stable release of SkiaSharp v4 — and it's not a minor version bump. It brings the native Skia engine current through milestone m148 (two and a half years and 28 milestones of upstream improvements), a cleaner and more correct API, and rendering that's up to 24% faster on the GPU-accelerated backend. For Uno Platform apps specifically, early testing is showing improvements of up to 30%.
Microsoft & Uno Platform Collaborating Together
Here's the part that changes the story going forward: Uno Platform is now a formal co-maintainer of SkiaSharp, alongside the .NET team at Microsoft. That's not a branding exercise. Uno Platform's engineering team has a direct, ongoing role in SkiaSharp's release process, triage, and direction — helping stabilize APIs, land variable font support, and benchmark performance.
Issues that affect Uno Platform users — WebAssembly rendering behavior, performance regressions, API gaps relevant to cross-platform .NET development — now have a team with deep context actively working on them. We're part of the process that produces fixes, not waiting on them.
This co-maintenance is one concrete output of the broader technology collaboration between Uno Platform and the .NET team at Microsoft, spanning Android bindings, AOT compilation improvements, and .NET 10 contributions. SkiaSharp is just where it's most visible.
A Predictable Cadence Going Forward
One of the most important things v4 ships with is a release model you can actually plan around. Going forward, SkiaSharp ships on a regular cadence in two channels that follow the upstream Skia milestones:
- Stable channel — corresponds to Skia milestones in Chrome's Stable and Extended Stable channels
- Preview channel — corresponds to the milestone in Chrome's Beta channel
No more guessing when the next meaningful update lands. That predictability matters — especially for teams maintaining production applications.
See It in Action with Uno Platform Studio 3.0
Want proof this all adds up to something real? Uno Platform Studio 3.0 can spin up a full, running .NET app entirely in your browser, from a prompt, with AI. No install required. Every pixel of that app's UI? SkiaSharp. We've gone from "a drawing API that solves a platform gap" to "the rendering layer underneath AI-generated .NET apps running live in a browser tab." That's a decade of evolution in one sentence.
Explore What's Possible
We sat down with Matthew Leibowitz (Senior .NET Engineer at Microsoft & SkiaSharp maintainer) and Martin Zikmund (Lead Engineer at Uno Platform) at our SkiaSharp 4.0 launch event to talk through exactly what v4 unlocks and where things go from here. Watch the full conversation below:
What's in SkiaSharp 4.0
Let's Recap What the Video Covered
Talk is one thing — let's ground it in specifics. Here's everything that landed in this release.
A Better Engine — For Free
The native Skia engine is current through milestone m148: years of upstream rendering, codec, performance, and security improvements that benefit every app automatically, with no code changes required on your end. The highlights:
- Sharper downscaled images — mipmap sharpening is now on by default
- Automatic photo orientation — image codecs now respect Exif rotation metadata
- More accurate colors — transfer functions for Rec.709, HLG, and PQ corrected to match industry standards
- Security hardened — modern compiler mitigations enabled across all platforms, all bundled native dependencies updated
Security improvements that flow from upstream automatically, without you having to do anything — that's exactly what a well-maintained dependency should do.
New Capabilities
- Variable fonts — full OpenType variable font axis control across SkiaSharp and HarfBuzzSharp. Query axes, set positions, create typeface variants for weight, width, slant, or custom axes
- Color font palettes — switch between OpenType CPAL palettes for emoji and icon fonts, or override individual glyph colors
- Animated WebP encoding — SKWebpEncoder now handles animated WebP output
- Zero-copy stream conversion — SKStream.GetData() for efficient stream handling
A Cleaner API
v4 completes a migration that's been in progress for a while: legacy APIs are retired, the surface is clean. Underneath, the object lifecycle was reworked so native singletons are properly reference counted — quietly fixing a whole class of use-after-free crashes that could occur when the garbage collector finalized managed wrappers during in-flight native calls.
The kind of fix you never see. Which is the point.
Faster Performance
A newer engine shouldn't just do more — it should do it faster. On the hardware-accelerated GPU backend, the work that dominates modern app UIs (elevated cards, drop shadows, layered surfaces) renders up to 24% faster on v4 than on the previous stable release. A busy dashboard of shadowed cards rose from 65 to 80 FPS; a scrolling activity feed went from 47 to 58 FPS. Scenes that don't lean on shadows — charts, text, vector maps — were already efficient and carry over unchanged. You get the upside with no downside.
Procedural Perlin-noise shaders also run about 6x faster on the CPU — a nice win for generative textures and effects. For Uno Platform apps specifically, we're seeing rendering improvements of up to 30% in initial testing.
Modernized AI-Powered Infrastructure
SkiaSharp wraps an enormous Google C++ codebase — syncing upstream Skia milestones, auditing for CVEs, generating release notes and API diffs, keeping docs current. A lot of that work is now driven by agentic workflows.
The point isn't automation for its own sake — it's that human engineering time now goes to API design and correctness, exactly where it should be. It's a big part of how the project keeps pace with Chrome's release train. The test suite also moved to xUnit v3, builds run on reproducible Docker images, and device/WebAssembly testing runs through DeviceRunners. The machinery is modern, and it makes the project easier to contribute to and maintain.
Try It Yourself
No shortage of ways to jump in and see this for yourself:
- Get started fast at the official SkiaSharp site — docs, tutorials, and API reference all in one place.
- Grab the latest bits — SkiaSharp 4.148.0 is live on NuGet, the first stable release of v4.
- See it live in the browser — the Uno Platform WebAssembly gallery shows SkiaSharp rendering live, powered by Uno Platform's Wasm renderer.
- Play with SkiaFiddle — write and run SkiaSharp code directly in your browser at the SkiaSharp fiddle. No install, no setup, just code and see results instantly.
- Try it in Uno Platform Studio — spin up a full cross-platform .NET app from a single prompt, no install required, and watch SkiaSharp render every pixel of it live.
If you want to try the v4 bits directly in an Uno Platform app today, set the SkiaSharpVersion MSBuild property in your .csproj:
<PropertyGroup>
<!-- Stable -->
<SkiaSharpVersion>4.148.0</SkiaSharpVersion>
<!-- Next preview -->
<!-- <SkiaSharpVersion>4.150.0-preview.2.1</SkiaSharpVersion> -->
</PropertyGroup>
That's all it takes to opt in. Give it a try against your application and share your feedback.
SkiaSharp isn't a niche library for developers who need "extra" drawing capability — it's foundational infrastructure that most of the .NET ecosystem already depends on, whether that dependency is visible or not. With v4 stable and Uno Platform co-maintaining alongside the .NET team at Microsoft, the future here is genuinely bright. Faster releases, a predictable cadence, closer collaboration, and a rendering foundation that's only getting stronger under the AI-native, agentic workflows reshaping how .NET apps get built.
Cheers developers! 🚀
