Detect and manage duplicate records in your Filament panels with configurable matching rules, weighted scoring, and one-click analysis. Pairs perfectly with Model Merger.
Filament v3
Full support for Filament v3.
Laravel 10, 11 & 12
Compatible with all modern Laravel versions.
PHP 8.1+
Uses modern PHP features and strict typing.
Four matching algorithms, weighted scoring, and configurable thresholds — find every duplicate.
Define rules per resource with four matching types. Combine exact matching for IDs, fuzzy text matching for names, Levenshtein distance for codes, and numeric range for prices.
public static function getDeduplicationRules(): array
{
return [
'name' => [
'type' => 'similar_text',
'weight' => 3,
],
'price' => [
'type' => 'numeric_range',
'weight' => 2,
'tolerance' => 0.15, // 15% tolerance
],
'category_id' => [
'type' => 'exact',
'weight' => 1,
],
];
}
Exact
Perfect match on field values
Similar Text
Fuzzy text comparison with PHP similar_text()
Levenshtein
Edit distance for codes and short strings
Numeric Range
Tolerance-based matching for numbers and prices
Each matching rule has a weight. Name matches matter more than category matches? Give them a higher weight. The total similarity score reflects what's important to you. Color-coded badges make it easy to spot high-confidence duplicates.
Add a dedicated Duplicates page to any Filament Resource. Click "Analyse" and instantly see all duplicate groups with their similarity scores. No configuration needed beyond the rules.
use PtPlugins\FilamentDeduplication\Concerns\HasDeduplication;
class ProductResource extends Resource
{
use HasDeduplication;
public static function getPages(): array
{
return [
'index' => Pages\ListProducts::route('/'),
'duplicates' => Pages\DeduplicateProducts::route('/duplicates'),
];
}
}
When Model Merger is installed, each duplicate group shows a "Merge" link that opens the side-by-side comparison page. The complete detect-review-merge workflow, without leaving Filament.
Built to catch every duplicate. Zero false positives with the right threshold.
Add duplicate detection to any Resource with a single trait. Define rules and you're done.
Set different similarity thresholds for different resources. Products need 70%, customers need 90%.
Full translation support. Ships with English and Serbian. Add your own language in minutes.
Adds a "Duplicates" navigation item to your Resource sidebar. Fully integrated with Filament's UI.
Color-coded badges (red/amber/yellow) give instant visual feedback on match confidence.
Choose which columns appear in the duplicate comparison view with getDeduplicationColumns().
From purchase to detecting duplicates in your Filament panel — it only takes a few minutes.
Register for free. No credit card required until you purchase.
Choose Solo or Unlimited. Secure payment via Paddle. Instant access.
Add our private repository and composer require — done.
Choose the plan that fits your needs. Keep using your current version forever, even after your update period ends.
Perfect for freelancers and individual developers working on a single project.
Get immediate accessAfter a year, optionally renew for $29 to continue receiving updates or stay on your current version forever.
For developers and agencies building multiple client projects.
Get immediate accessAfter a year, optionally renew for $89 to continue receiving updates or stay on your current version forever.
| Solo | Unlimited | |
|---|---|---|
| Activations | 1 site | Unlimited |
| 1 year of updates included | ||
| Use current version forever | ||
| All 4 matching types | ||
| Composer access via Satis | ||
| Full source code | ||
| E-mail support | ||
| Priority support | — |
Invoice available
Download after purchase
E-mail support
Get help when you need it
Regular updates
Continuously improved
Get Filament Deduplication + Filament Model Merger together and save 20%. Detect duplicates, review them, and merge — all in one workflow.
View Bundle →Everything you need to know about Filament Deduplication
Four types: exact (perfect match), similar_text (PHP's similar_text function for fuzzy matching), levenshtein (edit distance for codes), and numeric_range (tolerance-based for prices and quantities).
Each rule has a weight. The total similarity score is calculated as a weighted average of all rule scores. For example, if "name" has weight 3 and "category" has weight 1, a name match contributes 3x more to the total score.
Absolutely. Deduplication works standalone — it detects and displays duplicate groups. Model Merger integration is optional and auto-detected when installed.
After your first year, you can optionally renew your license at a discounted rate to continue receiving updates. If you choose not to renew, you keep permanent access to the version you had when your update period expired.
Yes! Contact us at mihailo@ptplugins.com and we'll apply a prorated upgrade. You only pay the difference ($100).
Set getDeduplicationThreshold() on your Resource. Higher values (e.g. 90) catch only near-exact duplicates. Lower values (e.g. 60) cast a wider net. Adjust per Resource based on your data quality needs.
Yes, we offer a 7-day money-back guarantee. If the plugin doesn't work for your use case, contact us and we'll process a full refund. See our refund policy for details.
Start detecting duplicates in minutes. 7-day money-back guarantee.