About frans

Website:
frans has written 4625 articles so far, you can find them below.

12 Ways to Increase Traffic From Google Without Building Links

Posted by Cyrus-Shepard

Link building is hard, but it’s not the only way to make traffic gains in Google’s search results.

When I first started SEO, building links wasn’t my strong suit. Writing outreach emails terrified me, and I had little experience creating killer content. Instead, I focused on the easy wins.

While off-page factors like links typically weigh more heavily than on-page efforts in Google’s search results, SEOs today have a number of levers to pull in order to gain increased search traffic without ever building a link.

For experienced SEOs, many of these are established practices, but even the most optimized sites can improve in at least one or more of these areas.

1. In-depth articles

According to the MozCast Feature Graph, 6% of Google search results contain In-depth articles. While this doesn’t seem like a huge numbers, the articles that qualify can see a significant increase in traffic. Anecdotally, we’ve heard reports of traffic increasing up to 10% after inclusion.

By adding a few signals to your HTML, your high quality content could qualify to appear. The markup suggested by Google includes:

While Google seems to favor authorities news sites for In-depth Article inclusion, most sites that may qualify don’t have the proper semantic markup implemented.

2. Improving user satisfaction

Can you improve your Google rankings by improving the onsite experience of your visitors?

In many ways the answer is “yes,” and the experience of several SEOs hints that the effect may be larger than we realize.

We know that Google’s Panda algorithm punishes “low-quality” websites. We also know that Google likely measures satisfaction as users click on search results.

“… Google could see how satisfied users were. … The best sign of their happiness was the “long click” – this occurred when someone went to a search result, ideally the top one, and did not return.”

-Stephen Levy from his excellent book In the Plex

The idea is called pogosticking, or return-to-SERP, and if you can reduce it by keeping satisfied visitors on your site (or at least not returning to Google to look for the answer somewhere else) many SEOs believe Google will reward you with higher positions in search results.

Tim Grice of Branded3 reports a saying they have at their SEO agency:

“If you have enough links to be in the top 5, you have enough links to be position 1″

While we have no direct evidence of pogosticking in Google’s search results, we’ve seen enough patents, interviews and analysis to believe it’s possibly one of the most underutilized techniques in SEO today.

3. Rich snippets from structured data

Google constantly expands the types of rich snippets it shows in search results, including events, songs, videos and breadcrumbs.

The first time I heard about structured data was from a presentation by Matthew Brown at MozCon in 2011. Matthew now works at Moz, and I’m happy to glean from his expertise. His Schema 101 presentation below is well worth studying.

If you’re just getting started, check out this amazingly helpful Guide to Generating Rich Snippets from the folks at SEOgadget.

Two of our favorite types of markup for increasing clicks are videos and authorship, so we’ll discuss each below.

4. Video optimization

Pixel for pixel, video snippets capture more search real estate than any other type of rich snippet, even more than authorship photos. Studies show our eyes go straight to them.

Eye-Tracking Google SERPs – 5 Tales of Pizza

Unlike author photos, video snippets are often easier to display and don’t require connecting a Google+ account.

Video snippets generally require creating a video XML sitemap and adding schema.org video markup.

To simplify things, many third party services will take care of the technical details for you. Here at Moz we use Wistia, which creates a sitemap and adds schema.org markup automatically.

Pro tip: Both schema.org and XML sitemaps allow you to define the video thumbnail that appears in search results. As the thumbnail highly influences clicks, choose wisely.

Recommended reading: Getting Video Results in Google

5. Google authorship

Scoring the coveted author photo in Google search results doesn’t guarantee more clicks, but getting the right photo can help your click-through rate in many results.

What makes a good author photo? While there are no rules, I’ve personally tested and studied hundreds of photos and found certain factors help:

  • Use a real face, not a company logo, cartoon or icon
  • High contrast colors. Because the photo is small, you want it to stand out with good separation between the background and foreground.
  • Audience targeted. For example, young Disney fans are probably less likely to click on an old guy in a suit who looks like a financial adviser.

Google recently got more selective about the author photos it chooses to show, but if you implement authorship correctly you may find yourself in the 20% (according to MozCast) of all search results that include author photos.

6. Improving site speed

Improving site speed not only improves visitor satisfaction (see point #1) but it may also have a direct influence on your search rankings. In fact, site speed is one of the few ranking factors Google has confirmed.

One of the interesting things we learned this year, with help from the folks at Zoompf, is that actual page load speed may be far less important than Time to First Byte (TTFB). TTFB is the amount of time it takes a server to first respond to a request.

As important as page speed is for desktop search Google considers it even more important for mobile devices. Think about the last time you waited for a page to load on your cell phone with a weak signal.

“Optimizing a page’s loading time on smartphones is particularly important given the characteristics of mobile data networks smartphones are connected to.”

Google Developers

Suggested tool: PageSpeed Insights

7. Smartphone SEO

Aside from speed, if your website isn’t configured properly for smartphones, it probably results in lower Google search results for mobile queries. Google confirms that smartphone errors may result in lower mobile rankings.

What is a smartphone error? It could include:

  • Redirecting visitors to the wrong mobile URL
  • Embedding a video that doesn’t play on a particular phone (Flash video on an iPhone, for example)
  • Pop-ups that aren’t easily closed on mobile
  • Buttons or fonts that are too small on a mobile device

Google recommends making your site responsive, but many of the top brands in the world, including Apple.com, don’t have responsive sites. Regardless, a good mobile experience is imperative.

8. Expanding your international audience

Does your website have traffic potential outside your existing country and/or language?

Our international experts like Aleyda Solis know this well, but folks inside the United States have been slow to target specific languages and countries with SEO.

Oftentimes, the opportunities for appearing in international search results are greater than staying within your own borders, and the competition sometimes less. To see if it’s worth your while to make an investment, check out this International SEO Checklist by Aleyda (who is also a mobile SEO expert—it’s so unfair!)

9. Social annotations with Google+

When you share content on Facebook and Twitter, your network basically sees it only when they are looking at Facebook and Twitter.

On the other hand, when you share content on Google+, your network can see it every time they search Google.

Google’s own research shows that users fixate on social annotations, even when presented with videos and other types of rich snippets.

The easiest way to take advantage of this is to expand your Google+ network and share good content regularly and often. Rand Fishkin elegantly explains how to use Google+ to appear in the top of Google results every time.

Additionally, content shared through Google+ often ranks in regular search results, visible to everyone on the web, regardless of their social connections.

10. Snippet optimization

This goes back to basic meta tag and title tag optimization, but it’s a good practice to keep in mind.

In the past two years, Google changed the maximum length of title tags so that it’s no longer dependent on the number of characters, but on the number of pixels used, generally around 500 pixels in length. This keeps changing as Google tests new layouts.

Because 500 pixels is difficult to determine when writing most titles, best advice is still to keep your titles between 60-80 characters, or use an online snippet optimization tool to find your ideal title tag length.

Google also updated its advice on meta descriptions, further clarifying that duplicate meta descriptions are not a good idea. Matt Cutts tells us that if you can’t make your descriptions unique for each page, it’s better to have none at all.

“You can either have a unique meta tag description, or you can choose to have no meta tag description.”

Google’s Matt Cutts

Given that duplicate meta descriptions are one of the few HTML recommendations flags in Webmaster Tools, does this indicate Google treats repetitive meta descriptions as a negative ranking factor? Hmmm….

11. Updating fresh content

Websites that stop earning new links often lose ground in Google search results. At the same time, sites that never add new content or let their pages go stale can also fall out of favor.

Freshening your content doesn’t guarantee a rankings boost, but for certain types of queries it definitely helps. Google scores freshness in different ways, and may include:

  • Inception date
  • The amount (%) your content changes
  • How often you update your content
  • How many new pages you create over time
  • Changes to important content (homepage text) vs. unimportant content (footer links)

Recommended reading: 10 Illustrations on How Fresh Content Can Influence Rankings

12. Ongoing on-page SEO

The factors listed here only scratch the surface of earning more real estate in search results. Issues such as indexing, crawling, canonicalization, duplicate content, site architecture, keyword research, internal linking, image optimization and 1,000 other things can move ranking mountains.

The job of the Technical SEO becomes more complex each year, but we also have more opportunities now than ever.

It’s easy to think nothing is new in SEO, or that SEO is easy, or that Google will simply figure out our sites. Nothing is further from reality.

The truth is, we have work to do.


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don’t have time to hunt down but want to read!

Continue reading →

How to Set Up Meaningful (Non-Arbitrary) Custom Attribution in Google Analytics

Posted by Tom.Capper

Attribution modeling in Google Analytics (GA) is potentially very powerful in the results it can give us, yet few people use it, and those that do often get misleading results. The built-in models are all fairly useless, and creating your own custom model can easily dissolve into random guesswork. If you’re lucky enough to have access to GA Premium, you can use Data-Driven Attribution, and that’s great—but if you haven’t got the budget to take that route, this post should show you how to get started with the data you already have.

If you’ve read up on attribution modelling in the past, you probably already know what’s wrong with the default models. If you haven’t, I recommend you read this post by Avinash, which outlines the basics of how they all work.

In short, they’re all based on arbitrary, oversimplified assumptions about how people use the internet.

The time decay model

The time decay model is probably the most sensible out of the box, and assumes that after I visit your site, the effect of this first visit on the chance of me visiting again halves every X days. The below graph shows this relationship with the default seven-day half-life. It plots “days since visit” against “chance this visit will cause additional visit.” If it takes seven days for the repeat visit to come around, the first visit’s credit halves to 25%. If it takes 14 days for the repeat visit to come around, the first visit’s credit halves again, to 12.5%. Note that the graph is stepped—I’m assuming it uses GA’s “days since last visit” dimension, which rounds to a whole number of days. This would mean that, for example, if both visits were on the day of conversion, neither would be discounted and both would get equal credit.

There might be some site and userbase out there for which this is an accurate model, but as a starting assumption it’s incredibly bold. As an entire model, it’s incredibly simplistic—surely we don’t really believe that there are no factors relevant in assigning credit to previous visits besides how long ago they occurred? We might consider it relevant if the previous visit bounced, for example. This is why custom models are the only sensible approach to attribution modelling in Google Analytics—the simple one-size-fits-all models are never going to be appropriate for your business or client, precisely because they’re simple, one-size-fits-all models.

Note that in describing the time decay model, I’m talking about the chance of one visit generating another—an important and often overlooked aspect of attribution modelling is that it’s about probabilities. When assigning partial credit for a conversion to a previous visit, we are not saying that the conversion happened partly because of the previous visit, and partly because of the converting visit. We simply don’t know whether that was the case. It could be that after their first visit, the user decided that whatever happened they were going to come back at some point and make a purchase. If we knew this, we’d want to assign that first visit 100% credit. Or it might be that after their first visit, the user totally forgot that our website existed, and then by pure coincidence found it in their natural search results a few days later and decided to make a purchase. In this case, if we knew this, we’d want to assign the previous visit 0% credit. But actually, we don’t know what happened. So we make a claim based on probabilities. For example, if we have a conversion that takes place with one previous visit, what we’re saying if we assign 40% credit to that previous visit is that we think that there is a 40% chance that the conversion would not have happened without the first visit.

If we did think that there was a 40% chance of a conversion being caused by an initial visit, we’d want to assign 40% credit to “Position in Pathâ€� exactly matching “First interactionâ€� (meaning visits that were the user’s first visit). If you want to use “Position in Pathâ€� as your sole predictor of the chance that a visit generated the conversion, you can. Provided you don’t pull the percentages off the top of your head, it’s better than nothing. If you want to be more accurate, there’s a veritable smorgasbord of additional custom credit rules to choose from, with any default model as your starting point. All we have to do now is figure out what numbers to put in, and realistically, this is where it gets hard. At all costs, do not be tempted to guess—that renders the entire exercise pointless.

Tested assumptions

One tempting approach is simply to create a model based to a greater or lesser extent on assumptions and guesswork, then test the conclusions of that model against your existing marketing strategy and incrementally improve your strategy in this manner. This approach is probably better than nothing for improving your market strategy, and testing improvements to your strategy is always worthwhile, but as a way of creating a realistic attribution model this starting point is going to set you on a long, expensive journey.

The ideal solution is to do this process in reverse—run controlled experiments to build your model in the first place. If you can split your users into representative segments, then test, for example,

  • the effect of a previous visit on the chance of a second visit
  • the effect of a previous non-bounce visit on the chance of a second visit
  • the effect of a previous organic search visit on the chance of a second visit

and so on, you can start filling in your custom credit rules this way. If your tests are done well, you can get really excellent results. But this is expensive, difficult, and time consuming.

The next-best alternative is asking users. If users don’t remember having encountered your brand before, that previous visit they had probably didn’t contribute to their conversion. The most sensible way to do this would be an (optional but incentivised) post-conversion questionnaire, where a representative sample of users are asked questions like:

  • How did you find this site today?
  • Have you visited this site before?
    • If yes:
      • How many times?
      • How did you find it?
      • Did this previous visit impact your decision to visit today?
      • How long ago was your most recent visit?

The results from questions like these can start filling in those custom credit rules in a non-arbitrary way. But this is still somewhat expensive, difficult and time-consuming. What if you just want to get going right away?

Deconstructing the Data-Driven Attribution model

In this blog post, Google offers this explanation of the Data-Driven Attribution model in GA Premium:

“The Data-Driven Attribution model is enabled through comparing conversion path structures and the associated likelihood of conversion given a certain order of events. The difference in path structure, and the associated difference in conversion probability, are the foundation for the algorithm which computes the channel weights. The more impact the presence of a certain marketing channel has on the conversion probability, the higher the weight of this channel in the attribution model.The underlying probability model has been shown to predict conversion significantly better than a last-click methodology. Data-Driven Attribution seeks to best represent the actual behaviour of customers in the real world, but is an estimate that should be validated as much as possible using controlled experimentation.� (my emphasis)

Similarly, this paper recommends a combination of a conditional probability approach and a bagged logistic regression model. Don’t worry if this doesn’t mean much to you—I’m going to recommend here using a variant of the much simpler conditional probability method.

I’d like to look first at the kind of model that seems to be suggested by Google’s explanation above of their Data Driven Attribution feature. For example, say we wanted to look at the most basic credit rule: How much credit should be assigned to a single previous visit? The basic logic outlined in the explanation from Google above would suggest an approach something like this:

  • Find conversion rate of new visitors (let’s say this is 4%)
  • Find conversion rate of returning visitors with one previous visit (let’s say this is 7%)
  • Credit for previous visit = ((7-4)/7) = 43%

To me, this model is somewhat flawed (though I’m fairly sure that this flaw lies in my application of Google’s explanation of their Data-Driven Attribution rather than in the model itself). For example, say we had a large group of repeat visitors who were only coming to the site because of a previous visit, but that were converting poorly. We’d want to assign credit for these (few) conversions to the previous visits, but the model outlined above might assign them low or negative credit; this is because even though conversions among this group are caused by previous visits, their conversion rate is lower than that of new visitors. This is just one example of why this model can end up being misleading.

My best solution

Figuring out from our data whether a repeat visitor came because of a previous visit or independently of a previous visit is hard. I’ll be honest: I don’t know how Google does it. My best solution is an approximation, but a non-arbitrary one. The idea is using the percentage of traffic that is either branded or direct as an indicator for brand familiarity. Going back again to how much credit should be assigned to a single previous visit, my solution looks like this:

  • Calculate the percentage of your new visitor traffic is direct, branded organic or branded PPC (let’s say it’s 50%)
    • Note: Obviously most of your organic is (not provided), so I recommend multiplying your total organic traffic by the % of your known keyword traffic that is branded. As (not provided) approaches 100%, you’ll have to use PPC data to approximate your branded organic traffic levels.
  • Calculate the percentage of your 2nd-time-visitor traffic is direct, branded organic or branded PPC (let’s say it’s 55%)
  • Based on the knowledge that only 50% (in this case) of people without previous visits use branded/direct, approximate that without their first visit we’d only have seen (100%-55%)*(100/50)=90% of these 2nd time visitors.
  • Given this, 10% of visitors came because of a previous visit, so we should assign 10% credit for 2nd time visits to the first visit.

We can use similar logic applied to users with 3+ visits to calculate the credit deserved by “middle interactions�.

This method is far from perfect—that’s why I recommended two others above it. But if you want to get started with your existing data in a non-arbitrary way, I think this is a non-ridiculous way to get started. If you’ve made it this far and you have any ideas of your own, please post them in the comments below.


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don’t have time to hunt down but want to read!

Continue reading →

5 Things I Wish I Knew as an Agency Marketer – Whiteboard Friday

Posted by dohertyjf

Working as an agency marketer is tough. I did it for a bit over two years and learned a lot of lessons. Along the way and since I have reflected about what would make me more successful as an agency marketer, and now that I am in-house at HotPads.com, I’ve come up with five things I wish I had known as an agency marketer. Never fear though, as there are some tidbits in there for the in-house crew as well!

5 Things I Wish I Knew as an Agency Marketer – John Doherty – Whiteboard Friday

For reference, here’s a still of this week’s whiteboard!

Video Transcription

Howdy Moz fans. Welcome to Whiteboard Friday. My name is John Doherty. I currently lead Marketing at HotPads.com. Thank you Moz for having me back here on Whiteboard Friday. It’s been a while since I’ve been here. I’m super-excited to be back in Seattle, able to get here on the camera and talk to you guys about a few things that are near and dear to my heart.

I’ve been at HotPads for about four months now. I joined them in San Francisco a few months ago, moving out from New York City to lead Marketing for HotPads, working with some of the other rentals businesses as well under the Zillow Inc. umbrella, both on the consumer side and the business-
to-business, B2B side.

But I worked for an agency for a couple of years. I worked for Distilled, based in New York City, and obviously I worked with a lot of clients, small clients, large clients, took a lot of pride in building relationships with my clients and getting things done. Distilled is phenomenal at that, and I felt like I learned a ton. I learned a ton about clients. But over the previous couple of months, I’ve really been reflecting and trying to figure out: What is really the difference between agency and in-house marketing?

I wrote a post about it on my own personal website, JohnFDoherty.com, which I don’t write on there often enough. But I published a post on there recently about that difference. But today I want to take a little bit more focused approach to that, and I want to talk to you from the in-house perspective about five things that I wish I had known when I worked as an agency marketer working for clients.

So I have five points for you. Let’s run through them real quick. First one is your client is the industry expert. What I mean by that is your client knows their industry, their vertical better than you know their vertical. You may be able to look at it from a domain authority perspective, who’s ranking, who’s creating content, who has social media going, who has a full-
fledged marketing team built out, who’s just playing around, and who’s spamming, who’s building link networks. But you don’t know their vertical, and you don’t know their business. You don’t know their monetization model nearly as well as they do.

So while you know the tactics, and one of the great things about agencies and one of the super valuable things about agencies is that you know the tactics and you can see across verticals. You know what’s working in travel and what’s working in real estate and what’s working in video. You know what’s going on across the broader spectrum. So that’s where you can really add value to your client. You can tell them tactics, and you can tell them tactics that work across different verticals that they may not have thought about. But at the end of the day, they’re the ones that know their business, and they know their vertical, from a business perspective, better than you do.

The second one is learn the whole marketing team. This is one that I struggled with early on in my career at Distilled. I was very focused on SEO, especially technical SEO, focused on site architecture and content and things like that. So I made sure to get to know the SEO. I made sure to get to know the SEO team, who does what, what’s everyone’s skills, all of that. For a long time, though, I failed to get to know their bosses. I failed to get to know who runs the marketing team. I failed to get to know the different sides of the marketing team and who does what. For example, in a big company, the marketing team may have five people in PR and three people in SEO and two people in email.

So talking tactics, such as email marketing strategies, with the SEO team when the SEO team has no ability to change the email marketing tactics isn’t going to get you a long ways. However, this can be super valuable when you’re talking with the SEO team about how they are going to be able to get buy-in with other teams to work together collaboratively with them to get more done on the SEO side. It’s the old you scratch my back, I’m going to scratch yours sort of mentality.

The third is never forget that, as the agency, you are the outsource solution. Whether you like it or not, no matter how closely you get to your client, no matter how well you get to know them, no matter how often you go down to visit them, you are still the outsourced solution. You are not working there in-house with them all the time, part of the politics, seeing what’s going on, knowing what the roadblocks are, knowing why certain things aren’t getting done, or why certain things do get done. At the end of the day, you are still an outsourced solution that you were brought in for a reason. That’s not necessarily a negative thing. Actually, from the in-house perspective now, I don’t believe that’s a negative thing at all, because you were brought in because you’re the expert. You’re the expert in SEO or technical SEO or link building or content marketing or social media marketing. You were brought in because that is what you own, and that’s what you are known for, and so that is exactly the reason why you are there, not to be part of their marketing team.

However, what I learned in my time at Distilled is the closer you can get to the team, to the in-house team, the better you can get to know them, the more successful you are going to be.

This brings me to my fourth point. As an agency marketer, you’re actually less responsible for results than you may think that you are. What I mean by this is ultimately the in-house team is the one that is responsible for the results. Myself, at HotPads, I am responsible for driving traffic, which drives leads which drives the business. If I hire an agency, you are not going to be responsible for driving traffic. You’re going to be responsible for giving me deliverables that I can then use to go and turn into actionable things for my development team to do or for my marketing team to execute on.

To be successful as an agency marketer, what you need to do is you need to make sure that you are communicating with your client. That is the first and foremost, that you are communicating with your client, telling them when things are going to be in their inbox, what you’re going to be delivering, why you are delivering it, what you’re going to deliver next based off of the deliverable that you are currently working on, or spending a lot of time reporting. Honestly, I was really bad at this when I was at Distilled, reporting to my clients and telling them, “This is what we’ve done over the previous month, and this is what we’re going to do over the next month.”

That alone is invaluable to an in-house marketer, because then, as in-house marketer, if I’m given that from my agency that I’m working with, I can then go and set expectations with my bosses and tell them, “This is coming down from this agency. I expect it on this date. These are the things that they’ve done, and this is what we’re doing with them.”

Finally, this brings me to my fifth point, which is deadlines actually matter less than you think. Deadlines for deliverables actually matter a lot less than you might think. The reason for this is in-house marketers are very, very, very busy. Leading marketing at HotPads, I’m doing SEO. I’m helping out with the content strategy, helping my content manager with the content strategy, helping her meet the right people and get buy-in from the right people and figure out when to publish things and where do we publish things, and how do we push it on social media. I’m helping me email marketer get to know our developers and talk with people up here in our Seattle office, the email marketing team up here to find out what they’re doing. We’re strategizing about emails. I’m helping my link builder find new places to get links. We’re strategizing about link building and measuring that and measuring the ROI on that.

So I’m very, very busy. Everyone on my team is very, very busy. All in-house marketers are very, very busy. We’re all over the place. We’re touching all sorts of different parts of marketing at some point and working very, very collaboratively, and I would suggest that any very successful in-house marketing team is all working collaboratively and not siloed away from other teams.

So all of this is to say that I really don’t care about deadlines, and most in-house people aren’t really going to care about deadlines. What’s important for you as an agency marketer is going to be communicating with your client when something is going to be delivered. If you’re going to be late, communicate that with them as soon as you’re able to. If it’s going to be a week late, let them know why. Things come up. Everyone understands that things come up. Maybe another client had an emergency. Maybe there was an algorithm change that they were hurt by, that their CEO is about to fire the whole marketing team if you don’t jump in. Clients understand this. So what you need to do is you really need to communicate with them as soon as possible, as often as possible.

As an in-house marketer, speaking to the in-house guys for a second, you need to tell the agency exactly what you’re dealing with, exactly what your responsibilities are. What keeps you busy day-to-day? There’s nothing more frustrating as an agency marketer than being like, “Why can’t I get a hold of my client? I know they’re around. I know they’re in there. Aren’t they just like sitting there building links?” The answer is no. They’re not just sitting there building links. They have a lot going on. So to be successful as an agency marketer, you need to find out from your clients exactly what keeps them busy day in, day out. So then you are able to not be a pain to them, but rather to help them do their job even better.

So these are five things that I wish I knew as an agency marketer now that I am in-house. Once again, my name is John Doherty. You can find me on Twitter, DohertyJF, and I’m happy to be back here. Please leave any comments you have below in the comments section. Thanks a lot. Have a great weekend.

Video transcription by Speechpad.com


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don’t have time to hunt down but want to read!

Continue reading →

rejeki … on FB Feb 14, 2014

 Feb 14, 2014 Saat kita berbuat BAIK, memang rejeki belum datang, tapi bencana mulai pergi menjauh. Saat kita berbuat JAHAT, memang bencana belum datang, tapi rejeki sudah pergi menjauh. Semangat pagi, my friends Via Facebook for BlackBerry 10 25 likes 4 comments Permalink Continue reading →