It's best to avoid hyphens. Most people will forget the hyphen and type the name without the hyphen, which may take them to your competitor's website. Relying on hyphens also means that your domain will be extremely similar to someone else's, and it makes branding difficult.