General FAQ

Frequently Asked Questions


See the Error FAQ:



See the support page on the Dada Mail website:


Using Dada Mail

How Do I Install Dada Mail?

Complete installation docs are located at:


Install Dada Mail via Simple Scripts

Simple Scripts, also has a installer for Dada Mail, which we think is great:


Double check the version they are offering to install, as it sometimes lags behind the official, stable release.


If you have a cPanel-based hosting account (Bluehost, Hostmonster and many others), see if Simple Scripts is built right into your cPanel - it'll allow you to install Dada Mail with just a few clicks. We think that's pretty cool, as well.

We do install Dada Mail on behalf of our clients:


We do a great job!

Can I install more than one copy of Dada Mail on the same hosting account?


The Dada Mail Installer usually picks your home directory as the location for the .dada_files directory. If you choose to install another copy of Dada Mail, the installer will then want to use this same (and currently in-use) location.

The trick is to simply tell the installer to use a different location. For example, create a new directory in your home directory (call it something like dada_files_for_xyz and then point the installer to that directory (use the Manual location, instead of Automatic) and you're done!.

Can I use one Dada Mail installation for multiple domains?

One installation of Dada Mail will work for one domain. This means, if you install Dada Mail at:


You will not be able access this copy of Dada Mail at,


even if you administrate both domains. This would require two installations of Dada Mail.

How Do I Create a New List?

You can create a new list by visiting the administration screen. A link should be on the bottom of the default screen of Dada Mail, if it's not visible, point your browser to this location:


Replacing, http://example.com/cgi-bin/dada/mail.cgi with the URL of your own Dada Mail.

Enter your Dada Mail Root Password in the form entitled, Create a New Mailing List

How Do I Log Into an Already Existing List?

You can log into an already existing list by visiting the administration screen. A link should be on the bottom of the default screen of Dada Mail, if it's not visible, point your browser to this location:


Replacing, http://example.com/cgi-bin/dada/mail.cgi with the URL of your own Dada Mail.

Select your list from the popup menu and enter either your List Password, or the Dada Mail Root Password in the form entitled, Enter Your List Control Panel.

The, Dada Mail Root Password can be used to log into any list being administrated by Dada Mail, as well as allowing you to access any adminsitration screens that are not allowed to be accessed when logging in using the List Password.

If the list you're attempting to access is not listed in the popup menu, you may have made your list, hidden. To log into a hidden list, click the, other... link that's located underneith the popup menu.

When the screen is refreshed, the popup menu will be replaced by a text box. You can then enter the list short name of the list you want to log into.

If you do not remember the list short name of the list you want to log into, you can also simply log into any list with your Dada Mail Root Password and once logged in, switch which list you want to work on, by selecting the list you want to work inthe popup menu on the upper left hand side of the List Control Panel. All lists available will be listed in this popup menu.

How Do I Delete a List?

Log into your mailing list using the Dada Mail Root Password.

In the left-hand menu, go to Your Mailing List -> Delete This Mailing List

Can I rename the mail.cgi file?

Yes. You can rename the, mail.cgi file to any other valid filename, like newsletter.cgi or craaaaazyname.cgi. You'll most likely have to keep the file ending either, .cgi or .pl

The only place that this variable is hardcoded is in the, $PROGRAM_URL variable - so make sure to change this variable as well to reflect the file name changes.

How do I change the list short name?

There's a plugin called, Change Your List Short Name that can do this for you:


How do I fetch/reset the Dada Mail Root Password?

The Dada Mail Root Password is usually saved in an encrypted form, so cannot be simply read from the configuration. You may manually reset the Dada Mail Root Password yourself.

If you're running a contemporary installation of Dada Mail, the Dada Mail Root Password is stored your .dada_config file.

(The location of the .dada_config file is saved in the directory set in the dada/DADA/Config.pm file, in a variable called, $PROGRAM_CONFIG_FILE_DIR. That variable should hold the absolute path to the directory that your, .dada_config)

Look for these lines:

        # Start Root_Password
        $PROGRAM_ROOT_PASSWORD  = 'ws9shkqd4LeFI';
        # End Root_Password

In this example, the $PROGRAM_ROOT_PASSWORD variable holds an encrypted password as $ROOT_PASS_IS_ENCRYPTED is set to, 1. There's no way to decrypt the password.

You can encrypt a new password by visiting your Dada Mail with the query string, ?f=pass_gen, like this:


Where, http://example.com/cgi-bin/dada/mail.cgi is the URL of your Dada Mail and have a new password encrypted. Copy the encrypted password and set the $PROGRAM_ROOT_PASSWORD variable to your new encrypted password.

If you cannot figure out how to encrypt your own password, set, $ROOT_PASS_IS_ENCRYPTED to, 0 and type in a new Dada Mail Root Password:

        # Start Root_Password
        $PROGRAM_ROOT_PASSWORD  = 'new_unsafe_pass';
        # End Root_Password

We do not suggest this, as now you're open to someone exploiting your Dada Mail, by simply reading your configuration.

If you are running a Basic Installation of Dada Mail (ie: NO .dada_config file), look for the $PROGRAM_ROOT_PASSWORD variable in the dada/DADA/Config.pm file itself. It may or may not be encrypted. Again, the $ROOT_PASS_IS_ENCRYPTED will let you know. follow similar steps to reset the $PROGRAM_ROOT_PASSWORD variable to either an encrypted or non-encrypted password, but do all the editing in your dada/DADA/Config.pm file.

There is also plugin, described here:


That will allow you to change the Dada Mail Root Password. You will first have to log into your list control panel, with the Dada Mail Root Password.

Is there any way to stop a mass mailing once it is started?

Yes. In the list control panel, click on, "Monitor Your Mailings", click on the mailing you want to stop and when on that specific message screen, click the, STOP Mailing button.


How are new subscriptions made?

List Invitations

Once logged in, the list owner will want to visit the, Manage Subscribers - Invite screen.

New subscribers should be prepared in CSV format, with the email address being first and any other Subscriber Profile Fields coming afterwards. The actual order will be listed on this screen.

If you do not have any Subscriber Profile Fields, the format needed to give Dada Mail is just, one email address and a newline.

Click the, Verify Addresses... button. When the screen refreshes, Dada Mail will give a break down of the addresses that can be invited and also the addresses that cannot be invited for reasons that include: already being subscribed, being an invalid address, or that the address is currently banned from subsribing.

A List Invitation will send out a short email message to the would-be subscribe and allow the subscriber themselves to choose to subscribe to the list.

Allowing Visitors to Subscribe

Visitors to your website can subscribe to your mailing list by filling out a List Subscription Form.

This form is located on the default screen of Dada Mail (for all lists) and also on the list-specific screen (for just that list)

You can also place this subscription form on any page of an already existing website. The HTML form code can be copied from the List Control Panel screen, located at: Appearance and Templates - Subscription Form HTML

And pasting the HTML into your page's source.

See Also

There's also a Dada Mail Extension that'll allow someone to subscribe to more than one list:


Using the Dada Mail API to subscribe new addresses

See the following docs that pertain to using the Dada Mail API directly or indirectly to use its subscription capabilities:



This will be a more advanced topic.

Mass Subscribing Email Addresses via the List Control Panel

Is there a way to Mass-Subscribe email addresses from the list control panel?

Log into your mailing list and go to: Your Mailing List - Options

Under the heading, List Control Panel Subscriptions check the option, Enable Adding Subscribers from within the List Control Panel

You can then go to: Your Subscribers - Invite/Add and mass-subscribe addresses.


Short Answer You can't.

Dada Mail requires that every message you send in a mass mailing contain a unsubscription link - including discussion messages.

The following tag is required to be present in every message sent in a mass mailing:

 <!-- tmpl_var list_unsubscribe_link --> 

This tag will be replaced by an unsubcription link that will be unique to the user's email address, mailing list, and mass mailing that it's sent in. When it's clicked, the user will need to simply retype their email address and submit the form presented to them. Once they do that, the user will be removed from the mailing list.

There is an option in the List Control Panel to provide an email address hint in, Your Mailing List Options, under Unsubscriptions: Show Email Hint

If you're running a discussion mailing list, you may want to disable this option, so that other members of the mailing list don't abuse the unsubscription system, by unsubscribing other members.

This problem should be mitigated, as members will need to use their own unsubscription link to remove themselves, and a user cannot use the unsubscription link sent to themselves, to unsubscribe another person. Usubscription links are also stripped from messages replied to, and resent to the mailing list, as well as messages shown in Dada Mail's public message archives.

Dada Mail has an in-program policy of requiring the unsubscription link to be prsent in all messages sent in a mass mailing. This is to stop blatant abuse of the program, but we also do sincerely suggest this as a best practice when using the program. If an unsubscribe link is not found in your mailing list message, Dada Mail will simply add one to the top of the message.

The following tag is required in your mailing list message:

        <!-- tmpl_var list_unsubscribe_link -->


Do you host Dada Mail or do I host Dada Mail?

Dada Mail is installed on your hosting account; thus, you will be the one hosting it.

Dada Mail is not really intended to be run locally on your Desktop Computer (unless, say, you're testing it out). You'll want Dada Mail running on a server that's publically available via the web, so that subscription and unsubscription requests can be handled at all times.

Do you provide hosting services?

Personally, no - I do have some good suggestions on hosting:


Dada Mail looks awesome! Installation is way over my head, do you provide installation services?




How do you upgrade Dada Mail?



I have an older version of Dada Mail, or something called Mojo Mail, should I upgrade?

Please, yes.


Does Dada Mail handle announce-only lists? Discussion Lists?

Dada Mail handles announce only lists with ease - a standard installation will be all you need to run Dada Mail as an announce-only list.

Dada Mail can also be set up to allow discussion lists, you'll have to also install the Bridge plugin.


The Bridge Plugin can also be set up to provide announce-only message sending from your mail reader -

Does Dada Mail handle bounced messages?

See the Bounce Handler plugin:


How do I create the HTML Subscription form code to place on my web pages to allow people to subscribe to my list?

Log into your list control panel, click, Appearance and Templates - Subscription Form HTML

Can I hook Dada Mail up to a form on my website?

Sure - in fact there are two different form handlers to choose from, FormMail.pl


and: TFmail.pl


Both do a similar job, emailing you the fields filled out on your form and subscribing an email address, also filled out on a form, to a Dada Mail list.

You can also make your own - you may want to look at the cookbook for Mailing List Subscribers:

If you know a little Perl, it isn't too hard. A great place to see a working example is in the FormMail and TFmail scripts themselves. Do a search for, "dada" and you'll see the relevant changes.

Can you compare Dada Mail to another program for me?

Not really. I can't in good faith tell you what Dada Mail has and Brand X lacks, since I, personally, only use Dada Mail. The feature list of Dada Mail is very verbose, so the easiest way to get an idea of what Dada Mail can do is try it out.

From the very begining of the project in 1999, I set out to make something that was a little different than what was out there and I'm still doing that. Dada Mail is an experiment, if anything.

Is there a Demo of Dada Mail set up that I can use?

Yes! - see:


Do I need to keep my browser window open for the entire mail sending?

It's not the worst idea - the best thing to do is put on the, "Monitor Your Mailings" screen to the mailing you currently want to keep an eye on.

There are chances that a mailing will stop unexpectantly, and keeping this monitor up will prevent that. There are also ways to not need to have this Monitor Your Mailings screen open, regardless of your hosting setup.

This topic has it's own FAQ:


Which is a must-read.

How do I send email messages with formatted text/images?

Short Answer:

Email messages that are formatted with text, images, etc. are done by writing the message in HTML. So, write your message in HTML!

Long Answer:

(See short answer first)

There are many many MANY ways to send an HTML-formatted email using Dada Mail.

How do you install, "CPAN Perl Modules"

There are many advanced features in Dada Mail, that rely on CPAN Perl Modules

CPAN is the Comprehensive Perl Archive Network - it's a great collection of reusable Perl code.

Installing these modules may be tricky for the uninitiated. We'll go over a few ways you can install these modules:

The cpan Shell

The, cpan shell is how one usually installs CPAN modules. You'll need root access to your hosting account, usually, but you can install CPAN modules in your home directory. This topic is well over the forté of this particular FAQ, but do see:


Actually, this entire site is very helpful:


So, say you need a Perl CPAN module that Dada Mail wants to use, like Gravatar::URL. Once you have your CPAN shell all set up, you'd just ask cpan to install it, like so:

 cpan install Gravatar::URL

Cpanel's Perl Module Installer

If all this talk of shells and commands and CPANs has you confused, you're in luck, if you have a hosting account that's powered by Cpanel.

Your Cpanel may have a Perl Module Installer - in your cPanel look for, Perl Module Installer. Once in this screen, just enter the module you'd like to install, like, Gravatar::URL. and it'll handle on the hard stuff for you, similar to how its down above.

The List Confirmation Process

Can you explain some of the terminology of the confirmation process?

Why, yes. Here are some terms you'll hear:


Running the Program Generates a 500 Server Error Message when I do, "x"

See the error FAQ:


Dada Mail and HTML Templates

How do you change the Dada Mail Logo?

Create a new image around 125 x 50 px (if you want to match the size of what's currently be used). Save it as, "dada_mail_logo.png"

Place it in your, dada_mail_support_files/static/images directory.

Remove your screen cache (either delete the, .dada_files/.tmp/_screen_cache directory, or use the Screen Cache plugin) to see your changes take effect.

Can I change the Program's Name?

Add this line to your .dada_config file:

        $PROGRAM_NAME = 'My Program'; 

Where, My Program is the new name you'd like to use.

How do I change the default look of Dada Mail?

Short Answer:

If all you want to do is tweak the CSS styles of Dada Mail, the global CSS file is located at:


You will never see this file directly in use in Dada Mail, but you can view it in your web browser by adding /css to the end of the URL to Dada Mail:


If you're comfortable with CSS, a lot can be changed with this file alone, from fonts and colors to the overall page layouts. Everything is nicely organized in there, and the few hacks used are thoroughly commented - it may be all you need.

Really Long Answer:

Going even beyond the considerable CSS control outlined above, Dada Mail is extremely flexible in this respect. Extremely.

First: Clarification.

Dada Mail uses different templating systems depending on what needs to be done, but there's basically two types:

Are there any official translations of Dada Mail?

At the moment, no, but check:


For translations provided by Dada Mail users. For example:


Is Dada Mail, version 2.10.2 translated into German. A more user-friendly list of translations is probably located at the main download page at:


How do you translate Dada Mail?

Basically, follow the instructions used to customize the Dada Mail templates (above)

How do you change the character set/encoding of Dada Mail?

There's a few different things you'll need to change:

HTML screens are control by the Config.pm variable, $HTML_CHARSET. You can change this to whatever you'd like. For example, if I'd want to change this to, UTF-8 I'd write:

 $HTML_CHARSET ||= 'UTF-8'; 

Email messages are controlled per list. In the list control, go to: Mail Settings - Advanced Options and select the charset you'd like to use under, Default Character Set of Mailings

If you do not see the charset you want to set Dada Mail to use, you can add the charset in the Config.pm array, @CHARSETS

You may want to make sure your list template does not also have the character set set in the headers. If it does, just make sure it's the same as what Dada Mail sets it as.

One thing to note about email messages are character encoding: currently, Dada Mail does not support anything but Latin 1 in the message headers, anything else is going to look like gobble-de-gook. We hope to render this problem soon.

SQL and Dada Mail

Does Dada Mail need an SQL server to run?

No. But, SQL is an option.

Does Dada Mail support an SQL backend?

Short answer, yes

Long Answer:

Dada Mail supports MySQL and Postgres with saving its:

It does not support SQL with saving its:

What are the benefits of using the SQL backends?

Well, there are the basic benefits of SQL over a, "Flat File" DB:

There are also certain features that are available when you use the SQL backend that are not available to you when using the (default) alternative.

These include:

  • Ability to View Embedded Inline Images in the archive

  • Ability to download attachments

* Subscribers:
  • Using the Global Black List

  • Global List Sending (Sending to more than one list at one time, without duplicates)

  • Global Unsubscribe

What are the disadvantages of using the SQL backends?

The DB File backend for the Archives and Settings has an auto backup feature; the SQL backend does not - it is advised to you create a simple auto-backup routine for your SQL tables.

Not really a disadvantage, but the SQL backend will not speed up your mailing list sendings.

It is now my official recommendation that you use the SQL backend, if possible. This is not set by default for an easier installation process.

How do I move from the default backends to the SQL backends?



Mailing List Messages

By default, the Mailing List Messages - meaning, messages that are sent to everyone on a list, provide quite a bit of information about the list and how to unsubscribe. It's very verbose, but we feel that it's a good start.

To change the mailing list message template, login into your list control panel and navigate to: Appearance and Templates - Email Message Templates

You'll see many text fields with all the email message templates that are easy to change. You are looking for two: Mailing List Message (Text Version) and Mailing List Message (HTML Version)

Edit to your liking - one special tag that you're going to want to make sure you still include is the: <!-- tmpl_var message_body --> tag. This tag will be replaced by your actually message body - meaning, what you wrote, when your mailing list message is sent.

If your mailing list messages are coming to you as blank, make sure you did not remove the, <!-- tmpl_var message_body --> tag!

These two messages can be changed globaly in the Config.pm file, under the variables: $MAILING_LIST_MESSAGE and $MAILING_LIST_MESSAGE_HTML

If a list already has edited any of the email message templates, your global changes will not take affect for that list.

Your mailing list message will be required to have the unsubscription link available:

        <!-- list_unsubscribe_link --> 

If you remove it from your mailing list message template, it will be re-added, before sending.

Are the messages I send with Dada Mail traceable back to me?


List Subscribers

How many subscribers can Dada Mail handle?

The amount of subscribers that Dada Mail can handle depends on your server setup. Roughly, the cheaper a setup you have, the smaller a subscription list you're going to be successfully be able to have. Cheap webhosts usually impose limits on the resources available to their clients. These limitations include the amount of emails that can be sent in a window of time, the amount of CPU time a program like Dada Mail can use and software libraries and helper applications available to Dada Mail. Basically, you get what you pay for with web hosts.

I do not have any stats.

I have listed some hosts I like here:


Can I track statistics like, who opens my email messages, who clicks on my URLs or anything else that ties activity of my mailing list to specific email addresses?

Yes. See the Tracker plugin:


It can keep track of url clickthroughs, email opens, forwards, archive views, # subscribers in your mailing list, when a message is sent and soft/hard bounces.

Can I directly work with the subscription list?

Yes, we do not suggest it. Dada Mail's, Invite/Add admin screen does a good job in keeping your list's clean of invalid email addresses, duplicates, blacklisted addresses - etc.

If you're starting a new list and know for sure that you're list is squeaky clean and you're using the default, PlainText subscription backend, you can just open the subscription list. The list itself is saved in a file called:


where, listshortname is the shortname of your list. The file itself is probably saved in the directory you've saved in the $FILES Config.pm variable.

The format is as follows:

One email address per line, followed immediately by a newline. The end of the file has a newline all by itself. All newlines are Unix style.

Be very careful when editing the file manually, as unexpected things may happen if the format is broken.


Tuning Dada Mail to Send Mass Mailings Faster

Mail Sending

See the Mail Sending FAQ at:



Is there a way to add a message to the archive, without sending the message?

Yes! There are a few ways.

Only Archive, Don't Send, method

1 Find the message you would like to edit. Copy its contents.
2 Log into Dada Mail's List control panel and go to, "Send a Message". (Re)write the message.
4 Check: Archive this message
5 Check: Only Archive, Don't Send
6 Change: Back Date ( month/day/year - hour:minute:second )

To whatever you so desire.

7 Click: Submit Mailing List Message

This option is also available in the, "Send a Webpage" screen.

Edit the SQL Table directly

If you're using the SQL backend for archives, just edit the message in the SQL table. You'll most likely want to change the, "subject" and, "raw_msg" columns. Not for the faint of heart.

Edit the archive backups and reload

This is definetely not for the faint of heart. HACK ahead:

If you are not using the SQL backend for Archives, Dada Mail keeps a backup of your list's archives.

If you set the $BACKUPS variable in the Config.pm, they'll be located in this location, in a directory named the same as your list's Short Name. If you did not set this variable, look in the directory you set in, $FILES

Inside this directory, you should see another directory called, archives. Navigate into there.

Inside that directory, you should see one or more directories, who's names are all in numbers. Find the newest directory and navigate to that one.

In that directory, you should see a whole lot of files, whose names are also numbers. Find the message that corresponds to the message-id of the message you want to edit. The format of the file is explained in this faq under, How does Dada Mail save its information? Edit that file.



and go through the process of restoring your lists. Heed the warning of making redundant backups.

Told you it was a hack.

Glossary Terms

What the heck is...

path to sendmail

sendmail is a command on the server itself that... sends mail! It's a utility that Dada Mail can use for its mail sending. Usually, it's located at:


which is the default location set in Dada Mail. If you do not know what the path of sendmail is for your hosting account, use this value. If mail doesn't seem to be sent, ask your hosting provider what the, "Path to sendmail" is.

absolute path

An absolute path is a path to some sort of file or directory that starts at the root of the filesystem. Example:


may be the absolute path to your, "home" directory.

When accessing your account via FTP, you may not be able to navigate up to the, "root" of your filesystem. This is for security purposes.

See also:


System Requirements

What do I need to run Dada Mail?


Does Dada Mail need any special Perl CPAN modules installed?

Yes it does, but Dada Mail should come with all the CPAN modules that are needed within the distribution itself.

Currently, this is done by copying a local perllib into the, dada/DADA/perllib directory of the Dada Mail distribution.

If you'd like to have the CPAN modules required installed in your site-wide perl library, a Dada Mail-specific CPAN Bundle is located in the: dada/DADA/extras/developers/DadaMail.pm file.

What is Dada Mail?

Is Dada Mail a Server? A Daemon?

No and no. Dada Mail does not listen to any particular port, nor does it always run in the background awaiting a request. Dada Mail runs (mostly) as a simple CGI script.

Dada Mail does have some modes where it can be run from a command line/cron job, but even then, it runs and exits; there is no daemon activity in Dada Mail. Dada Mail should always be run as a regular user and never as root.

Is Dada Mail an Autoresponder?

No. Dada Mail is not an autoresponder.

The closet thing in Dada Mail is going to be Beatitude, which allows you to set mass mailings on a preset schedule, but it does not keep track, on a subscriber-by-subscriber basis, which messages an individual subscriber has received.

What is Dada Mail?

Dada Mail is a light-weight, fully featured announce-only Mailing List Manager. It does also support discussion lists, with the help of the Bridge Plugin. Discussion support is minimal, compared to its announce-only capabilities.

Dada Mail is primarily run as a plain old CGI script, it does not need any special modules installed, except the one it comes with. It does not run as a mod_perl enabled script and needs no special treatment. If you can run CGI scripts on your hosting account, Dada Mail will work for you.

What does Dada Mail do?

Dada Mail takes care of much of the drudgery of maintaining a mailing list. It primarily does three things very very well:

How does Dada Mail save its information?

See the Dada Mail File Format FAQ:


Who develops Dada Mail?

Justin J is the lead designer of Dada Mail.

Can I help?


Please get in touch:


Is there a public repository for Dada Mail?



Dada Mail Project