---
title: Use concerns judiciously
impact: MEDIUM
impactDescription: Prevent concerns from becoming dumping grounds for unrelated code.
tags: rails, architecture, concerns, design
---

## Use concerns judiciously

Prevent concerns from becoming dumping grounds for unrelated code. Only use concerns for clearly reusable behavior across multiple models/controllers. Each concern should have a single, well-defined responsibility.

**Incorrect:**

```ruby
# A concern that handles too many unrelated things
module UserHelper
  extend ActiveSupport::Concern
  # logic for auth, analytics, and image processing mixed together
end
```

**Correct:**

```ruby
module Authenticatable
  extend ActiveSupport::Concern
  # focus on auth logic only
end
```

**Tools:** Manual Review
