diff --git a/rigify/base_rig.py b/rigify/base_rig.py
index 0cc2bc1dd2eec1ad79f0617b532afb9dbb8fe084..87c89c179e4fc93248ad8bfb4d4437508a9acfa9 100644
--- a/rigify/base_rig.py
+++ b/rigify/base_rig.py
@@ -243,7 +243,7 @@ class BaseRig(GenerateCallbackHost, RaiseErrorMixin, BoneUtilityMixin, Mechanism
         :param params:
         :return:
         """
-        layout.label(text="No options")
+        pass
 
     @classmethod
     def on_parameter_update(cls, context, pose_bone, params, param_name):
diff --git a/rigify/ui.py b/rigify/ui.py
index 02912934f1c656657efc758d61d418f98d05ce8a..6b1e6e4c89fec3acdd9a214abe11bf31e36b66d8 100644
--- a/rigify/ui.py
+++ b/rigify/ui.py
@@ -619,16 +619,24 @@ class BONE_PT_rigify_buttons(bpy.types.Panel):
             else:
                 if hasattr(rig.Rig, 'parameters_ui'):
                     rig = rig.Rig
+
                 try:
-                    rig.parameters_ui
+                    param_cb = rig.parameters_ui
+
+                    # Ignore the known empty base method
+                    if getattr(param_cb, '__func__', None) == base_rig.BaseRig.parameters_ui.__func__:
+                        param_cb = None
                 except AttributeError:
+                    param_cb = None
+
+                if param_cb is None:
                     col = layout.column()
                     col.label(text="No options")
                 else:
                     col = layout.column()
                     col.label(text="Options:")
                     box = layout.box()
-                    rig.parameters_ui(box, bone.rigify_parameters)
+                    param_cb(box, bone.rigify_parameters)
 
 
 class VIEW3D_PT_tools_rigify_dev(bpy.types.Panel):