הימנעות ממצב של class ים עתירי תכונות שנמצאים במעלה ההיררכיה - ה decorator pattern מציעה גישה של "שלם לפי כמה שאכלת" בקשר להוספת תחומי אחריות לאובייקטים. במקום לנסות לתמוך מראש בכל הקומבינציות של מאפיינים הנראות לעין, בתוך class
מסובך ומורכב, כאן מגדירים class פשוט ומוסיפים לו פונקציונליות באופן הדרגתי בעזרת אובייקטי Decorator. כאן הפונקציונליות מורכבת מחלקים פשוטים וקטנים. כתוצאה מכך האפליקציה לא צריכה לשלם עבור פונקציונליות שהיא אינה משתמשת בה.
דבר נוסף, קל להגדיר סוגים חדשים של Decorator ים באופן בלתי תלוי. לעומת זאת כאשר מנסים להרחיב
class מורכב, זה נוטה לגרום לחשיפת פרטים שאינם קשורים לפונקציונליות הנוספת שהוספנו לו.
Decorator וה Component ים שלו אינם זהים - Decorator מתפקד כעטיפה שקופה אך מבחינת זהויות אובייקטים component שעבר דקורציה אינו זהה ל component המקורי. לכן כאשר נרצה להשוות בין אובייקטים צריך לזכור שהתוצאה תהיה כאן שלילית, כלומר לא נוכל לדעת שהאובייקט היה מאותו סוג בזמן שנערוך השוואה ביניהם (למשל על ידי אופרטור =).
הרבה אובייקטים קטנים - design שמשתמש ב Decorator מתאפיין פעמים רבות במערכת שכוללת המון אובייקטים קטנים שכולם נראים דומים. האובייקטים שונים רק באופן שבו הם מקושרים, ולא במחלקה שאליה הם משתייכים או בערך המשתנים שלהם. למרות שמערכות אלה קלות להתאמה ולתפעול על ידי מי שמבין אותן, הן עלולות להיות קשות ללמידה ול debugging.