diff --git a/tests/app/ante.go b/tests/app/ante.go
index e2d92e0..69d0e4d 100644
--- a/tests/app/ante.go
+++ b/tests/app/ante.go
@@ -46,10 +46,12 @@ func NewAnteHandler(options AnteHandlerOptions) (sdk.AnteHandler, error) {
 		authante.NewConsumeGasForTxSizeDecorator(options.AccountKeeper),
 		feemarketante.NewFeeMarketCheckDecorator( // fee market check replaces fee deduct decorator
 			options.FeeMarketKeeper,
-			options.AccountKeeper,
-			options.BaseOptions.BankKeeper,
-			options.BaseOptions.FeegrantKeeper,
-			options.BaseOptions.TxFeeChecker,
+			authante.NewDeductFeeDecorator(
+				options.AccountKeeper,
+				options.BaseOptions.BankKeeper,
+				options.BaseOptions.FeegrantKeeper,
+				options.BaseOptions.TxFeeChecker,
+			),
 		), // fees are deducted in the fee market deduct post handler
 		authante.NewSetPubKeyDecorator(options.AccountKeeper), // SetPubKeyDecorator must be called before all signature verification decorators
 		authante.NewValidateSigCountDecorator(options.AccountKeeper),
diff --git a/tests/app/app.go b/tests/app/app.go
index ee28ab3..a4e37ce 100644
--- a/tests/app/app.go
+++ b/tests/app/app.go
@@ -7,10 +7,6 @@ import (
 	"os"
 	"path/filepath"
 
-	"github.com/skip-mev/feemarket/x/feemarket"
-	feemarketkeeper "github.com/skip-mev/feemarket/x/feemarket/keeper"
-	feemarkettypes "github.com/skip-mev/feemarket/x/feemarket/types"
-
 	autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
 	reflectionv1 "cosmossdk.io/api/cosmos/reflection/v1"
 	"cosmossdk.io/client/v2/autocli"
@@ -31,9 +27,6 @@ import (
 	upgradetypes "cosmossdk.io/x/upgrade/types"
 	abci "github.com/cometbft/cometbft/abci/types"
 	dbm "github.com/cosmos/cosmos-db"
-	"github.com/cosmos/gogoproto/proto"
-	"github.com/spf13/cast"
-
 	"github.com/cosmos/cosmos-sdk/baseapp"
 	"github.com/cosmos/cosmos-sdk/client"
 	"github.com/cosmos/cosmos-sdk/client/flags"
@@ -104,6 +97,12 @@ import (
 	"github.com/cosmos/cosmos-sdk/x/staking"
 	stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
 	stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
+	"github.com/cosmos/gogoproto/proto"
+	"github.com/spf13/cast"
+
+	"github.com/skip-mev/feemarket/x/feemarket"
+	feemarketkeeper "github.com/skip-mev/feemarket/x/feemarket/keeper"
+	feemarkettypes "github.com/skip-mev/feemarket/x/feemarket/types"
 )
 
 const appName = "SimApp"
diff --git a/x/feemarket/ante/fee.go b/x/feemarket/ante/fee.go
index aff6034..0033e8f 100644
--- a/x/feemarket/ante/fee.go
+++ b/x/feemarket/ante/fee.go
@@ -7,7 +7,6 @@ import (
 	sdkmath "cosmossdk.io/math"
 	sdk "github.com/cosmos/cosmos-sdk/types"
 	sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
-	"github.com/cosmos/cosmos-sdk/x/auth/ante"
 
 	feemarkettypes "github.com/skip-mev/feemarket/x/feemarket/types"
 )
@@ -32,22 +31,23 @@ func newFeeMarketCheckDecorator(fmk FeeMarketKeeper) feeMarketCheckDecorator {
 //
 // CONTRACT: Tx must implement FeeTx interface
 type FeeMarketCheckDecorator struct {
-	feemarketKeeper    FeeMarketKeeper
+	feemarketKeeper FeeMarketKeeper
+
 	feemarketDecorator feeMarketCheckDecorator
-	cosmosDecorator    ante.DeductFeeDecorator
+	fallbackDecorator  sdk.AnteDecorator
 }
 
-func NewFeeMarketCheckDecorator(fmk FeeMarketKeeper, ak AccountKeeper, bk BankKeeper, fgk FeeGrantKeeper, txfc ante.TxFeeChecker) FeeMarketCheckDecorator {
+func NewFeeMarketCheckDecorator(fmk FeeMarketKeeper, fallbackDecorator sdk.AnteDecorator) FeeMarketCheckDecorator {
 	return FeeMarketCheckDecorator{
 		feemarketKeeper: fmk,
 		feemarketDecorator: newFeeMarketCheckDecorator(
 			fmk,
 		),
-		cosmosDecorator: ante.NewDeductFeeDecorator(ak, bk, fgk, txfc),
+		fallbackDecorator: fallbackDecorator,
 	}
 }
 
-// AnteHandle calls the feemarket internal antehandler if the keeper is enabled.  If disabled, the Cosmos SDK
+// AnteHandle calls the feemarket internal antehandler if the keeper is enabled.  If disabled, the fallback
 // fee antehandler is fallen back to.
 func (d FeeMarketCheckDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error) {
 	params, err := d.feemarketKeeper.GetParams(ctx)
@@ -57,7 +57,13 @@ func (d FeeMarketCheckDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate
 	if params.Enabled {
 		return d.feemarketDecorator.anteHandle(ctx, tx, simulate, next)
 	}
-	return d.cosmosDecorator.AnteHandle(ctx, tx, simulate, next)
+
+	// only use fallback if not nil
+	if d.fallbackDecorator != nil {
+		return d.fallbackDecorator.AnteHandle(ctx, tx, simulate, next)
+	}
+
+	return next(ctx, tx, simulate)
 }
 
 // anteHandle checks if the tx provides sufficient fee to cover the required fee from the fee market.
diff --git a/x/feemarket/ante/suite/suite.go b/x/feemarket/ante/suite/suite.go
index daf9371..3489583 100644
--- a/x/feemarket/ante/suite/suite.go
+++ b/x/feemarket/ante/suite/suite.go
@@ -106,10 +106,12 @@ func (s *TestSuite) SetupHandlers(mock bool) {
 		authante.NewSetUpContextDecorator(), // outermost AnteDecorator. SetUpContext must be called first
 		feemarketante.NewFeeMarketCheckDecorator( // fee market replaces fee deduct decorator
 			s.FeeMarketKeeper,
-			s.AccountKeeper,
-			s.BankKeeper,
-			s.FeeGrantKeeper,
-			nil,
+			authante.NewDeductFeeDecorator(
+				s.AccountKeeper,
+				s.BankKeeper,
+				s.FeeGrantKeeper,
+				nil,
+			),
 		),
 		authante.NewSigGasConsumeDecorator(s.AccountKeeper, authante.DefaultSigVerificationGasConsumer),
 	}