Cool And Free Launch Page With Ajax Newsletter

Almost every web project needs a "launch page (under construction page)" or a page to show when the website is under maintenance.

Rather than creating a new one from scratch for every project, here is a free launch page with an Ajax newsletter.

Don't forget to bookmark this resource at

Free Launch - Under Construction Page


E-mails are saved in a .txt file with ";" delimiters. So they can be used anytime with a simple copy-paste.

Important: Before using this free launch page, change the name of the text file to anything hard to guess and also update the name of this text file in newsletter.php file's 1st line.

You can use this template as is or update it easily to fit your needs.

Features of this free launch page:

  • Ajaxed interface
  • Server-side e-mail validation (secure)
  • E-mails are saved in a text file with ";" delimiter. So, when your website is launched, you can simply copy and paste them to your favorite e-mail application and announce the launch.
  • Configurable error & success messages
  • Cross-browser (tested in all major browsers)


PSD files of bubbles are included in the download package.

This launch page is free to use (no links required) but can not be distributed from any other website or sold.

If you share it as a resource in your website, please link to this post. Thanks.

  1. Reply chase July 11, 2008 at 1:20 AM

    Hey I love it! Classy and slick! No more ugly “Coming Soon” pages.

  2. Reply Stefan July 11, 2008 at 4:12 AM

    Thanks! Hopefully this will be useful for me in the future.

  3. Reply weblizzer July 11, 2008 at 6:41 AM

    great tool, i will try to used this for some of my developments.

  4. Reply Toni July 11, 2008 at 11:42 AM

    You can also check out the commercial version:

    and the gallery of Launching Soon pages:

  5. Reply `rolandinsh` July 11, 2008 at 3:45 PM

    This was what I was searching some days ago! Thanks!
    I played with CSS and HTML little to customize it more πŸ™‚ with changing code for my needs… So this post came as inspiration πŸ™‚

  6. Reply Techster July 12, 2008 at 1:25 PM

    I tried using this page but whenever I add email it says Email is Invalid and sometimes no message. In all the cases the success balloon does not show.

    Any heads up?

  7. Reply Umut M. July 12, 2008 at 2:15 PM


    Can you make sure the text file has write permissions.

    And alos that you2ve updated th ename of th text file in newsletter.php at 3rd line saying:
    $newsletterFileName = “file.txt”;

    When I check from Firebug, I see the error that seems like a permission problem.

  8. Reply Techster July 13, 2008 at 9:09 AM


    Thanks for the reply. I forgot to change permission; works with granting world write ability to file.

  9. Reply eod July 15, 2008 at 10:11 AM

    Thank you, works fine.

  10. Reply askin July 16, 2008 at 8:17 AM

    not working πŸ™

  11. Reply Umut M. July 16, 2008 at 9:03 AM


    It can be a “write permission” problem to the text file.

    Try this to see the error:

  12. Reply askin July 17, 2008 at 2:17 AM

    hi wrd please look

    Δ± cant sea error code πŸ™

  13. Reply Umut M. July 17, 2008 at 8:10 AM

    The website seems to be not reachable right now.

  14. Reply bensch@amin July 22, 2008 at 5:06 PM

    hi there! thanks a lot for your great website and the cool launch page! unfortunately it is possible to insert a wrong e-mail adress like benjamin@webresourcesdepotcom, where the dot is missed in the second part of the e-mail… just that you know! kind regards from switzerland, bensch@amin!

  15. Reply Umut M. July 22, 2008 at 9:10 PM


    Thanks for following WRD & nice to see that you liked the launch page.

    I’m normally not a PHP guy & found the open-source e-mail verification class from a script website by trusting the comments that it was perfect. Seems like not.

    I’ll check to findout another class for that & would be nice if you know one & share.


  16. Reply bestajaxscripts July 25, 2008 at 11:01 AM

    it is lovely, many thx

  17. Reply Andrew August 26, 2008 at 5:38 PM

    Just added this to one of my sites, thanks!

  18. Reply manHa November 8, 2008 at 11:01 AM

    Thanks, I’m using it for πŸ™‚

  19. Reply Umut M. November 8, 2008 at 1:29 PM


    Nice customization, beautiful use.

  20. Reply manHa November 8, 2008 at 2:04 PM

    Hey thanks wrd πŸ™‚

  21. Reply Waz November 25, 2008 at 4:40 PM

    Could you please explain how a ‘website downloading program’ would skip finding this file?

  22. Reply Umut M. November 25, 2008 at 4:49 PM


    Simple, there are no links to the file that anyone including those programs can see.

  23. Reply taylor November 27, 2008 at 11:17 AM

    How do I install this?

  24. Reply beto November 28, 2008 at 7:03 AM

    wrd, what is that permissions that the txt file must have?

  25. Reply Umut M. November 28, 2008 at 8:02 AM


    Simply put the files on your website and give the text file write permissions.


    It requires write permissions

  26. Reply JC December 18, 2008 at 3:00 AM

    AWESOME. Using it now. πŸ™‚

  27. Reply Matt December 28, 2008 at 4:09 PM

    Any site that requires an “under construction” page should not be online. Thus, an “under construction” page/script is not needed. Putting a site online before it’s ready is like inviting people to your house before it’s built. Makes no sense.

  28. Reply Umut M. December 28, 2008 at 4:39 PM


    I have to disagree with this.

    It is generally the users who want to find information about a service/company whether they are invited or not.

    So, even though you don’t provide the full content, you may still want to display your phone, address etc. until your site is built as it will still be helpful to anyone who searches you on the net.

    But it may be a wise decision “not to inviting them” before the site is ready.

  29. Reply Jorge Linares January 2, 2009 at 4:06 AM

    Nice script, it will be very helpful for future projects.

    Thank you

  30. Reply bob April 1, 2009 at 10:08 PM

    hot apply in Joomla web??

  31. Reply Andrei April 2, 2009 at 4:11 AM

    Super cool. Thanks!

  32. Reply antonio May 5, 2009 at 12:47 PM

    Nice, thank you.

    CHMOD txt file to 777

  33. Reply Francois Botha June 17, 2009 at 3:40 AM

    Pity the email validator doesn’t accept +’s. It’s part of the RFC spec and lots of gmail users use it.

  34. Reply Erwin Schro July 6, 2009 at 11:16 PM

    Thanks a lot for this…I’m thinking to implement this on Joomla but there’s a conflict issue with built in mootools lib so I have to looking around about this 1st.

    Thanks again

  35. Reply gibet July 19, 2009 at 2:45 AM

    This is really good script and not to mention its free! I tested it on my localhost environment and run it without any errors or whatsoever but I have a problem running it live on my host. The confirmation success and error balloons doesn’t show up. I checked every line of codes and applied appropriate permissions on my host but still it doesn’t show up. I checked the online “file.txt” and its adding email addresses on the file. Any ideas? Thank you very much.

  36. Reply refulez August 21, 2009 at 2:43 PM

    dude! i’ve been looking for 3 hours for a free launching soon script thx!

  37. Reply Rick December 1, 2009 at 6:49 AM

    Nice script there. I just implemented it on this site πŸ˜€

    Many thanks for the free script πŸ™‚

  38. Reply Scott Collingwood December 13, 2009 at 6:01 PM

    Well Done Dude!! & Thank You!!!

  39. Reply sachin December 26, 2009 at 12:02 AM

    I uploaded everything… but it loads all th images… and its not displaying success or error balloons . but its writing email ids in file.txt

  40. Reply Lee Davis January 2, 2010 at 11:56 PM

    Why is the [if($pass)] designating that numbers against an all-white background are to be echoed with the entry of a valid email address, when what I need to do is to have either the red balloon (for failure?) or the green balloon (for success?) appear with their unique message when the input is submitted? And where can I edit the success/failure messages – didn’t find them yet. This is made all the harder for me as I’m injecting this into the framework of a CMS (LotusCMS) and have almost gotten everything inserted where it’s supposed to be. Oh, thanks, BTW, for this great resource and making it available to the general public – I’m 5 yrs away from getting up to speed on Ajax (I’m slow, lol!), and there’s no way I’m breakin’ my head on that now.

  41. Reply Lee Davis January 3, 2010 at 2:02 AM

    OK, scratch that last post, the ONLY thing I’m having problems with is getting the success/error messages to show when the colored balloons do. I realize that the numbers I was refferring to before (1, 2, & 3) are referenced in greater detail within the default.html file within the first JS after the inline CSS (within the
    section) – if (theResponse == 1). The example given is for the .successMessage that’s supposed to display within the green balloon. I get the correct balloons for each input scenario (right, wrong, none), but the text is nowhere to be seen. I don’t find anything on this I can change in the inline CSS (or maybe I missed something),
    but I can’t tell what. As soon as I get that problem licked, I’m going on a custom binge and trick the page out a little more (CSS alter, etc). Almost got it…..

  42. Reply Francisco January 15, 2010 at 3:41 PM

    I like this very mucho, but I would like to add a name and email, its that possible?

    That way I could know the name of the email entered.


  43. Reply Umut M. January 15, 2010 at 5:46 PM


    Yes and it is pretty easy. Just check the JS code and you can improve it by duplicating how it handles the e-mail input.

  44. Reply Muhammad faisal Jawaid Attari February 4, 2010 at 5:21 AM

    really cool…. today i implemented this one on my blog area…. πŸ™‚

    Thanks for sharing.

  45. Reply shoaib hussain February 22, 2010 at 1:21 PM

    that somethign really smart and give us some more time ,to do more productive work .thnx a lot

  46. Reply Rizwan February 27, 2010 at 8:02 AM

    I need to use this, but where it will send email notification of subcriber and where I can find, if need to be changed ….. thanks

  47. Reply Lee Davis March 2, 2010 at 11:16 PM

    Have managed to twist the page into the splash page I need it to be. Haven’t had luck with resolving how to stop newsletter.php from allowing fake address from being taken, but that’s more work down the road. The more I work with the page, the easier it becomes and I’m only limited by my own imagination. ILI!!!!!!!!!!!!!!
    Can I get a guesstimation as to why I might be having problems as addressed by the first statement?

  48. Reply Lee Davis March 3, 2010 at 10:29 AM

    Still having the problem that if I add a fake address like “forn.morn”, I get the red error balloon “Email not valid”. But when I add it as “forn@morn”, it gives me the green balloon “Your email has been added to the list”. I know that the .js files are supposed to regulate the behavior of the mail address format and are coded to automatically scan the email addy for a prefix of @ so
    it can judge whether the format is suitable for further
    assessment (or I think this is it from what I’ve studied on). What can this buggy be now? Just a LITTLE help?
    Dyin’ over here…….

  49. Reply Icon collections March 8, 2010 at 9:05 AM

    very very meaningful post.I played with CSS and HTML little to customize it more with changing code for my needs… So this post came as inspiration.
    Thanks for sharing this meaningful knowledge.

  50. Reply George March 22, 2010 at 5:08 AM

    nice πŸ™‚ how can I import one more field on the form and for example under the email field to import an name field and when he user click add my email to send both of the fields to the txt file ?

  51. Reply john March 28, 2010 at 9:46 PM

    Ok, love the code.

    But one question:

    When you do this:


    what is the point of doing the following????


    Is it to ensure they don’t enter something with double brackets? I just don’t get it.

    I am fairly new, so please be gentle! Thanks.

  52. Reply Umut M. March 29, 2010 at 3:12 PM


    Although I’m not 100% sure as I can’t call myself a PHP guy, I think you’re right with that.

  53. Reply daniel April 15, 2010 at 1:50 PM

    finaly something simple that actualy works, have been looking for days for somthing like this..
    although it need some styling make up πŸ™‚

  54. Reply Translation Los Angeles April 26, 2010 at 11:55 PM

    thank you, worked for me

  55. Reply Ronan May 14, 2010 at 4:17 PM

    Excellent Post! As always, a great read!

  56. Reply richa May 17, 2010 at 8:34 PM

    i cannot give the txt file permission. im using the filezilla client and it says

    “Command: SITE CHMOD 777 file.txt
    Response: 500 ‘SITE CHMOD 777 file.txt’: command not understood”

    please….PLEASE advise

  57. Reply richa May 17, 2010 at 8:41 PM

    86 that last message…
    filezilla cannot set permissions. i went onto the hosting site and changed it there…now they add thanks anyway!

  58. Reply PetschnigW May 20, 2010 at 12:23 PM

    Yeah, I aggre to this. Very good post. Go on…

  59. Reply hncv May 24, 2010 at 3:11 PM

    Oh, very useful information, thanks.

  60. Reply Randy June 30, 2010 at 8:51 PM

    Where is the CSS file? I didn’t see one downloaded.

  61. Reply Randy June 30, 2010 at 9:07 PM

    I found out it. Everything is in the default.htm file

  62. Reply Mark September 16, 2010 at 5:42 AM

    This is a great little resource, and free too. Thanks for sharing

  63. Reply Pradyumna Sarkar October 14, 2010 at 11:11 AM

    How to add some extra text in this page & My logo,,, Im a beginner.

  64. Reply Umut M. October 15, 2010 at 4:08 AM

    @Pradyumna Sarkar,

    You’ll need to edit the files with an editor (Notepad, Dreamweaver, etc.).

  65. Reply Craig November 7, 2010 at 7:45 AM

    This is a great example of a useful holding page whilst developing a new site……

  66. Reply Dennis December 4, 2010 at 6:15 PM

    works great! I hope enough people see this – I hate when people use under construction pages – I never could get myself to do that – I always made a simple HTML page and said coming soon or something with some content…

    BUT This Now this is great! – I’d like to see one addition someday – The ability for the script to notify me when the file text has been updated… ( I’m searching for a script I can add to the newsletter.php file – Any one have a suggestion… I’m not a programmer… Yet!

  67. Reply xyz December 23, 2010 at 11:14 AM


    Can we use this script on a theme which will be on sale on a website?

  68. Reply Umut M. December 24, 2010 at 9:50 AM


    Yes, just mention in the .PHP file that “that part of the code is created by” and feel free to use it anywhere.

  69. Reply Jerry March 3, 2011 at 8:54 PM

    Hi Umut,
    Thanks for sharing. This is awesome.

    When I put this on my website, I have this error:
    Webpage error details

    User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E; Tablet PC 2.0)
    Timestamp: Fri, 4 Mar 2011 01:52:53 UTC

    Message: Object doesn’t support this property or method
    Line: 108
    Char: 2
    Code: 0

    Could you help me with this, please?
    IE 8, Win 7.

  70. Reply Umut M. March 4, 2011 at 5:21 AM


    Seems like the jquery.pngFix.pack.js file (included in the download package) doesn’t exist in your setup.

    Jut pick it up from the download package and upload it. That’ll solve the issue.

  71. Reply Jerry March 5, 2011 at 4:23 AM

    Thank you very much (Sorry for that mistake)
    Please check my website.

  72. Reply Terry April 30, 2011 at 11:47 AM

    I so could not get this to work properly at all the balloons only showed up red no lettering and email would not write to file.

    I verified the write permission to that file but it still did not work

    Any suggestions of what I seriously am doing wrong? I even copied the jquery.pngFix.pack.js to the same folder but it still did not work. πŸ™

  73. Reply Mickey May 22, 2011 at 11:36 PM

    Can we add additional box to let visitors add a comment along with their emails too? Hard to configure?

    So many thanks!

  74. Reply Umut M. May 24, 2011 at 4:57 AM


    Pretty easy. Just add a new form field, handle it on the PHP part and update the balloon size accordingly.

  75. Reply Derek June 5, 2011 at 3:25 PM

    In the newsletter file it says “/** IMPORTANT: EDIT BELOW UNLESS YOU KNOW WHAT YOU ARE DOING*/”

    shouldn’t it be DON’T EDIT BELOW

    extremely minor error. Thanks for the pre-launch design and code though!

  76. Reply eddie June 9, 2011 at 9:33 AM

    Cool, thanks for making it free. A suggestion: for better security of the email signup file, why not call it filename.php then stick a <? exit; ?> at the top?

  77. Reply Umut M. June 13, 2011 at 9:56 AM


    You are right, fixed it.


    PHP is not my first dev language and I can’t say I’m really good at it (trying to get better).

    Can you explain more the security suggestion of yours?

  78. Reply dichar June 19, 2011 at 7:58 PM


    I does not work by me.
    I get all the time an empty red ballon. Will you please help?

  79. Reply daniel July 11, 2011 at 5:33 AM

    There is a an live example on Joomla! CMS, check out – rota dot sk

  80. Reply ztank September 2, 2011 at 3:59 AM

    I loved this launch page it is amazing!
    May I ask a little improvement? I would like to add another optional field where the visitor may (or may not) write the Name. Is it easily doable?
    Cheers! and Thanks!

  81. Reply Umut M. September 2, 2011 at 7:51 AM


    Yes, it is with a little HTML-JS and PHP.

    The code is pretty straightforward, just improve it.

  82. Reply michael October 17, 2011 at 2:40 PM

    Thanks for this page. Well thought out and simple to implement.

    Regarding the issue with the email validating when there is a missing dot: Hasn’t anyone figured this out yet? It’s been over three years since this was posted.

    Can you provide the address for the opensource validation script? Then we could monitor when this has been updated and update our files.

  83. Reply Steve SUP November 14, 2011 at 7:05 AM

    Just stumbled onto this after googling for this exact problem. Thanks for the page and hopefully will be able to put it to good use soon.

  84. Reply damian November 23, 2011 at 2:58 PM

    It doesn’t work:/ I get red baloon all the time and no text inside. Any ideas how to fix it?

  85. Reply Umut M. November 23, 2011 at 3:27 PM


    I suggest checking with Firebug which should display any possible errors behind.

  86. Reply kathie December 12, 2011 at 4:41 PM

    @damian, on file.txt ‘s file permission , try 777

  87. Reply Relatiegeschenken February 3, 2012 at 4:52 AM

    Looks like a nice free solution for an “under construction” page.

  88. Reply lice treatment February 2, 2013 at 2:25 AM

    well thanks for this page. thought out and simple to implement. great work

  89. Reply Russische Tastatur September 9, 2013 at 4:37 AM

    Thank you for this Free Launch Page Template. Maybe i can use this in the future!

Leave a reply