Skip to content

Licensing

Avo runs on the Open-Core model. The Community edition is free to use and works best for personal, hobby, and small commercial projects. Paid add-ons unlock the more advanced features, and bundles group several add-ons together for a better price. Selling these is what lets us fund the business and work on Avo full-time, so it keeps improving over time.

Community

The Community version is free and has powerful features you can use today like Resource management, most feature-rich fields, out-of-the-box sorting, filtering and actions, all the associations you need, appearance controls, and localization — about 70% of everything Avo has to offer.

Add-ons

Each advanced feature ships as its own installable gem, so you only pay for what you use. Add-ons include Authorization, Dashboards, the Menu Editor, Record Reordering, Dynamic Filters, Custom Controls, Resource Scopes, Kanban Boards, Collaboration, and more. Every add-on page carries a License: Add-on badge that links to its page on avohq.io.

Bundles

If you need several add-ons, a bundle is the cheaper way to get them:

  • avo-pro — Dashboards and the Menu Editor.
  • avo-advanced — everything in avo-pro, plus Dynamic Filters.
  • avo-everything — every add-on Avo offers.

See the pricing page for what each one includes.

Enterprise

Larger teams that need features like Audit Logging, custom builds, or dedicated support should book an Enterprise call.

One license per site

Each license can be used to run one application in one production environment on one URL. So when an app is in the production environment (Rails.env.production? is true), we only need to check that the license key and URL match the purchased license you're using for that app.

INFO

More info here.

More installations/environments per site

You might have the same site running in multiple environments (development, staging, test, QA, etc.) for non-production purposes. You don't need extra licenses for those environments as long as they are not production environments (Rails.env.production? returns false).

INFO

More info here.

Sites

You can see your licenses and projects on your dashboard.

Add the license key

After you purchase an Avo license, add it to your config/initializers/avo.rb file under license_key.

ruby
# config/initializers/avo.rb
Avo.configure do |config|
  config.license_key = '************************' # or use ENV['AVO_LICENSE_KEY']
end

Configure the display of license request timeout error

If you want to hide the badge displaying the license request timeout error, you can do it by setting the display_license_request_timeout_error configuration to false. It defaults to true.

ruby
# config/initializers/avo.rb
Avo.configure do |config|
  config.display_license_request_timeout_error = false
end

Purchase a license

You can purchase a license from the pricing page.

License validation

"Phone home" mechanism

Avo pings the HQ (the license validation service) with some information about the current Avo installation. You can find the full payload below.

ruby
# HQ ping payload
{
  license_key: Avo.configuration.license_key,
  avo_version: Avo::VERSION,
  rails_version: Rails::VERSION::STRING,
  ruby_version: RUBY_VERSION,
  environment: Rails.env,
  ip: current_request.ip,
  host: current_request.host,
  port: current_request.port,
  app_name: Rails.application.class.to_s.split("::").first,
  avo_metadata: avo_metadata
}

That information helps us to identify your license and return a license valid/invalid response to Avo. The requests are made at boot time and every hour when you use Avo on any license type.

If you need a special build without the license validation mechanism please get in touch.