Changelog

Welcome to the changelog section of Freemius, here you'll find our weekly technical update notes. You can subscribe to all posts via Newsletter or follow us on Twitter to stay updated.

Major Mobile Experience Overhaul for the Developer Dashboard

Following our recent rebranding and UI/UX improvements to the Developer Dashboard, this week we have deployed a major overhaul focused on enhancing the mobile experience. While our Developer Dashboard was already accessible on mobile, we wanted to take the experience even further and bring it up to today’s standards. If our makers need to check data on the go, we want to fully support that.

So, without further introduction, let’s dive into what has changed and what has been improved.

Better UX for the data tables

When optimizing for mobile, we started with the most data-heavy UI elements—specifically, the Payments, Subscriptions, and Licenses pages.

We identified opportunities to improve visual feedback and streamline the display of data, ensuring makers can quickly access the most relevant information on the go. Here’s what we changed:

  • Clicking on the ID cell now copies the value instantly for quick access.
  • We rearranged some table cells, ensuring the most important information remains visible.
  • Tables now feature a loading animation, providing clear feedback on background processes.
  • To declutter the view, certain advanced data (such as User ID or Site ID, which previously appeared on hover) will no longer be displayed on mobile.

Easy navigation for individual items

After optimizing the tables, we focused on improving how individual rows are presented in tables like Subscriptions, Payments, and Carts. On desktop, selecting a row opens a sidebar from the right, revealing more details about the item.

Navigation is seamless—clicking on another item automatically updates the sidebar. However, on mobile devices, this experience was less intuitive. The sidebar appears in full-screen mode, requiring users to first close the sidebar before selecting another item.

To improve navigation, we’ve introduced Previous and Next buttons in the sidebar header. Now, you can quickly move between items without needing to close the sidebar first.

Additionally, we’ve added a sidebar view for the Payments table, making it easier to access detailed payment information.

Full screen modals

We noticed that several of our form-heavy dialogs and modals weren’t optimized for smaller screens. Instead of overlaying them, we now display them in full-screen mode for a better mobile experience.

For example, when you click the “Refund” button on the Payments page, you’ll notice a much smoother experience. After all, managing your business on the go should feel effortless!

Improved UI for Analytics

We fine-tuned the charts UI for mobile to ensure all data is properly displayed and fixed any visual glitches we found.

Viewing charts on mobile is now a significantly better experience.

Improved main navigation

The left sidebar serves as the main navigation, and we’ve ensured it behaves smoothly on mobile by fixing a few glitches.

We also made the navigation menu smarter—it now automatically closes itself when it detects that it should get out of the way.

Better User & Site pages

Unlike other details that appear in the right sidebar, User and Site pages contain too much information to fit within a sidebar. That’s why we continue to display them as regular pages.

We reviewed how these pages render on mobile and made several layout improvements.

Additionally, we took this opportunity to rework certain sections of the page, ensuring they use screen space more efficiently.

For example, we have combined the License, Subscription, Plan, and Owner sections inside Site to display a simple list of actionable items.

Editing plan now works under mobile

We noticed that editing plans on mobile wasn’t working at all. So, we revisited the design and made it fully responsive.

Now, you can configure plans on the go—because why not?

An installable PWA

Saving the best for last! Now that our Developer Dashboard is fully optimized for mobile, we’ve taken it a step further by converting it into a PWA (Progressive Web App). This means you can install it on Android and iOS devices for a more seamless experience.

To install the app, simply click the “Install” button when prompted by your browser. On Android, you’ll also find a dedicated “Install App” button in the top-right dropdown menu.

  • For iOS devices, you’ll need to manually select “Add to Home Screen” to save the app.
  • For desktop you can also click the Install App button while using Chrome to create a shortcut under your launcher.

Various bug fixes

As we refined the mobile experience, we also addressed several bugs across the Dashboard. Here are some of the most notable fixes:

  • Fixed touch issues with the switch UI.
  • Resolved alignment issues in grouped input fields.
  • Fixed UI regression in the analytics screenshot modal.
  • Made the Profile page fully responsive.
  • Fixed an image issue on the Perks page—if you’re eligible, simply click the top-right menu button to access your perks.
  • Fixed a bug where the country wasn’t displaying inside subscription details.
  • Updated the email instruction UI for static products.
  • Refreshed the brand color palette from our internal design library.

We hope you enjoy these latest improvements to the Dashboard app! 🚀

If you’d like to see more mobile features—such as push notifications for sales—let us know via our feature request board.

Bug Fix for Unblocking Email Addresses

Freemius automatically tracks email deliverability issues for your customers and users. Our Developer Dashboard includes functionality to check users’ email history and, if there are deliverability issues, displays bounce logs.

Additionally, there’s an option to Resend Messages. We identified a regression where, in some cases, clicking the button did not actually send the message. We’ve pinpointed the root cause and have deployed a fix to resolve the issue.

UI/UX improvements to the Developer Dashboard

Following our recent rebranding, we’re rolling out UI cleanups and regression fixes for the Developer Dashboard. Most of these changes focus on fixing UI glitches and updating certain elements based on our design team’s improvements.

Font & Legibility fixes

  • We introduced font anti-aliasing for non-DPI screens to improve legibility.
  • We also identified contrast regressions in some lesser-seen UI areas and have fixed the ones found so far.

Alignment fixes

Some modal elements had alignment issues, which have now been fixed.

Data tables have been improved to ensure proper alignment of text and control elements.

We also noticed horizontal scrolling issues in some side navigation menus (sidenavs) and drawers—these have now been fixed.

There have also been various small and medium fixes and updates throughout the system. Stay tuned—we’re working on something exciting in the coming weeks! (Hint: it’s about mobile 😉).

Refreshed SDK Integration UI – Now with Composer Support

With the release of WordPress SDK 2.11.0, we’ve revamped our SDK Integration UI to make it clearer and align with the latest WordPress.org guidelines.

Simply navigate to the SDK Integration page to check out the new UI. The first step now asks how you’d like to integrate the Freemius WordPress SDK into your project. You can choose from the following options:

  1. Manual – You need to download the SDK from our GitHub repository and manage updates manually.
  2. Composer – The SDK is downloaded and managed automatically through the package manager.

Once you make a selection, the UI will display the relevant instructions and code snippets.

Choosing Composer Integration

If you’re already using Composer for your project, it makes sense to use the same package manager to install the Freemius WP SDK. As of SDK version 2.10.1, Composer auto-loading is fully supported. To use Composer integration, ensure that you’re running at least this version.

If you’ve been using the old integration method (where the SDK is placed in the main folder of your plugin) and want to switch to Composer, please follow the instructions below.

Migrating from the old integration method

If you’ve been using Freemius for a while, you might have noticed that we now require placing the SDK inside the vendor/freemius directory. This change aligns with WordPress.org guidelines, which recommend placing all third-party code inside the vendor directory.

Previously, we instructed developers to place the SDK directly inside the main folder of their plugin/theme. This is now reflected in the UI, where a “Legacy” option is available in the dropdown.

Unfortunately, changing the SDK location isn’t straightforward due to a bug in SDK versions prior to 2.11.0. To update the SDK location in your product, follow these steps:

  1. Release a version with the SDK location unchanged, but ensure you’re using SDK version 2.11.0 or later.
  2. Mark this version as an Incremental Release.
  3. Release another version where you update the SDK location.

To make this process easier, the last version you deployed with SDK 2.11.0, where the SDK was located in the root of your product, is automatically marked as Incremental.

For more detailed instructions, please refer to our documentation.

New Feature: Incremental updates for your WordPress plugins/themes

We’re excited to announce the immediate availability of a powerful new feature: Incremental Updates!

In the software industry, it’s common to follow a guided update path. For example, you may want all your customers currently on version 1.0.0 to first update to version 1.2.0 before moving to version 2.0.0. This structured approach allows you to manage data migrations, schema changes, or any other breaking changes without compromising your product’s usability.

With Freemius, managing such updates is now easier than ever—it’s just a matter of clicking a few buttons! Simply navigate to the Deployments page in your Developer Dashboard, where you’ll find a new column labeled “Incremental.” From there, you can designate a version as incremental with

Additionally, when releasing a new version, you’ll notice an improved modal that highlights the same option for added convenience.

For more technical details, check out our documentation.

Checkout-related enhancements for the Developer Dashboard

We’ve rolled out a few small but important bug fixes and improvements to the Developer Dashboard, focusing on various checkout-related actions.

Fixed checkout URL for SaaS products under pricing

We identified a regression where clicking the “Checkout Link” button did not generate the correct URL for SaaS products on the Plans page. This issue has now been fixed.

New license action to copy payment method update link

You will now find a new option under the “Action” menu in Licenses to copy the payment method update link. This is particularly useful for customer support when you need to quickly share a payment update link—for example, when a customer’s credit card is expiring or their PayPal account is invalid.

Please note that this link is provided for your convenience only. Freemius still handles dunning and automatically sends payment-related emails for both card and PayPal issues. Additionally, buyers can update their payment method directly through the Customer Portal at any time.

Checkout UX and DX improvements

We’re rolling out a set of improvements to enhance the checkout experience — both for users (UI/UX) and developers (DX).

Cart syncing issue with VAT number – fixed!

Freemius Checkout includes a built-in cart system to support various marketing automation features. We discovered an edge-case bug where, due to network errors, the VAT number could become out of sync with the cart, leading to lost information. Additionally, in some cases, the cart was not updating properly when the VAT number was entered or modified. We’ve fixed both issues to ensure seamless VAT handling.

Smarter sandbox prefill

The Prefill button in sandbox checkout is now more intelligent. It adapts based on the full context of the checkout session. For example, if a license is already associated with the checkout, the system will no longer attempt to prefill the email field — ensuring a more accurate experience.

Improved UI responsiveness

We’ve made subtle tweaks to improve the responsiveness of checkout line items, ensuring they adapt better to different container widths for a cleaner, more consistent layout across all the languages our Checkout app supports.

New Webhook: Get Notified When It’s Time to Pay Affiliates

At Freemius, we offer a robust Affiliate Platform for all our makers. Our system automatically generates and tracks affiliate links and calculates affiliate payouts every month. We already send an email notification when payouts are due, so you know when it’s time to reward your affiliates.

To further enhance the system — especially for makers with many affiliates — we’re introducing a new webhook: affiliate.payout.pending. Each month, as our system calculates pending affiliate payouts, it will trigger this webhook event. You can subscribe to this webhook to automate various tasks, such as:

  • Create automated payment flows within your own system
  • Notify your accounting department

…and more!

To get started, visit the Custom Webhooks page and look for the affiliate.payout.pending event. Check out our documentation for more details on how our webhook mechanism works.

Various Developer Dashboard improvements

This week, we’re deploying some minor improvements to our Developer Dashboard. Please find the details below.

Fixed regression in the secret key UI component

We identified a regression where the copy button for the secret key component on the profile page wasn’t functioning. This has now been fixed.

Please note that since we do not load the Developer’s secret key (not even in memory), you will need to click the “Reveal” button before the copy button is displayed.

Other fixes

  • We addressed console errors caused by incorrect interpolation of SVG icons.
  • We also fixed an issue where the feature ordering wasn’t working correctly for certain products.

Various improvements to our Checkout

We’re excited to share the latest UI/UX improvements we’ve made to our Checkout application! At Freemius, we deeply value conversion optimization—because your success is our success. Here’s a look at what’s new.

Mobile UI/UX improvements

We’ve resolved form label alignment issues on mobile and small-screen devices for certain languages. Long labels are now truncated instead of overflowing or wrapping to the next line, with a tooltip added to display the full text. This update ensures the billing form maintains a clean and consistent visual hierarchy.

We also identified a glitch in the language selector UI on mobile devices where the flag failed to render, displaying a placeholder text like ‘flag-us’ instead. To simplify the user experience, we’ve opted to remove the flag on mobile and display only the language label. On desktop devices the UI still renders with flags as before.

Lastly, we addressed a visual glitch in the upsell component. The switch was not rendering correctly, either appearing shrunken or overflowing onto two lines. This issue has now been resolved.

Improved asset loading

We noticed that the Checkout was incorrectly making network calls for certain assets, resulting in 404 errors and increased loading times. We’ve identified the root cause and resolved the issue.

We’ve also updated the Freemius logo to align with our recent rebranding.

Improved Credit card 3DS flow

We’ve improved error detection for credit card payments when the issuer requires 2FA authentication. Our Checkout now handles edge-case errors more effectively, ensuring a smoother experience for buyers in these scenarios.

Fixed discount for lifetime trials

We identified an edge case where coupon discounts were not properly applied to lifetime trials. The root cause has been resolved, and a fix has been deployed.

Fixed issue with the coupon UI

We also discovered an edge case where the coupon UI wasn’t updating correctly after entering a license, particularly during renewals of migrated licenses. This issue occurred when the pro-rated discount and the product’s renewal discount exceeded the coupon value. Given the various configurations a coupon can have during a license renewal or update, we’ve carefully addressed the root cause and deployed a fix.