<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<MULTIPLIER> 1,000
<S> <C> <C>
<PERIOD-TYPE> 12-MOS 9-MOS
<FISCAL-YEAR-END> DEC-31-1999 DEC-31-2000
<PERIOD-START> JAN-01-1999 JAN-01-2000
<PERIOD-END> DEC-31-1999 SEP-30-2000
<CASH> 1,828 2,052
<SECURITIES> 0 0
<RECEIVABLES> 29,488 42,111
<ALLOWANCES> 12,714 17,628
<INVENTORY> 3,427 3,740
<CURRENT-ASSETS> 24,142 33,003
<PP&E> 22,693 32,010
<DEPRECIATION> 6,628 10,272
<TOTAL-ASSETS> 88,252 118,542
<CURRENT-LIABILITIES> 12,162 10,483
<BONDS> 0 0
0 0
0 0
<COMMON> 242 246
<OTHER-SE> 74,539 81,277
<TOTAL-LIABILITY-AND-EQUITY> 88,252 118,542
<SALES> 26,895 29,301
<TOTAL-REVENUES> 102,588 100,789
<CGS> 17,718 17,685
<TOTAL-COSTS> 96,221 92,502
<OTHER-EXPENSES> 3,685 1,159
<LOSS-PROVISION> 0 0
<INTEREST-EXPENSE> 1,299 1,182
<INCOME-PRETAX> 2,682 7,128
<INCOME-TAX> 1,808 3,035
<INCOME-CONTINUING> 874 4,093
<DISCONTINUED> 0 0
<EXTRAORDINARY> 0 0
<CHANGES> 0 0
<NET-INCOME> 874 4,093
<EPS-BASIC> .19 .17
<EPS-DILUTED> (.06) .16
</TABLE>