Posts Tagged ‘Sarahsoft’

You know what’s a cool feeling? When you realize one of your apps that you thought was getting very little attention is actually being visited a non trivial number of times a day. Time Until is receiving close to 100 users a day! One thing I’m realizing: the more popular my most popular apps become, the greater the likelihood that collateral apps get a ranking boost.

This month users are up 8.13% Not bad considering this is a shorter month with an extra Saturday and Sunday. Revenue ended up at $165.47 for the month.

This was a light progress month due to illness, but I did finally get that Website Spell Checker finished. I then proceeded to find 238 misspelled words on That’s not 238 instances of a misspelled word, but 238 uniquely incorrect spellings. I was perhaps a tad over due.

The new spell checker necessitated an massive update to the suite of website apps, refactoring internal code as well as the overall look and feel of the apps, in order to be useful. Even though I made improvements to the underlying spell checker, there were still a number of domain specific words that my spell checker would never be able to recognize as correct. Words like “datayze” which would be misspelled in any other context. 336 such words on my site, to be exact. When I ran the Website Spell Checker over my site, it identified 578 possibly misspelled words, only 41% which were actually misspelled.

The website spell checker is unusable with so many false positives. The time required to go through a list of that size makes it less likely that I’d check the spelling of my site with any regularity. I wanted to be able to dismiss words the spell check should ignore, and to save my work so I didn’t have to keep dismissing the same words every time I wanted to use the tool. Thus I added an “export to CVS” button. Now after I tell the spell checker which words to ignore I can export the list and save it for next time.

Since this seemed like a handy feature I went ahead and added an “export to CVS” function for all data tables in my other website apps as well. Now you can save a copy of the html errors with the Site Validator, or the number of unique phrases with the Thin Content Checker.

Sadly that’s pretty much the end of the updates in April. Ah well, May is a new month (with an extra Monday, Tuesday and Wednesday.) I should have better progress this month. We’re only 15 hours in to May and it’s already looking to be a very strong day.

March’s numbers are the strongest yet for my business! Income wise, Datayze earned $182.98, nearly double February’s total. My lowest per day user count was 1,505 this month, making it my first month with 1,500 users each day, in addition to my first month of 1,000 users each day! Overall, users are up 37% throughout the month.

Even though users are up, growth appears to finally be slowing down a bit. The numbers rose much slower each week in March than they did in February. If I account for the fact that March has 3 extra days compared to February, than users are only up 25%. I’m also starting to see what I believe is a summer pattern. Search result clicks on the weekends have been largely unchanged while weekday clicks are still raising, albeit more slowly than before. The hourly patterns of when users are active is also shifting. I’m anticipating only a 10-15% growth in April as a result.

Despite the desire to start focusing on content again, this was another mostly maintenance month. Some big changes: the tab menu will now resize on browser resize to remain a single, unbroken line, and the top submenus will reposition to fit in a mobile browser. I’ve also changed the blue colors on the site. I loved the old header color on my laptop, but it displayed as gray everywhere else. Since I’m building a business, and not a personal website, I decided to go with a color that would look great everywhere else, even if that meant I wouldn’t like it as much on my personal device.

As for new content, I did write another how to article: Understanding Scientific Studies (Miscarriage Edition). I wrote it after being incredibly annoyed at the number of misquoted studies, since they almost always misinterpret risk to be higher than it actually is which can cause undo stress and increase anxieties. My hope is that someone reading this article will be better equipped to spot this kind of exaggeration and ignore bad statistics on the web.

I’m trying something new for April. My to-do list is currently standing at 26 items, 11 have been marked as priority to be addressed in April. New content will be pushed as it becomes available, but fixes will be pushed all at once (and likely just once) at the end of the month. I’m hoping this will help keep me on tract to produce new content.

March 7, 2017

Market Share

The growth that I’m been experiencing of late, while awesome, has me a little nervous. It clearly can’t continue indefinitely. At some point the growth has to slow. The question I’m asking myself lately is, can I predict when? I need to get idea of how big the potential market is, and how big my share in it is. That’s easiest to do with the pregnancy verticals.

For this analysis I’m sticking with US data, since 71% of my user base is located in the US according to Google Analytics.

The birth rate in the US has been holding steady at just under 4 million the past couple of years. We might reasonably estimate that about 2.5% of expectant mothers don’t have internet access (1% of the 18-29 demographic, 4% of the 30-49 demographic). That would give us about 3.9 million potential users who may be interested in my pregnancy tools in the US.

Diving into my usage logs, median access time into the Labor probability calculator is 20 days before the due date, with a standard deviation of 27 days. This indicates a period of about 1-2 months where pregnant women might be interested in when labor is likely to occur. Conservatively, let’s go with one month. Than in any given month we might expect a potentially interested audience in the US as 325,000. Last month I had just 5,000 from the US. That means I am capturing just 1.5% of the US market.

What I don’t know is what percentage of those women would potentially care about labor probabilities. Statistics, in general, don’t appeal to everyone. I know they’re often met with skepticism when shared in the online forums. Recently one anonymous user described my Labor Probability Calculator as a random number generator. This is probably my fault for not making the mathematics behind the tool more apparent. Still, I get the feeling that a large percentage of the estimated “potential” audience would never be interested in my labor probability calculator, regardless.

This miscarriage apps are more popular. Last month I had over 10,000 users from the US spread out over the miscarriage apps. There are a lot of unknowns when estimating the potential market here, as not everyone fears a miscarriage, and not everyone knows their pregnant early on, but I might estimate I have 3% of the maximum growth potential in the US. Again, before we factor out those who just aren’t into statistics.

Of course this is ignoring other countries, as well as other none pregnant users, expectant fathers for example.

So where would this put my potential growth overall? It’s still hard to say, since I need a way of predicting mathematical interest. I doubt there are enough expectant parents to carry the 30% growth trend into the fall. Wouldn’t it be cool if there were, though?

February saw my highest per day rate of $3.44. It was also a shorter month, so the total of $94.95 was only my second best monthly total. Not exactly what I was hoping for, but I’ll take it.

Users were up an insane 49%, and the trend line shows no sign of stopping. With the exception of the Saturday before the Superbowl I had over 1,000 users daily every day, including weekends. By the end of the month most week days were seeing nearly 2,000 users a day.

The initial goal for February was additional content, but the site improvements appear to have greater return per effort spent. I did publish two new articles in How To and have two more coming. I also really need to create a site spell checker, which has been on my todo list, since creating the initial spell checker back in November.

The big change to Datayze was an update to the miscarriage probability model. In my opinion, how I handled the update shows how far I’ve come.

Back in 2015 I updated the, at the time, most popular app, the Readability Analyzer. I had been using a simplistic heuristic for counting syllables that tended to underestimate the number of syllables in a word. As a result, the Readability Analyzer was predicting slightly better reading ease scores than it should have. When I replaced the simplistic syllable counter for a more reasonable one the results were more accurate, but less desirable. My user base was upset. I got a number of angry emails about it, and more than one person vowed not to use it again since it wasn’t “stable”, despite this being the only change in nearly two decades. The user base fell 36%. At the time it was my most profitable app, so seeing those users flee was hard.

Flash forward to a few weeks ago. I became aware of several large scale studies on miscarriage that tended to have higher per-week miscarriage incident rates than the current studies I was using in my model. They had a much larger participant pool. Excluding them from the model felt dishonest and would do everyone using my miscarriage apps a disservice. Adding them would once again create more accurate, but less desirable results. I was terrified that the change would kill my growth.

I spent a week fine tuning my model. I knew there were many women who check the app daily, and would be shocked and alarmed that the probability of miscarriage was increasing. I wanted to be sure of my model before making the change. Then, as midnight Friday approached I made the push. I put a note explaining why the model had changed and stressed that I would be available for questions. Friday night I could not sleep. I checked my phone constantly for emails. The first came at 4:33 am. A few hours later news had spread to the forums.

Normally I make it a policy never to interact when people share my apps in the forums unless they invite me to do so. (I don’t want to intrude, and I think it’s unprofessional to go around creating accounts on other sites just to respond to comments). This time, however, my apps that were intended to reduce stress were actually creating it. I felt compelled to reiterated why the change was made, and personally apologized to everyone who was negatively affected. The personal apology seemed to help, and so far there hasn’t been a mass exodus of any kind. It’s even possible that my stressing my commitment to model accuracy I may have helped my overall reputation.

My goal for March is to finally get that Site Spell checker app up so I can use it. I want to improve the synonym list for the Word Analyzer, and see what it would take to get a better page speed score. It’s also time I start thinking more and more about my social media presence, and what it should look like.

As predicted, it’s been a mixed month. Despite clicks being up 12% and users being up 13%, income was down 22% this past month. In January I earned just $80.95. That’s four times higher than this time last year, but sill lower than the trend. Despite that I’m cautiously optimistic about February for a few reasons:

– My users searches per day, my preferred metric, was actually down the first half of the month, and didn’t start to get back on track until the 16th. The second half of the month was much stronger (user search wise) than the first half.
– I’m in the process of changing my mobile strategy so hopefully I can start boosting those metrics more.
– I’m seeing near immediate effects from the improvements I’ve made to the site this past month.

This month I spent mostly fine tuning my website. I ended up redoing much of the supporting page layout and content management scripting. The one is more streamlined while offering greater flexibility in terms of setting meta parameters and descriptions. Two days after the change I noticed a large bump in search engine traffic. And that was the second noticeable bump in traffic after a change this month! I don’t want to jinx it, but at the current growth rate 1,000 unique visitors a day, everyday, including weekends, in February may be possible.

In addition to the overall site update the Word Analyzer and the Pregnancy Week by Week got a significant upgrade.

It took over a week, but I finally finished the first pass of a synonym list for the Word Analyzer. Now the Word Analyzer can suggest easier (and harder, if that’s what you’re after) words with greater/lesser audience familiarity. The synonym list is by no means complete. Only 35% of the words entered into the analyzer so far have had synonyms. Since the word analyzer is a relatively infrequently used app (currently between 10-15th most popular) it’s not clear if the effort to improve the list will be worth it. On the other hand, improving the apps functionality may draw more visitors.

The Pregnancy Week by Week’s update was more design focused. My favorite feature about the Pregnancy Week by Week comparison was the hand sizes. I loved seeing when a baby would be as big as mom’s hand, or a theoretical big sister or brother. The feature was somewhat obscured, and the old layout made seeing the full calendar and important dates more difficult. The new layout is much nicer, though admittedly a little slower.

For February I have a new app and two new articles planned already. February is a short month, but I’m optimistic.

January 19, 2017

Index Prunner

After using my Sitemap Index Analyzer to analyze Datayze, I came across something peculiar. Notice anything… odd… about the following search results?

I don’t know about you, but if I ever reach 48 weeks & 6 days pregnant, miscarriage will be one of the last things on my mind.

The above search result is problematic for a couple of reasons. (1) The page linked to has no useful content. The Miscarriage Reassurer only accepts input up to 20 weeks. (2) It’s taking up a valuable spot away from another page that could have useful content. And (3) If no users click on the link, a distinct possibility given it’s unlikely to be relevant to anyone, the search engine could view the lack of clicks as a negative signal and may penalize the entire domain.

One could make an argument that users might be more inclined to click on wacky and clearly ridiculous search results. Curiosity is strong motivator. That could explain why such a weird result was promoted to the first page to begin with. Still, those still aren’t useful clicks, and are likely to lead to lower engagement.

Counterintuitively, it’s better to have a smaller number of high quality pages indexed by the search engine than have a large number of useless pages. I have no idea what led Google to this particular page, or what made Google index it, but it has to go.

Up until now I have largely been using the x-robots-tag header response to signal when pages should expire from the cache. That’s because up until now my impression of useless pages were mostly links to individual Labor Probability Calculators with long past due dates. Since the Labor probability calculator only calculates the probability of a labor for an existing due date, a page associated with a long past due date will have no useful content. The x-robots-tag header isn’t recognized by all major search engines, but right now my Google index far eclipses other major search engines, so it’s the one I tend to focus on. An expires tag isn’t so helpful in this case where the data is invalid from the start. The problem of spurious results might be a little more pervasive than I initially thought, its time to do a more substantial prune.

I had to modify my page set up so I could set the NOINDEX robots meta field. Now I just have to wait for the Googlebot to recrawl my website and do it’s thing. Good thing I already have an app to help me get started!

This past month I earned $103.91, making my 2016 grand total $495.90. I’ve finally reached the second target of $100/month! December was roughly 5 times greater than January, which is nice progress, even if most of it seemed to happen at the end of the year.

Last month I worried that Thanksgiving would affect my metrics, but the impact ended up being minimal. I was lulled into a false sense of security going into December. My numbers continued to climb and I was on track for another month of 32% growth. Then Friday December 16th – the first major travel day of the season – hit. Everything cratered from that point on through the end of the month. Visitation and income were down dramatically and continued to fall through the 25th. It looked like I was going to rocket past the $100/month mark and instead I just inched passed it! User growth ended up being just 15.4%, well under projections.

I was really worried that something other than just the holiday season was affecting my numbers. After all, the free fall started on the 16th! Even though I said I was going to focus on new content this month, I ended up spending a lot of time monitoring the health of my website. There I was, on my parents computer, remote connected to the server, long after everyone else had gone to bed on Christmas trying to identity and fix any possible problem.

I’m not sure how big an impact it had, but I did discover my website was running needlessly slow. Checking my speed performance I was getting an warning message that text files (including css, javascript, etc) were not compressing. I don’t remember ever seeing that warning before, so I’m not sure if something changed in the server configuration. (The joys of shared hosting…). Since I was already minifying Javascript and CSS, I thought I’d also minify HTML as well. And I thought minifying Javascript was non trivial. Minifying HTML with embedded javascript and PHP is a whole different can of worms. My solution works for the way I code, but isn’t general enough to make it to a how to article.

I did end up with two new pieces of content this month.

The first is Time Between which is just like Time Until, but allowing you to specify the start time.

The second app I’m really proud of. It’s the Sitemap Index Analyzer.

I wanted to get a better feel for how Google was indexing my site. The consensus online was to use proxies to query google and aggregate the results. That approach is a violation of Google’s terms (another reason for proxies – to escape detection), and I’m too much of a strict rule follower to ever consider something like that. I realized that I could work backwards. The Sitemap Index Analyzer profiles the sitemap, not Google’s index! It reduces the problem space to a few queries that are easy for a human to do. It then uses a statistical significance test to identity sections not being indexed. Same result, but with a way that doesn’t violate Google’s terms!

This month I’m going to work on more site improvements. There are a few things I can work on to enhance to professionalism of datayze, and I think as I continue to pass new thresholds of users that is becoming more and more critical to help maintain growth.

I am worried that revenue might fall in January. Now that we’re out of the shopping season, users may be less “clicky” and the worth of a click might be less. As long as I have strong user numbers, I can consider other ways to monetize.

December 15, 2016

Projecting Out

On the 25th of October datayze reached 10k unique users for the month. In November datayze reached the 10k unique user mark by the 19th. I’m projecting datayze will reach this mark early tomorrow morning. After a year of almost no growth, the past six months have felt incredible.

I spent this morning analyzing the data and doing some projections. The last four months have corresponded with a 32% month-over-month growth rate in users. Projecting out, I’ll earn 17 times more in the coming year than this current year, and by the following year I could replace my previous full time salary! And in a little less than five years, my monthly user base will consist of everyone on Earth!

Ok, the trend isn’t likely to continue that long. Making five years worth of projections off of four months of data isn’t mathematically sound. There are other variables that will impact datayze’s growth not accounted for in the last couple of months. For one growth will likely slow as Google finishes indexing the site. I’m also missing seasonal data. Still, it’s hard not to get excited. Still, it’s a very good sign for the near future. Growth will likely slow, but it’s unlikely to stop completely any time soon. I now have a better idea what works (and what doesn’t) and can be smarter about where I devote my energy. With a little luck I may yet make this pipe dream idea work.

All this growth does have a downside. I’ve become quasi addicted to watching my stats of late. I code with Google Analytics open, and find it difficult not to check a few times an hour. It’s the first thing I check in the morning, and the last thing I check before going to bed. I love numbers and these are easy numbers to love. But that distraction does interrupt work time. A morning spent making projections may feel good, but it doesn’t contribute to the bottom line.

Back to work for me!

December 6, 2016

Let’s Talk Metrics

The monthly progress and income reports have proven to be a great motivational tool over the past year. There have been times that I get too focused in the minutia, and minor dips can feel like major back steps. By keeping monthly totals it’s been easier to see the true progress I’ve been making. Not all metrics are created equal, and some are better at showing the current progress and potential growth.

By far, the best metric I’ve found for tracking growth is Weekly Search Result Clicks, the number of times someone has found my website by clicking on a search result. One of the advantages to Search Results Clicks is that it’s largely independent. What one user clicks on has minimal effect on what another will do1. That makes it easier to see trends. Referral and Social Media Traffic can spike depending on who is sharing the URL and when. I’ve found that if Weekly Search Result Clicks is on the rise, referral and social media traffic will likely follow suit, but that spikes in Social or Referral Traffic generally don’t lead to changes in Weekly Search Result Clicks.

In general I favor tracking users over revenue as revenue is highly dependent on revenue strategy. For example, in November I had twice as many mobile users as desktop users. Almost no mobile users used an ad blocker, where 20% of desktop users did. Despite that, mobile users accounted for 53% of my monthly revenue. Said another way, mobile users are generating approximately 40% less than comparable desktop users. My mobile ad strategy is not working! Changing ad networks could, in theory at least, generate vastly different amounts of revenue. No users means no revenue regardless of strategy.

The other drawback to relying on the revenue metric, especially if you rely on advertising dollars, is that revenue is likely influenced by macro factors that may not be visible to you. Advertisers tend to pay more in the the final quarter of the year then they do initially. They pay more when the economy is strong and consumer spending is high, than when the economy is weak and consumer spending is low. If you’re using an ad network, the cut and quality of the network can fluctuate. If you’re relying on revenue as an indicator of success it may be hard to see the signal in the noise.

Revenue is still an important metric, to be sure. I wish I had had more insight into how much revenue I could realistically expect to make before taking the self-employment plunge. I probably would devoted a little more of my free time, slept a little less, and neglected my household chores a little more than I already do.

Here’s hoping revenue increases before I run out of revenue. The search result click metric is strong, so hopeful a new mobile revenue model will give me a much needed revenue jolt.

1. User behavior can influence search result rankings. If more users click on your website in the search results the search engine may view their behavior that your website is a good result and may boost it’s ranking for future queries.

It’s another month and another record for me. In November I earned $90.50, which works out to be slightly more than $3.01 a day. It’s not quite the $100 I was hoping for, but still a very good month all things considered.

I knew last month’s insane user growth rate couldn’t continue indefinitely and it didn’t. My stats leveled off the first week in November, then declined the following week. I suffered about a 25% loss in clicks from organic searches in the days following the election which also corresponded to about a 25% drop in income for the entire week. (Perhaps a result of election burn out? Nearly 70% of my traffic originates from the US.) Chalk it up to one more thing I hadn’t anticipated about the election. I was nervous that the number of daily visitors would take another nose dive during the week of Thanksgiving, what with so many people spending time off line and with family. The first three weeks or so of November I was just hoping I would reach the same $70 I made last month.

To my surprise, Thanksgiving didn’t have nearly as big an impact on the number of users as I thought it would. Thanksgiving Eve I had a noticeable drop off in the number of users from 2 pm PST onward. Thanksgiving I had a noticeable drop off in users from 9am until 7pm, prime family hours. The rest of the week looked pretty much normal. In fact, after the election, my daily average users was starting slowly increase again and that trend continued through Thanksgiving. I saw a 13% increase in users starting from Black Friday onward compared to pre Thanksgiving Eve November. Revenue also increased from $2.52/day to $4.45/day which is what catapulted me to the $90/month mark.


Overall my numbers look good. The number of monthly users in November is up 23% compared to October. The daily average revenues are more uniform. This month’s best preforming revenue day is just a hair under last month’s, but this month’s low is much better than last month’s. I like stability. It makes it easier to project out, and more confident that trends will continue. There’s a part of me that’s nervous revenue will decrease after the holidays, but if I can keep the number of users up I can minimize future revenue decreases.

That app I launched last month was a Spell Checker. The dictionary I have been using for detecting rare words is great… for that purpose only. It’s not quite large enough for the task of differentiating rare words from misspellings. Too many of the predicted mispellings are false positives to make the app truely useful. I’ve been meaning to update the dictionary, but I just haven’t had time.

I did finally complete the d3 interface layer and address the last of the d3 v4 display issues, which has been on my todo list since August. It was a daunting task, but now it’s done.

The new app this month was Index / No Index. I didn’t want googlebot to index my data files, but if I blocked googlebot’s access to them, googlebot couldn’t fully render parameterized app pages that relied on those data files. It would miss content, which would affect how well those pages were indexed. I realized influencing what crawling agents do is a bit more nuanced than just writing a robots.txt file, and I needed to create a new testing environment to ensure I set up the index/follow directives correctly. My new philosophy is to create an app for anything that’s non trivial for me to do, hence Index / No Index.

So far in 2016 I’ve only written 23 new apps, a far far cry from the 100 I set out to do. If you’re considering new content and include the how to articles, then I’ve got 27 items. There’s still a month left, and I’m going to spend this month working on new content. I likely won’t reach that 100 count, but I can’t say I’m disappointed with the progress I’ve been making.

Older Posts »