Equational unification of two terms consists of finding a substitution that, when applied to both terms, makes them equal modulo some equational properties. Equational unification is of special relevance to automated deduction, theorem proving, protocol analysis, partial evaluation, model checking, etc. Several algorithms have been developed in the literature for specific equational theories, such as associative-commutative symbols, exclusive-or, Diffie-Hellman, or Abelian Groups. Narrowing was proved to be complete for unification and several cases have been studied where narrowing provides a decidable unification algorithm. A new narrowing-based equational unification algorithm relying on the concept of the variants of a term has been developed and it is available in the most recent version of Maude, version 2.7.1, which provides quite sophisticated unification features. A variant of a term t is a pair consisting of a substitution σ and the canonical form of tσ . Variant-based unification is decidable when the equational theory satisfies the finite variant property. However, it may compute many more unifiers than the necessary and, in this paper, we explore how to strengthen the variantbased unification algorithm implemented in Maude to produce a minimal set of most general variant unifiers. Our experiments suggest that this new adaptation of the variant-based unification is more efficient both in execution time and in the number of computed variant unifiers than the original algorithm available in Maude. We follow the classical notation and terminology from [35] for term rewriting, from [3] for unification, and from [27] for rewriting logic and order-sorted notions.We assume an order-sorted signature Σ = (S, ≤, Σ) with a poset of sorts (S, ≤). The poset (S, ≤) of sorts for Σ is partitioned into equivalence classes, called connected components, by the equivalence relation (≤ ∪ ≥) + . We assume that each connected component [s] has a top element under ≤, denoted [s] and called the top sort of [s]. This involves no real loss of generality, since if [s] lacks a top sort, it can be easily added. We also assume an S-sorted family X = {X s } s∈S of disjoint variable sets with each X s countably infinite. T Σ (X ) s is the set of terms of sort s, and T Σ,s is the set of ground terms of sort s. We write T Σ (X ) and T Σ for the corresponding order-sorted term algebras. Given a term t, Var(t) denotes the set of variables in t.A substitution σ ∈ S ubst(Σ, X ) is a sorted mapping from a finite subset of X to T Σ (X ). Substitutions are written as σ = {X 1 → t 1 , . . . , X n → t n } where the domain of σ is Dom(σ ) = {X 1 , . . . , X n } and the set of variables introduced by terms t 1 , . . . ,t n is written Ran(σ ). The identity substitution is id. Substitutions are homomorphically extended to T Σ (X ). The application of a substitution σ to a term t is denoted by tσ or σ (t). For simplicity, we assume that every substitution is idempotent, i.e., σ satisfies Dom(σ ) ∩ Ran(σ ) = / 0. The restriction of σ to a set of var...